Implements a full app lock (issue #1313) gating Aurora Store behind the
device biometric or, where unavailable, the screen-lock credential
(PIN/pattern/password) so it also works on TVs and older phones.
- AppLockManager: process-scoped, in-memory lock state so a cold start is
always locked, with a short background grace timeout to avoid
re-prompting during the install dialog or the biometric sheet itself.
- AppLockAuthenticator: BiometricPrompt wrapper using
BIOMETRIC_STRONG | DEVICE_CREDENTIAL on API 30+ and
setDeviceCredentialAllowed on older releases, plus an enrollment check.
- ComposeActivity (now a FragmentActivity) gates content via a three-state
machine (AUTHENTICATING/LOCKED/UNLOCKED); the authenticating state shows
a blank surface behind the prompt so dismissing it never flashes the
lock card. Re-locks on return past the timeout and sets FLAG_SECURE
while locked.
- Toggle lives on a dedicated Security preference screen, reached from
Settings like the other preference entries.
Drops the legacy AuroraTheme styles, custom attrs and now-unused
styles_widget/styles_text overlays. Updates the dark/light themes,
strings, arrays, dimens and colors to match what the Compose screens
consume. Adds ic_logo_alt and tweaks the launcher/logo drawables.
Trims gradle dependencies tied to the removed Fragment/Epoxy stack.
* Still needs implementation for showing microG installation screen on huawei
* No anonymous mode on huawei
* Needs handling for showing permissions screen via settings
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
Deprecate setting to hide similar and related apps as they will be always
listed in the suggestions pane on widescreen devices
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
Introduce a new activity to host composables as View system behaves
quite bad when composable are used inside it.
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
* Since 1.12.0, LinearProgressIndicator uses new M3 design that doesn't plays well with install and ratings for us
* Switch both back to old style using new Widget.Material3.LinearProgressIndicator.Legacy style
* Additionally drop trackCornerRadius and switch to custom background with clipToOutline for download as the class
now has a bug that messes with style
Keep downloads to follow new M3 design
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
Switch to LinearProgressIndicator where possible and show an indeterminate
progress bar while download progress is below 1%
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>