-
Notifications
You must be signed in to change notification settings - Fork 0
Description
Ever since its inception, the TPA system has been a scattered around bit of functionality in ArcOS. The props and supplementaries live under JsExec, the spawning lives in SpawnUserContext, etcetera. I'd like for the TPA code execution to be consolidated into its own service, the TpaService.
The TpaService should only be activated if and when TPAs are enabled (UserPreferences.security.enableThirdParty), and TPAs should not work at all if TPAs aren't enabled. If the user tries to open a TPA without TPAs being enabled, a dialog should show instructing the user to go to the settings app to enable TPAs. This dialog is already implemented elsewhere (I think SpawnUserContext). When the user enables TPAs, the service should be started. When the user disables TPAs, the service should be stopped. The state of the service should always match the enablement of TPAs.