Long clicking on settings gear in QS causes it to accelarate and spin, when released it will open and enable the tuner. On first opening there will be a warning dialog. Also add way to disable tuner from tuner screen. This way it can be removed from its former home in Developer Settings. All tuner settings are reset when disabled to match developer settings behavior. Bug: 22462605 Change-Id: Ie700a6a15e6c3caccf7cd1885da73328e6fac6ab
418 lines
20 KiB
XML
418 lines
20 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<!--
|
|
/*
|
|
* Copyright (c) 2014 Google Inc.
|
|
*
|
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
* you may not use this file except in compliance with the License.
|
|
* You may obtain a copy of the License at
|
|
*
|
|
* http://www.apache.org/licenses/LICENSE-2.0
|
|
*
|
|
* Unless required by applicable law or agreed to in writing, software
|
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
* See the License for the specific language governing permissions and
|
|
* limitations under the License.
|
|
*/
|
|
-->
|
|
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
|
xmlns:androidprv="http://schemas.android.com/apk/prv/res/android"
|
|
package="com.android.systemui"
|
|
android:sharedUserId="android.uid.systemui"
|
|
coreApp="true">
|
|
|
|
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
|
|
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
|
|
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
|
|
<!-- Used to read storage for all users -->
|
|
<uses-permission android:name="android.permission.WRITE_MEDIA_STORAGE" />
|
|
<uses-permission android:name="android.permission.WAKE_LOCK" />
|
|
|
|
<uses-permission android:name="android.permission.INJECT_EVENTS" />
|
|
<uses-permission android:name="android.permission.DUMP" />
|
|
<uses-permission android:name="android.permission.WRITE_SETTINGS" />
|
|
|
|
<uses-permission android:name="android.permission.STATUS_BAR_SERVICE" />
|
|
<uses-permission android:name="android.permission.STATUS_BAR" />
|
|
<uses-permission android:name="android.permission.EXPAND_STATUS_BAR" />
|
|
<uses-permission android:name="android.permission.REMOTE_AUDIO_PLAYBACK" />
|
|
|
|
<uses-permission android:name="android.permission.MANAGE_USERS" />
|
|
<uses-permission android:name="android.permission.READ_PROFILE" />
|
|
<uses-permission android:name="android.permission.READ_CONTACTS" />
|
|
<uses-permission android:name="android.permission.CONFIGURE_WIFI_DISPLAY" />
|
|
<uses-permission android:name="android.permission.WRITE_SECURE_SETTINGS" />
|
|
<uses-permission android:name="android.permission.GET_APP_OPS_STATS" />
|
|
|
|
<!-- Networking and telephony -->
|
|
<uses-permission android:name="android.permission.BLUETOOTH" />
|
|
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
|
|
<uses-permission android:name="android.permission.BLUETOOTH_PRIVILEGED" />
|
|
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
|
|
<uses-permission android:name="android.permission.CHANGE_NETWORK_STATE" />
|
|
<uses-permission android:name="android.permission.READ_PRIVILEGED_PHONE_STATE" />
|
|
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
|
|
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
|
|
<uses-permission android:name="android.permission.OVERRIDE_WIFI_CONFIG" />
|
|
<uses-permission android:name="android.permission.MANAGE_NETWORK_POLICY" />
|
|
<uses-permission android:name="android.permission.CONNECTIVITY_INTERNAL" />
|
|
<uses-permission android:name="android.permission.READ_NETWORK_USAGE_HISTORY" />
|
|
<uses-permission android:name="android.permission.CONTROL_VPN" />
|
|
|
|
<!-- Physical hardware -->
|
|
<uses-permission android:name="android.permission.MANAGE_USB" />
|
|
<uses-permission android:name="android.permission.DEVICE_POWER" />
|
|
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" />
|
|
<uses-permission android:name="android.permission.MASTER_CLEAR" />
|
|
<uses-permission android:name="android.permission.VIBRATE" />
|
|
|
|
<!-- ActivityManager -->
|
|
<uses-permission android:name="android.permission.REAL_GET_TASKS" />
|
|
<uses-permission android:name="android.permission.GET_DETAILED_TASKS" />
|
|
<uses-permission android:name="android.permission.REORDER_TASKS" />
|
|
<uses-permission android:name="android.permission.REMOVE_TASKS" />
|
|
<uses-permission android:name="android.permission.STOP_APP_SWITCHES" />
|
|
<uses-permission android:name="android.permission.SET_SCREEN_COMPATIBILITY" />
|
|
<uses-permission android:name="android.permission.START_ANY_ACTIVITY" />
|
|
<uses-permission android:name="android.permission.INTERACT_ACROSS_USERS" />
|
|
<uses-permission android:name="android.permission.INTERACT_ACROSS_USERS_FULL" />
|
|
<uses-permission android:name="android.permission.GET_TOP_ACTIVITY_INFO" />
|
|
<uses-permission android:name="android.permission.MANAGE_ACTIVITY_STACKS" />
|
|
<uses-permission android:name="android.permission.START_TASKS_FROM_RECENTS" />
|
|
|
|
<!-- WindowManager -->
|
|
<uses-permission android:name="android.permission.INTERNAL_SYSTEM_WINDOW" />
|
|
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />
|
|
<uses-permission android:name="android.permission.READ_FRAME_BUFFER" />
|
|
<uses-permission android:name="android.permission.MANAGE_APP_TOKENS" />
|
|
<uses-permission android:name="android.permission.SET_ORIENTATION" />
|
|
<uses-permission android:name="android.permission.DISABLE_KEYGUARD" />
|
|
|
|
<!-- DreamManager -->
|
|
<uses-permission android:name="android.permission.READ_DREAM_STATE" />
|
|
<uses-permission android:name="android.permission.WRITE_DREAM_STATE" />
|
|
|
|
<!-- Alarm clocks -->
|
|
<uses-permission android:name="com.android.alarm.permission.SET_ALARM" />
|
|
|
|
<!-- Keyguard -->
|
|
<uses-permission android:name="android.permission.CONTROL_KEYGUARD" />
|
|
<uses-permission android:name="android.permission.MODIFY_PHONE_STATE" />
|
|
<uses-permission android:name="android.permission.GET_ACCOUNTS" />
|
|
<uses-permission android:name="android.permission.MANAGE_ACCOUNTS" />
|
|
<uses-permission android:name="android.permission.BIND_DEVICE_ADMIN" />
|
|
<uses-permission android:name="android.permission.CHANGE_COMPONENT_ENABLED_STATE" />
|
|
<uses-permission android:name="android.permission.MEDIA_CONTENT_CONTROL" />
|
|
<uses-permission android:name="android.permission.ACCESS_KEYGUARD_SECURE_STORAGE" />
|
|
<uses-permission android:name="android.permission.TRUST_LISTENER" />
|
|
<uses-permission android:name="android.permission.USE_FINGERPRINT" />
|
|
|
|
<!-- Needed for WallpaperManager.clear in ImageWallpaper.updateWallpaperLocked -->
|
|
<uses-permission android:name="android.permission.SET_WALLPAPER"/>
|
|
|
|
<!-- Recents -->
|
|
<uses-permission android:name="android.permission.BIND_APPWIDGET" />
|
|
|
|
<!-- Wifi Display -->
|
|
<uses-permission android:name="android.permission.CONFIGURE_WIFI_DISPLAY" />
|
|
|
|
<uses-permission android:name="android.permission.CAMERA" />
|
|
|
|
<!-- Screen Capturing -->
|
|
<uses-permission android:name="android.permission.MANAGE_MEDIA_PROJECTION" />
|
|
|
|
<!-- Assist -->
|
|
<uses-permission android:name="android.permission.ACCESS_VOICE_INTERACTION_SERVICE" />
|
|
|
|
<application
|
|
android:name=".SystemUIApplication"
|
|
android:persistent="true"
|
|
android:allowClearUserData="false"
|
|
android:allowBackup="false"
|
|
android:hardwareAccelerated="true"
|
|
android:label="@string/app_label"
|
|
android:icon="@drawable/icon"
|
|
android:process="com.android.systemui"
|
|
android:supportsRtl="true"
|
|
android:theme="@style/systemui_theme">
|
|
<!-- Keep theme in sync with SystemUIApplication.onCreate().
|
|
Setting the theme on the application does not affect views inflated by services.
|
|
The application theme is set again from onCreate to take effect for those views. -->
|
|
|
|
<!-- Broadcast receiver that gets the broadcast at boot time and starts
|
|
up everything else.
|
|
TODO: Should have an android:permission attribute
|
|
-->
|
|
<service android:name="SystemUIService"
|
|
android:exported="true"
|
|
/>
|
|
|
|
<!-- started from PhoneWindowManager
|
|
TODO: Should have an android:permission attribute -->
|
|
<service android:name=".screenshot.TakeScreenshotService"
|
|
android:process=":screenshot"
|
|
android:exported="false" />
|
|
|
|
<service android:name=".LoadAverageService"
|
|
android:exported="true" />
|
|
|
|
<service android:name=".ImageWallpaper"
|
|
android:permission="android.permission.BIND_WALLPAPER"
|
|
android:exported="true" />
|
|
|
|
<receiver android:name=".BootReceiver" androidprv:primaryUserOnly="true">
|
|
<intent-filter android:priority="1000">
|
|
<action android:name="android.intent.action.BOOT_COMPLETED" />
|
|
</intent-filter>
|
|
</receiver>
|
|
|
|
<receiver android:name=".qs.tiles.HotspotTile$APChangedReceiver"
|
|
androidprv:primaryUserOnly="true">
|
|
<intent-filter>
|
|
<action android:name="android.net.wifi.WIFI_AP_STATE_CHANGED" />
|
|
</intent-filter>
|
|
</receiver>
|
|
|
|
<activity android:name=".usb.UsbStorageActivity"
|
|
android:label="@*android:string/usb_storage_activity_title"
|
|
android:excludeFromRecents="true">
|
|
</activity>
|
|
|
|
<activity android:name=".tuner.TunerActivity"
|
|
android:enabled="false"
|
|
android:icon="@drawable/tuner"
|
|
android:theme="@android:style/Theme.Material.Settings"
|
|
android:label="@string/system_ui_tuner"
|
|
android:process=":tuner"
|
|
android:exported="true">
|
|
<intent-filter>
|
|
<action android:name="com.android.settings.action.EXTRA_SETTINGS" />
|
|
<category android:name="android.intent.category.DEFAULT" />
|
|
</intent-filter>
|
|
<meta-data android:name="com.android.settings.category"
|
|
android:value="com.android.settings.category.system" />
|
|
</activity>
|
|
|
|
<!-- Alternate Recents -->
|
|
<activity android:name=".recents.RecentsActivity"
|
|
android:label="@string/accessibility_desc_recent_apps"
|
|
android:exported="false"
|
|
android:launchMode="singleInstance"
|
|
android:excludeFromRecents="true"
|
|
android:stateNotNeeded="true"
|
|
android:resumeWhilePausing="true"
|
|
android:screenOrientation="behind"
|
|
android:theme="@style/config_recents_activity_theme">
|
|
<intent-filter>
|
|
<action android:name="com.android.systemui.recents.TOGGLE_RECENTS" />
|
|
</intent-filter>
|
|
</activity>
|
|
|
|
<receiver android:name=".recents.RecentsUserEventProxyReceiver"
|
|
android:exported="false">
|
|
<intent-filter>
|
|
<action android:name="com.android.systemui.recents.action.SHOW_RECENTS_FOR_USER" />
|
|
<action android:name="com.android.systemui.recents.action.HIDE_RECENTS_FOR_USER" />
|
|
<action android:name="com.android.systemui.recents.action.TOGGLE_RECENTS_FOR_USER" />
|
|
<action android:name="com.android.systemui.recents.action.PRELOAD_RECENTS_FOR_USER" />
|
|
<action android:name="com.android.systemui.recents.action.CONFIG_CHANGED_FOR_USER" />
|
|
</intent-filter>
|
|
</receiver>
|
|
|
|
<!-- Callback for dismissing screenshot notification after a share target is picked -->
|
|
<receiver android:name=".screenshot.GlobalScreenshot$TargetChosenReceiver"
|
|
android:process=":screenshot"
|
|
android:exported="false" />
|
|
|
|
<!-- Callback for deleting screenshot notification -->
|
|
<receiver android:name=".screenshot.GlobalScreenshot$DeleteScreenshotReceiver"
|
|
android:process=":screenshot"
|
|
android:exported="false" />
|
|
|
|
<!-- started from UsbDeviceSettingsManager -->
|
|
<activity android:name=".usb.UsbConfirmActivity"
|
|
android:exported="true"
|
|
android:permission="android.permission.MANAGE_USB"
|
|
android:theme="@style/Theme.SystemUI.Dialog.Alert"
|
|
android:finishOnCloseSystemDialogs="true"
|
|
android:excludeFromRecents="true">
|
|
</activity>
|
|
|
|
<!-- started from UsbDeviceSettingsManager -->
|
|
<activity android:name=".usb.UsbPermissionActivity"
|
|
android:exported="true"
|
|
android:permission="android.permission.MANAGE_USB"
|
|
android:theme="@style/Theme.SystemUI.Dialog.Alert"
|
|
android:finishOnCloseSystemDialogs="true"
|
|
android:excludeFromRecents="true">
|
|
</activity>
|
|
|
|
<!-- started from UsbDeviceSettingsManager -->
|
|
<activity android:name=".usb.UsbResolverActivity"
|
|
android:exported="true"
|
|
android:permission="android.permission.MANAGE_USB"
|
|
android:theme="@style/Theme.SystemUI.Dialog.Alert"
|
|
android:finishOnCloseSystemDialogs="true"
|
|
android:excludeFromRecents="true">
|
|
</activity>
|
|
|
|
<!-- started from UsbDeviceSettingsManager -->
|
|
<activity android:name=".usb.UsbAccessoryUriActivity"
|
|
android:exported="true"
|
|
android:permission="android.permission.MANAGE_USB"
|
|
android:theme="@style/Theme.SystemUI.Dialog.Alert"
|
|
android:finishOnCloseSystemDialogs="true"
|
|
android:excludeFromRecents="true">
|
|
</activity>
|
|
|
|
<!-- started from UsbDebuggingManager -->
|
|
<activity android:name=".usb.UsbDebuggingActivity"
|
|
android:permission="android.permission.MANAGE_USB"
|
|
android:theme="@style/Theme.SystemUI.Dialog.Alert"
|
|
android:finishOnCloseSystemDialogs="true"
|
|
android:excludeFromRecents="true">
|
|
</activity>
|
|
<activity android:name=".usb.UsbDebuggingSecondaryUserActivity"
|
|
android:theme="@style/Theme.SystemUI.Dialog.Alert"
|
|
android:finishOnCloseSystemDialogs="true"
|
|
android:excludeFromRecents="true">
|
|
</activity>
|
|
|
|
<!-- started from NetworkPolicyManagerService -->
|
|
<activity
|
|
android:name=".net.NetworkOverLimitActivity"
|
|
android:exported="true"
|
|
android:permission="android.permission.MANAGE_NETWORK_POLICY"
|
|
android:theme="@android:style/Theme.DeviceDefault.Light.Panel"
|
|
android:finishOnCloseSystemDialogs="true"
|
|
android:launchMode="singleTop"
|
|
android:taskAffinity="com.android.systemui.net"
|
|
android:excludeFromRecents="true" />
|
|
|
|
<!-- started from MediaProjectionManager -->
|
|
<activity
|
|
android:name=".media.MediaProjectionPermissionActivity"
|
|
android:exported="true"
|
|
android:theme="@style/Theme.AlertDialogHost"
|
|
android:finishOnCloseSystemDialogs="true"
|
|
android:launchMode="singleTop"
|
|
android:excludeFromRecents="true" />
|
|
|
|
<!-- platform logo easter egg activity -->
|
|
<activity
|
|
android:name=".DessertCase"
|
|
android:exported="true"
|
|
android:label="@string/dessert_case"
|
|
android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen"
|
|
android:hardwareAccelerated="true"
|
|
android:launchMode="singleInstance"
|
|
android:screenOrientation="locked"
|
|
android:process=":sweetsweetdesserts"
|
|
android:excludeFromRecents="true">
|
|
<intent-filter>
|
|
<action android:name="android.intent.action.MAIN" />
|
|
<category android:name="android.intent.category.DEFAULT" />
|
|
</intent-filter>
|
|
</activity>
|
|
|
|
<activity android:name=".egg.LLandActivity"
|
|
android:theme="@android:style/Theme.Material.Light.NoActionBar"
|
|
android:exported="true"
|
|
android:label="@string/lland"
|
|
android:hardwareAccelerated="true"
|
|
android:launchMode="singleInstance"
|
|
android:screenOrientation="locked"
|
|
android:process=":sweetsweetdesserts"
|
|
android:excludeFromRecents="true">
|
|
<intent-filter>
|
|
<action android:name="android.intent.action.MAIN"/>
|
|
<category android:name="android.intent.category.DEFAULT" />
|
|
</intent-filter>
|
|
</activity>
|
|
|
|
<activity android:name=".egg.ShruggyActivity"
|
|
android:theme="@android:style/Theme.NoDisplay"
|
|
android:exported="true"
|
|
android:launchMode="singleInstance"
|
|
android:screenOrientation="locked"
|
|
android:process=":sweetsweetdesserts"
|
|
android:excludeFromRecents="true">
|
|
<intent-filter>
|
|
<action android:name="android.intent.action.MAIN"/>
|
|
<category android:name="android.intent.category.DEFAULT" />
|
|
<category android:name="com.android.internal.category.PLATLOGO" />
|
|
</intent-filter>
|
|
</activity>
|
|
|
|
<!-- a gallery of delicious treats -->
|
|
<service
|
|
android:name=".DessertCaseDream"
|
|
android:exported="true"
|
|
android:label="@string/dessert_case"
|
|
android:permission="android.permission.BIND_DREAM_SERVICE"
|
|
android:enabled="false"
|
|
android:process=":sweetsweetdesserts"
|
|
>
|
|
<intent-filter>
|
|
<action android:name="android.service.dreams.DreamService" />
|
|
<category android:name="android.intent.category.DEFAULT" />
|
|
</intent-filter>
|
|
</service>
|
|
|
|
<service
|
|
android:name=".keyguard.KeyguardService"
|
|
android:exported="true"
|
|
android:enabled="@bool/config_enableKeyguardService" />
|
|
|
|
<activity android:name=".Somnambulator"
|
|
android:label="@string/start_dreams"
|
|
android:icon="@mipmap/ic_launcher_dreams"
|
|
android:theme="@android:style/Theme.Wallpaper.NoTitleBar"
|
|
android:exported="true"
|
|
android:excludeFromRecents="true"
|
|
>
|
|
<!--
|
|
<intent-filter>
|
|
<action android:name="android.intent.action.CREATE_SHORTCUT" />
|
|
<category android:name="android.intent.category.DEFAULT" />
|
|
</intent-filter>
|
|
-->
|
|
<intent-filter>
|
|
<action android:name="android.intent.action.MAIN" />
|
|
<category android:name="android.intent.category.DEFAULT" />
|
|
<category android:name="android.intent.category.DESK_DOCK" />
|
|
</intent-filter>
|
|
</activity>
|
|
|
|
<activity
|
|
android:name=".settings.BrightnessDialog"
|
|
android:label="@string/quick_settings_brightness_dialog_title"
|
|
android:theme="@android:style/Theme.DeviceDefault.Dialog"
|
|
android:finishOnCloseSystemDialogs="true"
|
|
android:launchMode="singleInstance"
|
|
android:excludeFromRecents="true"
|
|
android:exported="true">
|
|
<intent-filter>
|
|
<action android:name="android.intent.action.SHOW_BRIGHTNESS_DIALOG" />
|
|
<category android:name="android.intent.category.DEFAULT" />
|
|
</intent-filter>
|
|
</activity>
|
|
|
|
<!-- Doze with notifications, run in main sysui process for every user -->
|
|
<service
|
|
android:name=".doze.DozeService"
|
|
android:exported="true"
|
|
android:singleUser="true"
|
|
android:permission="android.permission.BIND_DREAM_SERVICE" />
|
|
|
|
<receiver
|
|
android:name=".tuner.TunerService$ClearReceiver"
|
|
android:exported="false">
|
|
<intent-filter>
|
|
<action android:name="com.android.systemui.action.CLEAR_TUNER" />
|
|
</intent-filter>
|
|
</receiver>
|
|
</application>
|
|
</manifest>
|