Hi,
I have been developing apps scope functionality for GrapheneOS and seems to be working, I would like to push it to the project so others can benefit from it.
At the moment, the implementation impact the following files:
/system/framework/framework.jar
/system/framework/services.jar
/system_ext/priv-app/Settings/Settings.apk
/system_ext/priv-app/Launcher3QuickStep/Launcher3QuickStep.apk
It modifies 3 different repositories:
https://github.com/GrapheneOS/platform_frameworks_base
https://github.com/GrapheneOS/platform_packages_apps_Launcher3
https://github.com/GrapheneOS/platform_packages_apps_Settings
I never made any contribution to GrapheneOS, so I am not sure how should I proceed, specially because it touch 3 projects together and it needs to be in sync.
I would like to avoid having PRs running for ever if it is possible, so I am seeking for advice about how to accomplish it in advance.
Main points of what it is implemented for now:
Individual configuration to each application to enable/disable apps scopes.
A browser of all apps that the targeted app is able to see naturally, including system apps.
Any application can be hided to one particular target, using 2 methods:
*Blacklist: hide specific applications, while the default rule is not hide.
*Whitelist: hide everything unless you specifically allow an app to be seen.
The method of whitelist/blacklist can be setup individually for user apps, and system apps.
A quick option to wipe out the apps scopes configuration of the app
A quick option to restrict everything on the app.
It is integrated in the launcher so when you hold onto an app with the apps scopes enabled, you can see a shortcut to the apps scopes configuration of that app.