summaryrefslogtreecommitdiff
path: root/packages/SystemUI/src/com/android/systemui/PluginInflateContainer.java
Commit message (Collapse)AuthorAgeFilesLines
* Add Customization LibHawkwood Glazier2022-11-181-1/+1
| | | | | | Bug: 258424862 Test: Manually rebuilt everything Change-Id: If683023d2f592bb09827a50fbc79559b5b57cb3a
* Recycle obtained TypedArraysNikolas Havrikov2022-02-101-0/+1
| | | | | | Bug: 218835043 Test: make Change-Id: I0419652b1eb4aa219ea028e7659f123e747d36f3
* Revert "Revert "2/N Rename PluginInstanceManager to PluginAction..."Dave Mankoff2021-09-101-2/+2
| | | | | | | | | | | | | Revert submission 15798157-revert-15560568-b194781951-flags-8-ZUNMWRYIZP Reason for revert: Restoring with a fix. Reverted Changes: I417dd4edd:Revert "5/N Remove PluginInitializer entirely." Ia5f864646:Revert "4/N Remove #handleWtfs from PluginInitiali... I70f22b6a5:Revert "3/N Remove #getPrivilegedPlugins from Plug... I07a26c9ff:Revert "2/N Rename PluginInstanceManager to Plugin... Change-Id: I84f52b4222efc9bf406512e45a4ff523681ab77b
* Revert "2/N Rename PluginInstanceManager to PluginActionManager."Dave Mankoff2021-09-091-2/+2
| | | | | | | | | | | | | Revert submission 15560568-b194781951-flags-8 Reason for revert: Broken build. Reverted Changes: Ie522ae3cc:5/N Remove PluginInitializer entirely. Icaeaaee28:4/N Remove #handleWtfs from PluginInitializer. I1c86c246c:3/N Remove #getPrivilegedPlugins from PluginInitia... Id525f27e3:2/N Rename PluginInstanceManager to PluginActionMa... Change-Id: I07a26c9ff526d6c2af194d53282cc8133371efb1
* 2/N Rename PluginInstanceManager to PluginActionManager.Dave Mankoff2021-09-091-2/+2
| | | | | | | | | | | | | | | | | | | | Introduce PluginInstance. PluginManager is in charge of coordinating the whole plugin system. PluginActionManager is in charge of querying for the PackageManager for plugins matching a specific action. PluginActionManager creates PluginInstances for each package it finds, and the PluginInstance is in charge of loading in the actual plugin into the system. This is another step down the path of being able to manually load in plugins into the code before the PluginManager is ready. Bug: 194781951 Test: atest SystemUITests && manual Change-Id: Id525f27e362c29625168b56dc55f2899cd3f8810
* Fixes import ordering.Gus Prevas2018-11-141-1/+1
| | | | | Test: n/a Change-Id: I432e11b52deb7974e50f62076af3b7aa07e364b6
* Move plugin support to shared libTony Wickham2018-09-281-1/+1
| | | | | | | | | | | | | In addition to changing imports, this required some changes to use java 7, since that's what the shared lib needs to be for launcher. See bug for more details on this project. Test: "atest com.android.systemui.shared.plugins" build succeeds and all tests pass Bug: 115877296 Change-Id: Ib79ede0a61664df0ba1a194632a345d2229777fc
* New system for versioning sysui pluginsJason Monk2017-02-091-10/+6
| | | | | | | | | Use annotations to handle the multi-dimensionalness of interface versions, but still maintain compile time inclusion of current versions. Test: runtest systemui Change-Id: I0789a72112cf6630a6406f76020071c8a6d9e24c
* Fix leaks in sysuiJason Monk2017-02-021-2/+2
| | | | | | | | | | | Add support for testing for PluginManager and TunerService leaks and add tests for the known leaks and fix them. Also port PluginManager and TunerService to Dependency to make them easier to handle in tests. Test: runtest systemui Change-Id: I5642539ee24dd72f802905106decd0c87b41b4eb Fixes: 34846972
* SysUI fragments: Integrate new support for constructingJason Monk2017-01-231-1/+1
| | | | | | | | | | | Use a new system for constructing fragments so they can be swapped out in place maintaining state. This will allow easier integration with plugin lifecycle as parents who have child plugin fragments can depend on the class existing and won't have to listen to the lifecycle. Test: runtest systemui Change-Id: I517f4ce3d114abd49b1b5baca388d19e929b8f90
* Add PluginInflateContainerJason Monk2016-09-201-0/+111
PluginInflateContainer extends AutoReinflateContainer, except that it also uses the plugin interface to allow the view to be swapped out with something else. Define an interface or abstract class as follows that includes the version and action. public interface MyInterface { public static final String ACTION = "com.android.systemui.action.PLUGIN_MYINTERFACE"; public static final int VERSION = 1; void myImportantInterface(); } Then put in a PluginInflateContainer to use and specify the interface or class that will be implemented as viewType. The layout specified will be used by default and whenever a plugin is not present. <com.android.systemui.PluginInflateContainer android:id="@+id/some_id" android:layout_width="match_parent" android:layout_height="match_parent" android:layout="@layout/my_default_component" systemui:viewType="com.android.systemui.plugins.MyInterface" /> Test: Manual Change-Id: I2ef3fa8dbe344c4635df20056182c1c0b3846fdf