Skip to content

Expressive Launcher 2.0.8 Stable — The Grand Unification

Choose a tag to compare

@denson9874 denson9874 released this 19 Sep 14:00
87a650a

Expressive Launcher 2.0.8 Stable — The Grand Unification

Welcome to Expressive Launcher 2.0.8 Stable, our biggest milestone update yet! This release leaps from the 1.0.16 stable series into the 2.0 architecture, delivering broader device compatibility, highly requested customization features, crucial bug fixes, and rooted gesture capabilities—all verified through our rigorous automated testing and isolated Android upgrade pipeline.


🌟 What's New Since 1.0.16 Stable

📱 Broad Android 12+ Device Compatibility (Issue #15)

  • Minimum SDK Lowered to 31: Expressive Launcher is now fully compatible with devices running Android 12 through Android 17 (Baklava).
  • Full Signature Scheme Support: Restored APK Signature Schemes v1 (JAR signing) and v3 alongside v2, ensuring smooth, error-free package installation across Android 12, 13, 14, and 15 without signature verification rejections.

🎛️ Dedicated Widget Preferences & Corner Radius Control (Issue #12)

  • Custom Widget Corner Radius: Set widget corner roundness anywhere from 0 dp (crisp, sharp corners) up to 40 dp (ultra-rounded), dynamically enforced via RoundedCornerEnforcement.
  • Widget Padding Factor: Fine-tune the spacing and padding between widgets from 0% to 200%.
  • Sizing & Layout Overrides: Added dedicated toggles to force rounded corners, allow widget overlap, unlock unlimited sizing, and force-resize stubborn widgets.
  • Accessible directly under Settings > Widgets and Home Screen > Widgets.

🔍 Settings Search (Issue #13)

  • Instant Search: Find any launcher setting in seconds.
  • Smart Filtering: Real-time multi-token keyword, title, category, and summary search indexing all 12 preference sections.
  • Direct Navigation: Tap any result to jump straight into that preference screen.
  • Accessible via the new search icon in the Preferences Dashboard header bar.

⚡ Quickstep & QuickSwitch Root Support (Issue #10)

  • Seamless System Recents: Restored Quickstep components (TouchInteractionService, RecentsActivity, gesture animations, and xyz.paphonb.quickstepswitcher.* metadata up to SDK 37).
  • Root-Safe Architecture: Conditioned privileged background binding on STATUS_BAR_SERVICE permission with capped connection attempts. Unrooted devices experience zero battery drain, zero background loops, and zero crashes, while rooted users running QuickSwitch in /system/priv-app get silky-smooth system gestures and recents.

🛠️ Bug Fixes & Refinements

  • Nova Backup Persistence (Issue #14): Resolved an issue where imported Nova Launcher backups were overwritten with default Google/AOSP favorites after the first device reboot. Restored layouts now permanently persist.
  • Settings Crash Prevention (Issue #11): Fixed unhandled NullPointerException crashes on UiThreadHelper when changing icon size, grid dimensions, or display settings with widgets on the workspace.
  • Reachability & Navigation: Restored reachable Advanced settings rows in the dashboard and improved two-pane tablet responsiveness.

😄 A Little Launcher Humor

Why did the widget refuse to go to school?
Because it couldn't decide whether its corners were too sharp or too rounded!

Why do launchers love Android 12?
Because turning 31 (API levels) never looked so youthful.


🧩 Release Riddle

Can you solve this edition's riddle?

I can be round or sharp as a pin,
I hold your weather, your notes, or your clock within.
Now with a slider you set my shape just right,
And if you search in settings, I am always in sight.
What am I?

Click to reveal the answer
Answer: A Home Screen Widget!

🔬 Validation & Verification

  • Automated Tests: Complete Gradle unit test suite passed.
  • Continuous Integration: All 266 CI contract and pipeline tests passed.
  • Isolated Android Upgrade QA: Pinned Android 17 emulator verified authentic upgrade from stable baseline 1.0.16 (code 17) to 2.0.8 (code 26), confirming preference retention, cold/warm start latency, home transitions, drawer swipes, local search, date handoff, and zero crash/ANR log events.
  • Continuous Delivery: Signed with durable release certificate c14160306d5c059b3d119f15fb74e08c57cc272316e80b36e192c71dc9e4d0d2 and published to the stable branch and stable update feed.

📦 Technical Release Details

  • Package: dev.launcher.expressive.l3
  • Version: 2.0.8 (Version Code: 26)
  • Source Revision: b56bd0e3c9b53a323f7daa489b2d71c812b34807
  • APK SHA-256: f0368d2af067fd64eec9e688b813999d80e17d6e2ed16979d444671b56bff703
  • APK Size: 23,943,857 bytes
  • Stable Branch Commit: 32809812a0d7110fbd697a89f93806dc83b79e6c

Derived from Lawnchair and AOSP Launcher3; see the repository's license and upstream notices.