SystemUI: Add Compass tile

@neobuddy89:
* Set default state to inactive
* Remove slashed icon
* Add check if device supports compass
* Disable long click for Compass tile
* Code clean up and adapt to Android 13, 14
* Combine compass check in tile itself

Squashed:

    From: timjosten <timjosten@gmail.com>
    Date: Thu, 18 Aug 2022 18:10:47 +0000
    Subject: SystemUI: Fix QS compass tile spam & instability

    E ViewRootImpl: Accessibility content change on non-UI thread. Future Android versions will throw an exception.
    E ViewRootImpl: android.view.ViewRootImpl$CalledFromWrongThreadException: Only the original thread that created a view hierarchy can touch its views.
    E ViewRootImpl:  at android.view.ViewRootImpl$SendWindowContentChangedAccessibilityEvent.runOrPost(ViewRootImpl.java:10375)
    E ViewRootImpl:  at android.view.ViewRootImpl.postSendWindowContentChangedCallback(ViewRootImpl.java:9203)
    E ViewRootImpl:  at android.view.ViewRootImpl.notifySubtreeAccessibilityStateChanged(ViewRootImpl.java:9383)
    E ViewRootImpl:  at android.view.ViewGroup.notifySubtreeAccessibilityStateChanged(ViewGroup.java:3847)
    E ViewRootImpl:  at android.view.ViewGroup.notifySubtreeAccessibilityStateChanged(ViewGroup.java:3847)
    E ViewRootImpl:  at android.view.ViewGroup.notifySubtreeAccessibilityStateChanged(ViewGroup.java:3847)
    E ViewRootImpl:  at android.view.ViewGroup.notifySubtreeAccessibilityStateChanged(ViewGroup.java:3847)
    E ViewRootImpl:  at android.view.ViewGroup.notifySubtreeAccessibilityStateChanged(ViewGroup.java:3847)
    E ViewRootImpl:  at android.view.ViewGroup.notifySubtreeAccessibilityStateChanged(ViewGroup.java:3847)
    E ViewRootImpl:  at android.view.ViewGroup.notifySubtreeAccessibilityStateChanged(ViewGroup.java:3847)
    E ViewRootImpl:  at android.view.ViewGroup.notifySubtreeAccessibilityStateChanged(ViewGroup.java:3847)
    E ViewRootImpl:  at android.view.ViewGroup.notifySubtreeAccessibilityStateChanged(ViewGroup.java:3847)
    E ViewRootImpl:  at android.view.ViewGroup.notifySubtreeAccessibilityStateChanged(ViewGroup.java:3847)
    E ViewRootImpl:  at android.view.ViewGroup.notifySubtreeAccessibilityStateChanged(ViewGroup.java:3847)
    E ViewRootImpl:  at android.view.View.notifySubtreeAccessibilityStateChangedIfNeeded(View.java:14002)
    E ViewRootImpl:  at android.view.View.setRotation(View.java:17015)

Change-Id: Ief188d7c4c00f8539ee9f9c7945ae1e3d3209d5a
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
6 files changed