LSPosed module that keeps third-party Quick Settings tiles responsive on Android 13+.
Since Nougat (2016) Android has limited third party Quick Settings to 3 active tiles. SystemUI manages tile bindings via a visibility-based priority queue, evicting services for non-visible tiles once the cap is reached. The Android 13 optimizer then freezes these evicted services which causes a ~3-5 second delay when they are eventually tapped.
This module uses the modern Xposed API to hook into SystemUI and raise the binding cap, allowing all your tiles to stay warm and responsive without the lag russian roulette.
com.android.systemuiTested on Pixel and LineageOS (Android 16). OEM ROMs (Samsung, Xiaomi, etc.) untested. Root required on Android 14+ for tile scanning and SystemUI restart.
Memory Footprint: Each tile uses ~10-30 MB. Even with 20+ tiles active, the total RAM usage is virtually imperceptible on any 6GB+ device.
Battery & Wakeclocks: No idle drain or unnecessary wakeups. Power consumption depends entirely on what your active tiles do.
Stability: Higher binding limits increase active connections in SystemUI. Poorly coded tiles may cause issues on budget devices at extremely high limits.
If you encounter issues, please file an issue on GitHub.
Install JDK 21, Android SDK
Configure SDK path in local.properties
sdk.dir=/path/to/android/sdk
Build APK
./gradlew assembleRelease
(Optional) Sign release builds via signing.properties or environment variables
keystore.path=/path/to/your/keystore.jks
keystore.password=<keystore password>
key.alias=<key alias>
key.password=<key password>
Unsigned builds remain reproducible.
This project is licensed under the GNU General Public License v3.0 – see the LICENSE file for details.
eu.hxreborn.qsboundlesstiles
Release Type: Stable
12/24/2025, 7:36:50 AM
bd7eecb - root: unify process execution with Result API (commit by @hxreborn)e2b0c8b - ui: extract applyMaxBound() to consolidate UI updates (commit by @hxreborn)b488b1d - remove dead code (commit by @hxreborn)1d095db - prefs: extract KEY_MAX_BOUND constant (commit by @hxreborn)