Framework: allow ResolverActivity to be specialized from other package
PackageManager already has hooks to allow the Disambiguation Dialog aka ResolverActivity to be substituted at runtime by a custom activity named via system property. Since the internal ResolverActivity already has good extension points (for use by ChooserActivity), it is useful to allow a customized ResolverActivity, provided in a separate package to be able to extend the internal activity, thus preserving core behavior as much as possible, and making forward porting easier. This patch attempts to make as few changes to the core ResolverActivity as possible to make up stream patching easy, and isolates most of the needed code into a shim (ResolverProxy) which is mostly concerned with changing the access modifier of key methods from package-private to protected. This is necessary to allow overriding of those methods from a subclass originating from a different class loader. Change-Id: I17070964fca73f0d11b4fe8d809b2a775ba9e7e6
Loading