• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Plugin hooks
2### Action: com.android.systemui.action.PLUGIN_OVERLAY
3Expected interface: [OverlayPlugin](/frameworks/base/packages/SystemUI/plugin/src/com/android
4/systemui/plugins/OverlayPlugin.java)
5
6Use: Allows plugin access to the status bar and nav bar window for whatever nefarious purposes you can imagine.
7
8### Action: com.android.systemui.action.PLUGIN_QS
9Expected interface: [QS](/frameworks/base/packages/SystemUI/plugin/src/com/android/systemui/plugins/qs/QS.java)
10
11Use: Allows the entire QS panel to be replaced with something else that is optionally expandable.
12
13Notes: To not mess up the notification panel interaction, much of the QSContainer interface needs to actually be implemented.
14
15### Action: com.android.systemui.action.PLUGIN_QS_FACTORY
16Expected interface: [QSFactory](/frameworks/base/packages/SystemUI/plugin/src/com/android/systemui/plugins/qs/QSFactory.java)
17
18Use: Controls the creation of QS Tiles and their views, can used to add or change system QS tiles, can also be used to change the layout/interaction of the tile views.
19
20### Action: com.android.systemui.action.PLUGIN_NAV_BUTTON
21Expected interface: [NavBarButtonProvider](/frameworks/base/packages/SystemUI/plugin/src/com/android/systemui/plugins/statusbar/phone/NavBarButtonProvider.java)
22
23Use: Allows a plugin to create a new nav bar button, or override an existing one with a view of its own.
24
25### Action: com.android.systemui.action.PLUGIN_NAV_GESTURE
26Expected interface: [NavGesture](/frameworks/base/packages/SystemUI/plugin/src/com/android/systemui/plugins/statusbar/phone/NavGesture.java)
27
28Use: Allows touch events from the nav bar to be intercepted and used for other gestures.
29
30### Action: com.android.systemui.action.PLUGIN_LOCKSCREEN_RIGHT_BUTTON
31Expected interface: [IntentButtonProvider](/frameworks/base/packages/SystemUI/plugin/src/com/android/systemui/plugins/IntentButtonProvider.java)
32
33Use: Allows a plugin to specify the icon for the bottom right lock screen button, and the intent that gets launched when it is activated.
34
35### Action: com.android.systemui.action.PLUGIN_LOCKSCREEN_LEFT_BUTTON
36Expected interface: [IntentButtonProvider](/packages/SystemUI/plugin/src/com/android/systemui/plugins/IntentButtonProvider.java)
37
38Use: Allows a plugin to specify the icon for the bottom left lock screen button, and the intent that gets launched when it is activated.
39
40### Action: com.android.systemui.action.PLUGIN_GLOBAL_ACTIONS
41Expected interface: [GlobalActions](/frameworks/base/packages/SystemUI/plugin/src/com/android/systemui/plugins/GlobalActions.java)
42
43Use: Allows the long-press power menu to be completely replaced.
44
45### Action: com.android.systemui.action.PLUGIN_VOLUME
46Expected interface: [VolumeDialog](/frameworks/base/packages/SystemUI/plugin/src/com/android/systemui/plugins/VolumeDialog.java)
47
48Use: Allows replacement of the volume dialog.
49
50### Action: com.android.systemui.action.PLUGIN_NOTIFICATION_SWIPE_ACTION
51Expected interface: [NotificationSwipeActionHelper](/frameworks/base/packages/SystemUI/plugin/src/com/android/systemui/plugins/statusbar/NotificationSwipeActionHelper.java)
52
53Use: Control over swipes/input for notification views, can be used to control what happens when you swipe/long-press
54
55### Action: com.android.systemui.action.PLUGIN_CLOCK
56Expected interface: [ClockPlugin](/frameworks/base/packages/SystemUI/plugin/src/com/android/systemui/plugins/ClockPlugin.java)
57
58Use: Allows replacement of the keyguard main clock.
59
60### Action: com.android.systemui.action.PLUGIN_TOAST
61Expected interface: [ToastPlugin](/frameworks/base/packages/SystemUI/plugin/src/com/android/systemui/plugins/ToastPlugin.java)
62
63Use: Allows replacement of uncustomized toasts created via Toast.makeText().
64
65# Global plugin dependencies
66These classes can be accessed by any plugin using PluginDependency as long as they @Requires them.
67
68[VolumeDialogController](/frameworks/base/packages/SystemUI/plugin/src/com/android/systemui/plugins/VolumeDialogController.java) - Mostly just API for the volume plugin
69
70[ActivityStarter](/frameworks/base/packages/SystemUI/plugin/src/com/android/systemui/plugins/ActivityStarter.java) - Allows starting of intents while co-operating with keyguard unlocks.
71