feat: Sony/Xperia device compatibility#899
Closed
Hayao0819 wants to merge 1 commit intoMahmud0808:stablefrom
Closed
feat: Sony/Xperia device compatibility#899Hayao0819 wants to merge 1 commit intoMahmud0808:stablefrom
Hayao0819 wants to merge 1 commit intoMahmud0808:stablefrom
Conversation
Introduce OemUtils for OEM detection. Fix Sony-specific issues: - Disambiguate duplicate keyguard_root_view on Sony devices using clipChildren attribute (6 lockscreen modules) - Skip QSLT/QSDT overlay operations on Sony where framework overlay manager cannot locate these overlays - Add defensive try-catch to all overlay enable/disable operations
Owner
|
Hi, appreciate the contribution! A15 support is EOL and the stable branch is no longer accepting changes. Please retarget this PR to the beta branch (A16+) if you’d like to continue. Thanks! |
Contributor
Author
|
Closing as Android 15 is EOL. I'll maintain these changes in my own fork. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Tested on Xperia 5 V (XQ-DE44, Android 15). Xperia's SystemUI is close to AOSP so most hooks work out of the box, but a few things needed fixing.
Sony's super_notification_shade.xml has two KeyguardRootView with the same id (keyguard_root_view). The one we want has clipChildren="false", the other doesn't. All lockscreen modules (clock, widgets, weather, depth wallpaper, lock icon) now check for this on Sony and skip the wrong one. The listener stays attached so the correct view still gets picked up.
QSLT/QSDT overlays fail on Sony because their framework doesn't have the same QS resource structure as AOSP. Since calculateColors() already handles the theming through Xposed hooks, the overlay enable/disable calls are just skipped on Sony.
Also wrapped all overlay operations in Utils.kt with try-catch — not Sony-specific, just good practice since these were silently failing before.
Everything is behind OemUtils.isSony (Build.MANUFACTURER == "Sony"), no effect on other devices.