Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
1316 commits
Select commit Hold shift + click to select a range
146d2fa
fixup! SystemUI: Improve connectivity and WiFi/Data tiles
rmp22 Apr 2, 2026
778278b
base: quickswitch: limit default launcher config to Launcher3
Mrick343 Apr 28, 2026
f548b6d
[SQUASH] Introduce PixelPropsUtils
jhenrique09 Nov 19, 2020
62b6cda
PixelPropsUtils: Skip play Integrity props in isolated processes
markakash Sep 8, 2025
26f7f11
PixelPropUtils: Implement json-based game spoofing [1/2]
minaripenguin Dec 17, 2025
01e356f
PixelPropsUtils: Update fingerprints to February 2026 release
joeyhuab Jan 13, 2026
6565dc3
PixelPropsUtils: Implement Play Store spoof (spoofBuildVending()) [1/2]
joshuah345 Jan 19, 2026
8d87c23
base: Auto set vbmeta digest and other props [1/2]
neobuddy89 Oct 27, 2025
d3f6967
Attestation: Update logging for keymint 4.0
neobuddy89 Oct 31, 2025
7a22ba3
core: Introduce per-apps spoofing [1/2]
kenway214 Mar 12, 2026
0f6a26e
base: Adding apps filter hooks
rmp22 Mar 16, 2026
35c41f9
ApplicationPackageManager: Drop tensor spoof prop
joeyhuab Jan 19, 2026
dcd4ede
System: Switch Tensor feature handling to user-controlled override
joeyhuab Apr 2, 2026
da5fa6b
core: Dynamically inject Tensor features for Play Store compatibility
joeyhuab Apr 2, 2026
79aee7c
fixup! PixelPropsUtils: Skip play Integrity props in isolated processes
markakash Sep 8, 2025
aaf8426
PixelPropsUtils: Move from props to Settings switch
neobuddy89 Oct 21, 2025
07621f0
PixelPropsUtils: Refactor spoofing flow, unify logic, and add per-app…
joeyhuab Apr 8, 2026
5236b6c
core: Add tricky store port integration
rmp22 Dec 24, 2025
7a139dc
core: Fix vbmeta digest abnormal state
rmp22 Dec 27, 2025
971fa50
core: Fix broken tee cert generation
rmp22 Dec 30, 2025
d169bd3
core: Add game spoofing
rmp22 Dec 25, 2025
caf0d1d
core: Add play integrity spoofing
rmp22 Dec 25, 2025
bf66dbc
core: Fix stackoverflow in trickystore port
rmp22 Apr 3, 2026
e1959d7
core: Improve spoofs entry point
rmp22 Mar 27, 2026
8c3add1
core: Drop redundant Photos spoof
joeyhuab Apr 13, 2026
244e3be
core: Move trickystore, pif and game props spoof
neobuddy89 Apr 14, 2026
bd5cb19
core: Fix json parsing non-string values in PIF
neobuddy89 Apr 14, 2026
e8259cf
core: pif: skip SDK_INT spoofing for vending process
joeyhuab Apr 15, 2026
58270a7
services: Adding support for service injector
rmp22 Nov 25, 2025
7d33b5f
core: Fix spoofing structure
rmp22 Apr 18, 2026
14b7b76
core: Improve parsing keybox xml with StringBuilder
neobuddy89 Apr 19, 2026
1681472
core: Fix and remove deprecated api in certificate generator
neobuddy89 Apr 19, 2026
40085e1
core: Sanitize keybox xml before loading
neobuddy89 Apr 19, 2026
2909a73
core: PIF: align spoofing behavior with upstream PlayIntegrityFix
joeyhuab Apr 23, 2026
9dba9b9
GamePropsSpoofService: absorb PerAppsPropsUtils
joeyhuab Apr 25, 2026
ec835f9
core: cache spoof settings via ContentObserver, avoid hot-path IPC reads
joeyhuab Apr 29, 2026
67b09d8
backport fix for stuck IME input from May 2026 Pixel update
muhomorr May 5, 2026
1db9ca4
PixelPropsUtils: Update fingerprints to May 2026 release
joeyhuab May 6, 2026
1ee478e
SystemUI: Adding platform hooks
rmp22 Feb 16, 2026
f4e8c76
SystemUI: Adding statusbar dynamic bar
rmp22 Feb 24, 2026
d66b1a0
SystemUI: Suppress Dynamic Bar notifications when Danmaku is active
Saikrishna1504 Mar 31, 2026
8330379
SystemUI: DynamicBar: Align lockscreen chip with keyguard indication …
bijoyv9 Mar 29, 2026
0000692
SystemUI: DynamicBar: Fixing issues | enhance
rmp22 Mar 30, 2026
a1b7010
SystemUI: DynamicBar: Fixing expanded content top padding
rmp22 Apr 13, 2026
7a3c116
SystemUI: DynamicBar: Fixing recorder | notification issues
rmp22 Apr 11, 2026
9f3098c
SystemUI: DynamicBar: Auto-focus reply field when clicking reply button
Saikrishna1504 Apr 11, 2026
b060ede
SystemUI: DynamicBar: Allow opening app when reply field is focused
Saikrishna1504 Apr 11, 2026
fddd557
SystemUI: DynamicBar: Limiting status bar chip width
rmp22 Apr 11, 2026
26af53b
SystemUI: DynamicBar: Fix our torch impl
neobuddy89 Mar 31, 2026
4c0b74e
SystemUI: DynamicBar: Add smooth squiggly progress for media content
neobuddy89 Apr 1, 2026
10fe73d
SystemUI: DynamicBar: Fix seekbar scrubbing UX for media content
neobuddy89 Apr 1, 2026
c9394af
SystemUI: DynamicBar: Use actual charging info on lock screen
neobuddy89 Apr 4, 2026
5c4aae1
SystemUI: DynamicBar: Fix crash while streaming media
neobuddy89 Apr 11, 2026
73d30f5
SystemUI: DynamicBar: Align expanded cards to top center
neobuddy89 Apr 2, 2026
784e1e7
SystemUI: Add quicklook client
rmp22 Feb 16, 2026
c4a9b60
SystemUI: Adapt platform hooks for dynamic bar usage only
neobuddy89 Apr 14, 2026
0e6c7f4
SystemUI: DynamicBar: Redesign media pill style
Ghosuto Apr 2, 2026
38c6747
SystemUI: DynamicBar: Follow qs media seekbar style
Ghosuto Apr 2, 2026
fa28ea3
SystemUI: DynamicBar: Improve chip padding and size
Ghosuto Apr 2, 2026
4b71470
SystemUI: DynamicBar: Improve battery icon with rounded corners and p…
Ghosuto Apr 4, 2026
7a84080
SystemUI: Fixing jank by media player layer type
rmp22 Apr 1, 2026
ac5afc7
SystemUI: DynamicBar: Make keyguard music pill optional [1/2]
Ghosuto Apr 12, 2026
a7594ce
SystemUI: DynamicBar: Improve expand media ui
Ghosuto Apr 16, 2026
ba38524
SystemUI: DynamicBar: Make music chip bg more vibrant
Ghosuto Apr 17, 2026
237de79
SystemUI: DynamicBar: Cleaning up ux & animations enhance
rmp22 Apr 19, 2026
f6d9cdc
SystemUI: DynamicBar: Redesign lockscreen media panel
Ghosuto Apr 26, 2026
00edb3c
SystemUI: DynamicBar: Hide custom clock for expanded panel
Ghosuto Apr 26, 2026
7a16e71
SystemUI: DynamicBar: Fixing sb expanded content issue
rmp22 Apr 27, 2026
84d0005
SystemUI: DynamicBar: Stabilize and clean up charging info formatting
bijoyv9 Apr 26, 2026
9aa179c
SystemUI: DynamicBar: Refine charging chip layout and parsing logic
bijoyv9 Apr 26, 2026
985696e
SystemUI: Fix charging info toggle behavior and unify settings namespace
bijoyv9 Apr 26, 2026
b15c91f
SystemUI: DynamicBar: Align media seekbar timestamps inline with prog…
Ghosuto Apr 29, 2026
496cda8
SystemUI: DynamicBar: Increase extended media blur value
Ghosuto Apr 29, 2026
73b7296
SystemUI: Introduce Depth Wallpaper feature [1/2]
minaripenguin Mar 10, 2026
3e7804c
SystemUI: Fixup Notification overlap on Depth Wallpaper
yusufnoor786 Mar 13, 2026
e7c2f60
SystemUI: Fixup QS Expandable overlap on Depth Wallpaper
yusufnoor786 Mar 21, 2026
5d66d93
SystemUI: DynamicBar: Hide depth wallpaper when keyguard panel visible
Ghosuto Apr 30, 2026
15964f7
SystemUI: DynamicBar: Hide weather and smartspace on expand
neobuddy89 Apr 28, 2026
fc63e6c
SystemUI: Implement RefreshRateManager [1/2]
cjh1249131356 Jan 6, 2024
3290e91
Revert "base: Allow disabling refresh rate lowering in battery saver"
Mrick343 May 9, 2026
034d6cb
base: Add custom refresh rate controller support
cjh1249131356 Sep 8, 2024
68d18c8
SystemUI: Adapt refresh rate tile for new A16 QS
shutter-cat Jun 22, 2025
509c49b
core: Adding sandbox support
rmp22 Mar 21, 2026
cff062b
sandbox: Adding secure file vault support
Saikrishna1504 May 2, 2026
650ddff
services: optimizing sandbox call sites
rmp22 Apr 30, 2026
8cf3103
SystemUI: fix platform hooks regressions
rmp22 May 6, 2026
2dc2c05
services: Allow early null AxSandbox manager lookups
QuinceROMs Apr 30, 2026
5a5c338
SettingsLib: Make expressive text title normal
Mrick343 May 12, 2026
1e43652
SystemUI: Redesigned qs tile style [1/2]
Ghosuto Feb 13, 2026
e6104d6
SystemUI: Redesigned brightness slider style [1/2]
rmp22 Feb 13, 2026
d94d7da
fixup! SystemUI: Add QS tile layout settings [1/2]
neobuddy89 Mar 25, 2026
3055f08
SystemUI: Add QS tile gradient customization
neobuddy89 Feb 25, 2026
9cb80eb
SystemUI: Add QS brightness slider gradient customization
neobuddy89 Feb 25, 2026
008453b
SystemUI: Add volume slider gradient customization
neobuddy89 Feb 26, 2026
4fb5293
SystemUI: Add custom gradient start/end color support
neobuddy89 Feb 26, 2026
f9f28ca
SystemUI: Add classic QS panel style for tiles
neobuddy89 Mar 26, 2026
c451757
SystemUI: Add gradient in ringer tile
Ghosuto Mar 26, 2026
75a6669
SystemUI: Fix classic tile specs in some instances
neobuddy89 Mar 28, 2026
9fad384
SystemUI: Improve dual tone qs fallback color
Ghosuto Mar 31, 2026
99728c4
SystemUI: Fix QS classic tile style jitter during panel expansion
Ghosuto Apr 3, 2026
5823fbf
SystemUI: Add more classic icon shapes
neobuddy89 Apr 5, 2026
1b20b58
SystemUI: Tune new biometric dialog UI
adithya2306 Apr 12, 2026
2bfba61
Allow sending vendor- or device-specific commands to the camera HAL.
maniac103 Mar 3, 2015
bc090e8
SystemUI: Tune some clock layout
Ghosuto Apr 28, 2026
4b5548e
services: fixing bt device enabling mouse input issue
rmp22 Apr 26, 2026
d39a861
SystemUI: Fix pulse rendering behind UDFPS and lockscreen affordances
Ghosuto Apr 30, 2026
859cb29
SystemUI: DynamicBar: Fix notification event not dismissable
neobuddy89 May 1, 2026
704e3cb
SystemUI: DynamicBar: Reducing cpu usage
rmp22 May 2, 2026
0fa3602
core: Adding aod screen off animation
rmp22 May 2, 2026
29fe0fc
SystemUI: Use accent ripple for lockscreen widget click action
Ghosuto Dec 6, 2024
971776f
SystemUI: Reverse MediaTek udfps dimlayer changes
Mashopy Jan 3, 2026
b080d1a
Revert "SystemUI: Smart Pixels [1/2]"
Mrick343 May 12, 2026
06500fa
SystemUI: Add smart pixels support
rmp22 Mar 9, 2026
97829da
SystemUI: Send load-up hint on finger down
minaripenguin Oct 29, 2024
3b9d69b
UdfpsController: add LAUNCH boost
RealJohnGalt Dec 11, 2024
aba8cd3
SystemUI: Allow devices to disable Smart Pixels on UDFPS
ShevT Dec 15, 2022
fa71e3c
services: Optimizing wallpaper controller traversals
rmp22 Apr 23, 2026
e4f4a59
services: Optimizing wallpaper zoom
rmp22 Apr 30, 2026
f0d53bb
services: Optimizing wms prop | settings reads
rmp22 Apr 30, 2026
5bca78c
services: Optimizing letterbox updates
rmp22 Apr 30, 2026
ac193fa
services: Optimizing window rounded corners updates
rmp22 Apr 30, 2026
d1dd919
services: Disabling dma buff stats pull
rmp22 Apr 30, 2026
130723e
services: Optimizing redundant status bar top hide checks
rmp22 Apr 30, 2026
c056f01
SystemUI: Prevent UDFPS screen flash during sleep transition
bijoyv9 Apr 25, 2026
9d32f67
fixup! SystemUI: Prevent UDFPS screen flash during sleep transition
rmp22 May 1, 2026
8c646c6
services: Fixing wallpaper token leak
rmp22 May 1, 2026
4e0def0
core: Fixing zygote socket session leak
rmp22 May 2, 2026
23364e6
core: Caching views to optimize performance
rmp22 May 2, 2026
a362ab9
services: Skipping atom stats pulling on none eng builds
rmp22 May 6, 2026
e5e0022
SystemUI: Fixing connectivity callbackhandler regressions
rmp22 May 6, 2026
f01e80e
services: Fixing high-res wallpaper performance issue
rmp22 May 6, 2026
db37cd8
SystemUI: Fade out depth wallpaper fade out smoothly
Ghosuto May 7, 2026
9d2fc2d
services: Add immersive lock gesture
rmp22 Apr 3, 2026
065dede
services: Caching isOverlappingWithNavBar to avoid redundant rectangl…
rmp22 Apr 23, 2026
2e15602
services: Optimizing navigation bar draws
rmp22 Apr 30, 2026
6822c8c
services: Background apps compression
rmp22 Feb 14, 2026
f6f9a3c
services: Reducing app freezer thrashing
rmp22 Apr 14, 2026
62b51cf
services: Deferring zram compaction during app launch
rmp22 Apr 10, 2026
7d15fef
services: Skipping unnecessary full compaction when awake
rmp22 May 6, 2026
f4ce2de
core: Upgrading to m3e animation specs
rmp22 Apr 18, 2026
615439c
core: Optimizing animations performance
rmp22 Apr 23, 2026
6cea609
core: removing animation regressions
rmp22 May 6, 2026
3ab9510
Add support for game space
rmp22 Mar 21, 2026
516716f
services: Add toggle for gamespace auto detect apps
neobuddy89 Apr 30, 2026
c886eb5
services: Make game added toast translatable
neobuddy89 Apr 30, 2026
2c06719
SystemUI: Implement keyguard user switcher [1/2]
minaripenguin May 20, 2024
f3ec8aa
SystemUI: Cache immutable sysprop and optimize resolver lookup
Ghosuto May 2, 2026
db6c105
libs: Gating hwui per-frame traces for userdebug builds
rmp22 Apr 10, 2026
ca39268
libs: Add INTERACTION boost for default transition animations
Ghosuto Apr 20, 2026
55f8c41
libs: Bumping hwui shader cache for fewer fling stalls
rmp22 Apr 14, 2026
0fca29d
core: Swallowing scheduler exceptions
rmp22 Mar 30, 2026
8d8da73
Revert "Adding dynamic font feature"
Mrick343 May 13, 2026
ab5f8e6
core: Adding dynamic font feature
rmp22 Oct 3, 2025
be29f29
core: Fix MD3 variable font weight mapping
Ghosuto Apr 21, 2026
f7ca512
graphics: Introduce selectable emoji customization
TwistedVision518 Apr 17, 2026
fbc802d
graphics: Add swiftui and facebook emoji
Ghosuto May 1, 2026
b9f25db
core: Adding omnijaws front end hooks
rmp22 Mar 17, 2026
9dfbf89
services: Add system server hooks
rmp22 Nov 25, 2025
91261c2
SystemUI: Introduce new oem like clock styles
Ghosuto May 3, 2026
6596b61
Introduce per app GPU screen composition setting [1/2]
userariii May 2, 2026
6f482cc
SystemUI: Add custom color, height control, and ambient mode support …
Ghosuto Feb 6, 2026
b83813a
SystemUI: Add subtle haptics on bass spikes in pulse
neobuddy89 May 3, 2026
b7810cd
SystemUI: Allow configure bass haptics playback in pulse
neobuddy89 May 3, 2026
f0a20c4
SystemUI: Fix pulse and media art overlap
Ghosuto May 8, 2026
c829c3b
SystemUI: Add 2 colon clocks
Ghosuto May 8, 2026
197919a
SystemUI: Simplify wallpaper loading by removing dimming overlay
Ghosuto May 9, 2026
42972fa
core: update modes icon
Mrick343 May 14, 2026
7dc6a14
feat: sleep mode deep sleep toggle
shutter-cat Apr 25, 2026
cb4c44f
feat: peek aod [1/2]
shutter-cat Apr 25, 2026
e1cad71
fixup! SystemUI: Add ScrimUtils helper [SQUASHED]
rmp22 May 18, 2026
5081c00
Update Crowdin configuration file
Mrick343 May 19, 2026
f9e8d7f
New Crowdin updates (#1)
Mrick343 May 19, 2026
f2141c8
New Crowdin updates (#2)
Mrick343 May 20, 2026
768d940
New Crowdin updates (#3)
Mrick343 May 20, 2026
e53c253
QuickSwitch: sync wallpaper overlay with default launcher
Mrick343 May 20, 2026
a85897b
New Crowdin updates (#4)
Mrick343 May 21, 2026
5d3af09
New Crowdin updates (#5)
Mrick343 May 24, 2026
9982468
New Crowdin updates (#6)
Mrick343 May 26, 2026
cc8a354
New Crowdin updates (#7)
Mrick343 Jun 5, 2026
bf1824e
New translations matrixx_strings.xml (French)
Mrick343 Jun 9, 2026
73d0d06
New translations matrixx_strings.xml (Spanish)
Mrick343 Jun 9, 2026
98436f6
New translations matrixx_strings.xml (Russian)
Mrick343 Jun 9, 2026
5138706
New translations matrixx_strings.xml (Ukrainian)
Mrick343 Jun 9, 2026
b2ff5a3
New translations matrixx_strings.xml (Romanian)
Mrick343 Jun 9, 2026
90cef6f
New translations matrixx_strings.xml (Afrikaans)
Mrick343 Jun 9, 2026
6793cee
New translations matrixx_strings.xml (Arabic)
Mrick343 Jun 9, 2026
6c698c2
New translations matrixx_strings.xml (Catalan)
Mrick343 Jun 9, 2026
e48a809
New translations matrixx_strings.xml (Czech)
Mrick343 Jun 9, 2026
e639d74
New translations matrixx_strings.xml (Danish)
Mrick343 Jun 9, 2026
69d2ff7
New translations matrixx_strings.xml (German)
Mrick343 Jun 9, 2026
da205e0
New translations matrixx_strings.xml (Greek)
Mrick343 Jun 9, 2026
e1bfdb1
New translations matrixx_strings.xml (Finnish)
Mrick343 Jun 9, 2026
0758ac3
New translations matrixx_strings.xml (Hebrew)
Mrick343 Jun 9, 2026
c0c7087
New translations matrixx_strings.xml (Hungarian)
Mrick343 Jun 9, 2026
cd99d20
New translations matrixx_strings.xml (Italian)
Mrick343 Jun 9, 2026
dac71ae
New translations matrixx_strings.xml (Japanese)
Mrick343 Jun 9, 2026
1bf6cd2
New translations matrixx_strings.xml (Korean)
Mrick343 Jun 9, 2026
decc7b8
New translations matrixx_strings.xml (Dutch)
Mrick343 Jun 9, 2026
66b3ebb
New translations matrixx_strings.xml (Norwegian)
Mrick343 Jun 9, 2026
f00c6de
New translations matrixx_strings.xml (Polish)
Mrick343 Jun 9, 2026
0620149
New translations matrixx_strings.xml (Portuguese)
Mrick343 Jun 9, 2026
71b675d
New translations matrixx_strings.xml (Serbian (Cyrillic))
Mrick343 Jun 9, 2026
d3e1c72
New translations matrixx_strings.xml (Swedish)
Mrick343 Jun 9, 2026
93977a1
New translations matrixx_strings.xml (Turkish)
Mrick343 Jun 9, 2026
abd7d8c
New translations matrixx_strings.xml (Chinese Simplified)
Mrick343 Jun 9, 2026
cb38454
New translations matrixx_strings.xml (Chinese Traditional)
Mrick343 Jun 9, 2026
a124cb5
New translations matrixx_strings.xml (English)
Mrick343 Jun 9, 2026
7005b06
New translations matrixx_strings.xml (Vietnamese)
Mrick343 Jun 9, 2026
e6b4b91
New translations matrixx_strings.xml (Portuguese, Brazilian)
Mrick343 Jun 9, 2026
8218c89
New translations matrixx_strings.xml (Malay)
Mrick343 Jun 9, 2026
cf60380
Update source file matrixx_strings.xml
Mrick343 Jun 10, 2026
69ffa55
New translations matrixx_strings.xml (French)
Mrick343 Jun 10, 2026
b669f7e
New translations matrixx_strings.xml (Spanish)
Mrick343 Jun 10, 2026
9777830
New translations matrixx_strings.xml (Russian)
Mrick343 Jun 10, 2026
dcbee3a
New translations matrixx_strings.xml (Ukrainian)
Mrick343 Jun 10, 2026
6fded0c
New translations matrixx_strings.xml (Romanian)
Mrick343 Jun 10, 2026
9c60764
New translations matrixx_strings.xml (Afrikaans)
Mrick343 Jun 10, 2026
12ac64c
New translations matrixx_strings.xml (Arabic)
Mrick343 Jun 10, 2026
c21bf37
New translations matrixx_strings.xml (Catalan)
Mrick343 Jun 10, 2026
264b562
New translations matrixx_strings.xml (Czech)
Mrick343 Jun 10, 2026
ef999d6
New translations matrixx_strings.xml (Danish)
Mrick343 Jun 10, 2026
aaf3905
New translations matrixx_strings.xml (German)
Mrick343 Jun 10, 2026
7a77773
New translations matrixx_strings.xml (Greek)
Mrick343 Jun 10, 2026
addb1a6
New translations matrixx_strings.xml (Finnish)
Mrick343 Jun 10, 2026
4f8c65d
New translations matrixx_strings.xml (Hebrew)
Mrick343 Jun 10, 2026
75f1747
New translations matrixx_strings.xml (Hungarian)
Mrick343 Jun 10, 2026
70db658
New translations matrixx_strings.xml (Italian)
Mrick343 Jun 10, 2026
810418a
New translations matrixx_strings.xml (Japanese)
Mrick343 Jun 10, 2026
5c7781e
New translations matrixx_strings.xml (Korean)
Mrick343 Jun 10, 2026
9ef5f98
New translations matrixx_strings.xml (Dutch)
Mrick343 Jun 10, 2026
2406332
New translations matrixx_strings.xml (Norwegian)
Mrick343 Jun 10, 2026
6343ea5
New translations matrixx_strings.xml (Polish)
Mrick343 Jun 10, 2026
b5eed81
New translations matrixx_strings.xml (Portuguese)
Mrick343 Jun 10, 2026
5adf77f
New translations matrixx_strings.xml (Serbian (Cyrillic))
Mrick343 Jun 10, 2026
db36878
New translations matrixx_strings.xml (Swedish)
Mrick343 Jun 10, 2026
353097c
New translations matrixx_strings.xml (Turkish)
Mrick343 Jun 10, 2026
6e9532f
New translations matrixx_strings.xml (Chinese Simplified)
Mrick343 Jun 10, 2026
4cbfd0e
New translations matrixx_strings.xml (Chinese Traditional)
Mrick343 Jun 10, 2026
b8fc2e0
New translations matrixx_strings.xml (English)
Mrick343 Jun 10, 2026
9f29e5e
New translations matrixx_strings.xml (Vietnamese)
Mrick343 Jun 10, 2026
432924f
New translations matrixx_strings.xml (Portuguese, Brazilian)
Mrick343 Jun 10, 2026
7de1c39
New translations matrixx_strings.xml (Malay)
Mrick343 Jun 10, 2026
f968807
New translations matrixx_strings.xml (Russian)
Mrick343 Jun 10, 2026
0d0028c
New translations matrixx_strings.xml (French)
Mrick343 Jun 21, 2026
da848d1
New translations matrixx_strings.xml (Turkish)
Mrick343 Jun 23, 2026
5812f96
New translations matrixx_strings.xml (Turkish)
Mrick343 Jun 23, 2026
7a5756b
New translations matrixx_strings.xml (Turkish)
Mrick343 Jun 23, 2026
2463b8c
New translations matrixx_strings.xml (Chinese Simplified)
Mrick343 Jun 27, 2026
1793657
New translations matrixx_strings.xml (Chinese Simplified)
Mrick343 Jun 27, 2026
b285c8b
New translations matrixx_strings.xml (Chinese Simplified)
Mrick343 Jun 27, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
1 change: 1 addition & 0 deletions Android.bp
Original file line number Diff line number Diff line change
Expand Up @@ -142,6 +142,7 @@ filegroup {
":deviceproductinfoconstants_aidl",

":adbrootservice_aidl",
":lmofreeform_aidl",

// For the generated R.java and Manifest.java
":framework-res{.aapt.srcjar}",
Expand Down
1 change: 1 addition & 0 deletions CleanSpec.mk
Original file line number Diff line number Diff line change
Expand Up @@ -78,6 +78,7 @@ $(call add-clean-step, rm -rf $(PRODUCT_OUT)/symbols/system/lib/libhwui.so)
$(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/lib/libhwui.so)
$(call add-clean-step, rm -rf $(OUT_DIR)/target/common/obj/JAVA_LIBRARIES/framework_intermediates/src/core/java/android/os/storage/*)
$(call add-clean-step, rm -rf $(OUT_DIR)/target/common/obj/JAVA_LIBRARIES/framework_intermediates/src/core/java/android/content/IClipboard.P)
$(call add-clean-step, rm -rf $(OUT_DIR)/target/common/obj/JAVA_LIBRARIES/framework_intermediates/src/core/java/android/pocket/*)
$(call add-clean-step, rm -rf $(OUT_DIR)/target/common/obj/JAVA_LIBRARIES/framework_intermediates/src/telephony/java/com/android/internal/telephony/ITelephonyRegistry.P)
$(call add-clean-step, rm -rf $(OUT_DIR)/target/common/obj/JAVA_LIBRARIES/android_stubs_current_intermediates)
$(call add-clean-step, rm -rf $(OUT_DIR)/target/common/docs/api-stubs*)
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,84 @@
/*
* Copyright (C) 2024 The Nameless-AOSP Project
* SPDX-License-Identifier: Apache-2.0
*/

package com.android.systemui.shared.system

import android.app.ActivityTaskManager
import android.app.ActivityTaskManager.INVALID_TASK_ID
import android.app.IActivityTaskManager
import android.app.WindowConfiguration.WINDOWING_MODE_FREEFORM
import android.content.Context
import android.os.RemoteException
import android.util.Log

/**
* TaskStackChangeListener that ignores freeform / mini-window focuses change
*/
open class FullscreenTaskStackChangeListener(
private val context: Context,
private val observeActivityChange: Boolean = false
) : TaskStackChangeListener {

var debug = false
var debugTag = DEFAULT_TAG

private val iActivityTaskManager by lazy { ActivityTaskManager.getService() }

var topPackageName = String()
private set
var topActivityName = String()
private set
var topTaskId = INVALID_TASK_ID
private set

private fun handleChange(newPackageName: String, newActivityName: String, newTaskId: Int) {
if (topPackageName == newPackageName && topActivityName == newActivityName) {
return
}
topActivityName = newActivityName
if (!observeActivityChange && topPackageName == newPackageName) {
return
}
topPackageName = newPackageName
topTaskId = newTaskId
if (debug) {
Log.d(debugTag, "Change: mTopPackage=$topPackageName"
+ ", mTopActivity=$topActivityName"
+ ", mTopTaskId=$topTaskId")
}
onFullscreenTaskChanged(topPackageName, topActivityName, topTaskId)
}

override fun onTaskStackChanged() {
forceCheck()
}

override fun onTaskFocusChanged(taskId: Int, focused: Boolean) {
if (focused) {
forceCheck()
}
}

fun forceCheck() {
try {
iActivityTaskManager.focusedRootTaskInfo?.let { info ->
info.windowingMode.let {
if (it == WINDOWING_MODE_FREEFORM) {
return
}
}
info.topActivity?.let {
handleChange(it.packageName, it.className, info.taskId)
}
}
} catch (e: RemoteException) {}
}

open fun onFullscreenTaskChanged(packageName: String, activityName: String, taskId: Int) {}

companion object {
private const val DEFAULT_TAG = "FullscreenTaskStackChangeListener"
}
}
10 changes: 10 additions & 0 deletions apex/jobscheduler/framework/java/android/app/AlarmManager.java
Original file line number Diff line number Diff line change
Expand Up @@ -1049,6 +1049,16 @@ private void setImpl(@AlarmType int type, long triggerAtMillis, long windowMilli
long intervalMillis, int flags, PendingIntent operation, final OnAlarmListener listener,
String listenerTag, Executor targetExecutor, WorkSource workSource,
AlarmClockInfo alarmClock) {

if (mPackageName.equals("com.google.android.gms")
|| mPackageName.equals("com.google.android.keep")
|| mPackageName.equals("com.google.android.deskclock")
|| mPackageName.equals("com.android.deskclock")) {
if (windowMillis == WINDOW_EXACT && !canScheduleExactAlarms()) {
windowMillis = WINDOW_HEURISTIC;
}
}

if (triggerAtMillis < 0) {
/* NOTYET
if (mAlwaysExact) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3241,9 +3241,11 @@ public int[] getAppIdTempWhitelistInternal() {
void addPowerSaveTempAllowlistAppChecked(String packageName, long duration,
int userId, @ReasonCode int reasonCode, @Nullable String reason)
throws RemoteException {
getContext().enforceCallingOrSelfPermission(
Manifest.permission.CHANGE_DEVICE_IDLE_TEMP_WHITELIST,
"No permission to change device idle whitelist");
if (!packageName.equals("com.google.android.gms")) {
getContext().enforceCallingOrSelfPermission(
Manifest.permission.CHANGE_DEVICE_IDLE_TEMP_WHITELIST,
"No permission to change device idle whitelist");
}
final int callingUid = Binder.getCallingUid();
userId = ActivityManager.getService().handleIncomingUser(
Binder.getCallingPid(),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -96,24 +96,7 @@ class JobConcurrencyManager {

static final String CONFIG_KEY_PREFIX_CONCURRENCY = "concurrency_";
private static final String KEY_CONCURRENCY_LIMIT = CONFIG_KEY_PREFIX_CONCURRENCY + "limit";
static final int DEFAULT_CONCURRENCY_LIMIT;

static {
if (ActivityManager.isLowRamDeviceStatic()) {
DEFAULT_CONCURRENCY_LIMIT = 8;
} else {
final long ramBytes = new MemInfoReader().getTotalSize();
if (ramBytes <= GIGABYTES.toBytes(6)) {
DEFAULT_CONCURRENCY_LIMIT = 16;
} else if (ramBytes <= GIGABYTES.toBytes(8)) {
DEFAULT_CONCURRENCY_LIMIT = 20;
} else if (ramBytes <= GIGABYTES.toBytes(12)) {
DEFAULT_CONCURRENCY_LIMIT = 32;
} else {
DEFAULT_CONCURRENCY_LIMIT = 40;
}
}
}
static final int DEFAULT_CONCURRENCY_LIMIT = 8;

private static final String KEY_SCREEN_OFF_ADJUSTMENT_DELAY_MS =
CONFIG_KEY_PREFIX_CONCURRENCY + "screen_off_adjustment_delay_ms";
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -157,6 +157,7 @@ private String getServiceProcessLocked(JobStatus jobStatus) {
}

ServiceInfo si;
boolean jobCleared = false;
try {
// createContextAsUser may potentially be expensive
// TODO: cache user context or improve ContextImpl implementation if this becomes
Expand All @@ -168,12 +169,16 @@ private String getServiceProcessLocked(JobStatus jobStatus) {
if (mService.areUsersStartedLocked(jobStatus)) {
// User is fully unlocked but PM still says the package doesn't exist.
Slog.e(TAG, "Job exists for non-existent package: " + service.getPackageName());
mService.getJobStore().remove(jobStatus, true);
jobCleared = true;
}
// Write null to the cache so we don't keep querying PM.
si = null;
}
final String processName = si == null ? null : si.processName;
mServiceProcessCache.add(userId, service, processName);
if (!jobCleared) {
mServiceProcessCache.add(userId, service, processName);
}

return processName;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2691,9 +2691,7 @@ void onBootPhase(int phase) {

final ActivityManager activityManager =
(ActivityManager) mContext.getSystemService(Context.ACTIVITY_SERVICE);
if (activityManager.isLowRamDevice() || ActivityManager.isSmallBatteryDevice()) {
mAutoRestrictedBucketDelayMs = 12 * ONE_HOUR;
}
mAutoRestrictedBucketDelayMs = 12 * ONE_HOUR;
} else if (phase == PHASE_BOOT_COMPLETED) {
// mWellbeingApp needs to be initialized lazily after boot to allow for roles to be
// parsed and the wellbeing role-holder to be assigned
Expand Down
2 changes: 1 addition & 1 deletion cmds/bootanimation/BootAnimation.h
Original file line number Diff line number Diff line change
Expand Up @@ -239,7 +239,7 @@ class BootAnimation : public Thread, public IBinder::DeathRecipient
int mTargetInset;
bool mUseNpotTextures = false;
EGLDisplay mEgl;
EGLDisplay mEglContext;
EGLContext mEglContext;
// Per-Display Attributes (to support multi-display)
std::vector<Display> mDisplays;
bool mClockEnabled;
Expand Down
2 changes: 1 addition & 1 deletion core/java/android/animation/Animator.java
Original file line number Diff line number Diff line change
Expand Up @@ -739,7 +739,7 @@ <T, A> void callOnList(
for (int i = 0; i < size; i++) {
//noinspection unchecked
T item = (T) array[i];
call.call(item, animator, isReverse);
if (item != null) call.call(item, animator, isReverse);
array[i] = null;
}
// Store it for the next call so we can reuse this array, if needed.
Expand Down
43 changes: 37 additions & 6 deletions core/java/android/app/ActivityThread.java
Original file line number Diff line number Diff line change
Expand Up @@ -191,6 +191,8 @@
import android.se.omapi.SeServiceManager;
import android.security.NetworkSecurityPolicy;
import android.security.net.config.NetworkSecurityConfigProvider;
import android.security.gameprops.GamePropsSpoofService;
import android.security.pif.PlayIntegritySpoofService;
import android.system.ErrnoException;
import android.telephony.TelephonyFrameworkInitializer;
import android.util.AndroidRuntimeException;
Expand All @@ -209,6 +211,7 @@
import android.util.UtilConfig;
import android.util.proto.ProtoOutputStream;
import android.view.Choreographer;
import android.view.animation.AnimationUtils;
import android.view.Display;
import android.view.SurfaceControl;
import android.view.ThreadedRenderer;
Expand Down Expand Up @@ -4724,7 +4727,7 @@ private void reportSizeConfigurations(ActivityClientRecord r) {
return;
}
Configuration[] configurations = r.activity.getResources().getSizeConfigurations();
if (configurations == null) {
if (configurations == null || r.activity.mFinished) {
return;
}
r.mSizeConfigurations = new SizeConfigurationBuckets(configurations);
Expand Down Expand Up @@ -5571,7 +5574,7 @@ private void handleBindService(BindServiceData data) {
Service s = mServices.get(data.token);
if (DEBUG_SERVICE)
Slog.v(TAG, "handleBindService s=" + s + " rebind=" + data.rebind);
if (s != null) {
if (s != null && createData != null) {
try {
data.intent.setExtrasClassLoader(s.getClassLoader());
data.intent.prepareToEnterProcess(isProtectedComponent(createData.info),
Expand Down Expand Up @@ -5602,7 +5605,7 @@ private void handleBindService(BindServiceData data) {
private void handleUnbindService(BindServiceData data) {
CreateServiceData createData = mServicesData.get(data.token);
Service s = mServices.get(data.token);
if (s != null) {
if (s != null && createData != null) {
try {
data.intent.setExtrasClassLoader(s.getClassLoader());
data.intent.prepareToEnterProcess(isProtectedComponent(createData.info),
Expand Down Expand Up @@ -5710,7 +5713,7 @@ private void handleDumpProvider(DumpComponentInfo info) {
private void handleServiceArgs(ServiceArgsData data) {
CreateServiceData createData = mServicesData.get(data.token);
Service s = mServices.get(data.token);
if (s != null) {
if (s != null && createData != null) {
try {
if (data.args != null) {
data.args.setExtrasClassLoader(s.getClassLoader());
Expand Down Expand Up @@ -7935,6 +7938,9 @@ private void handleBindApplication(AppBindData data) {
data.info = getPackageInfo(data.appInfo, mCompatibilityInfo, null /* baseLoader */,
false /* securityViolation */, true /* includeCode */,
false /* registerPackage */, isSdkSandbox);

Typeface.changeFont();

if (isSdkSandbox) {
data.info.setSdkSandboxStorage(data.sdkSandboxClientAppVolumeUuid,
data.sdkSandboxClientAppPackage);
Expand Down Expand Up @@ -8008,6 +8014,16 @@ private void handleBindApplication(AppBindData data) {
final ContextImpl appContext = ContextImpl.createAppContext(this, data.info);
mConfigurationController.updateLocaleListFromAppContext(appContext);

GamePropsSpoofService.getInstance().spoofForPackage(data.appInfo.packageName, appContext);

PlayIntegritySpoofService pifService = PlayIntegritySpoofService.getInstance();
if (pifService.shouldSpoof(data.processName)) {
pifService.spoofBuildFields(data.processName);
if (pifService.isSpoofSignatureEnabled()) {
pifService.spoofSignature();
}
}

// Initialize the default http proxy in this process.
Trace.traceBegin(Trace.TRACE_TAG_ACTIVITY_MANAGER, "Setup proxies");
try {
Expand Down Expand Up @@ -8174,6 +8190,16 @@ private void handleBindApplication(AppBindData data) {
}
}

if (!Process.isIsolated()) {
try {
if (AnimationUtils.sPerfAnimEnabled) {
AnimationUtils.ActivityAnimations.preload();
}
} catch (Exception e) {
Slog.e(TAG, "Failed to preload animations", e);
}
}

try {
mgr.finishAttachApplication(mStartSeq, timestampApplicationOnCreateNs);
} catch (RemoteException ex) {
Expand Down Expand Up @@ -9067,7 +9093,9 @@ private void attach(boolean system, long startSeq) {
RuntimeInit.setApplicationObject(mAppThread.asBinder());
final IActivityManager mgr = ActivityManager.getService();
try {
mgr.attachApplication(mAppThread, startSeq);
if (mgr != null) {
mgr.attachApplication(mAppThread, startSeq);
}
} catch (RemoteException ex) {
throw ex.rethrowFromSystemServer();
}
Expand All @@ -9085,8 +9113,11 @@ private void attach(boolean system, long startSeq) {
+ " total=" + (runtime.totalMemory()/1024)
+ " used=" + (dalvikUsed/1024));
mSomeActivitiesChanged = false;
final IActivityTaskManager atmgr = ActivityTaskManager.getService();
try {
ActivityTaskManager.getService().releaseSomeActivities(mAppThread);
if (atmgr != null) {
atmgr.releaseSomeActivities(mAppThread);
}
} catch (RemoteException e) {
throw e.rethrowFromSystemServer();
}
Expand Down
Loading