Skip to content

Expressive Launcher 5.0.0 — Butter, Brains, and Edge Beats

Latest

Choose a tag to compare

@denson9874 denson9874 released this 20 Oct 12:07

Welcome to Expressive Launcher 5.0.0 (Build 62)! Our biggest release yet: Cover folders, Smart category tabs, a sturdier At a Glance, snappier settings, and Pro licenses that survive resets.


✨ What's New & Improved

1. 🧈 Butter-Smooth 120Hz Settings & Instant Toggles

  • Zero-Disk-I/O Architecture: Settings scrolling and switches are now completely decoupled from disk bottlenecks. We eliminated synchronous DataStore disk reads (firstBlocking()) and Room SQLite stalls on the Android UI looper, routing lookups through an instantaneous $O(1)$ in-memory cache.
  • Instant Switch Feedback: Toggle switches now use optimistic UI dispatch—flipping instantaneously on touch with zero jank, while background disk persistence commits quietly on an asynchronous coroutine.
  • Suspended Background Recreation: Toggling settings options no longer forces the background Home workspace to rebuild itself while you're still in the preferences menu.

2. 📁 Cover Folders & Folder Widget Polish

  • App-Dominant Cover Mode: Turn any folder into an undercover app. A Cover folder displays the full-size icon of its primary app with an elegant bottom-right badge.
    • Single tap: Launches the primary app instantly.
    • Swipe up: Triggers a tactile haptic tick (GESTURE_START) and smoothly expands the folder grid.
  • Dynamic Auto-Promotion: Drag an app out or uninstall it? Position 0 dynamically promotes the next app in line to become the cover star without manual reconfiguration.
  • Widget Conversion Guard: Converting a Cover folder to a Folder widget safely detaches cover flags, and the deliberate ⋮ menu ensures conversions always require a conscious second tap.

3. 🧠 Smart Drawer Auto-Categorization

  • Effortless App Organization: Say goodbye to manual filing. Your app drawer can now automatically organize installed apps into categorized tabs (Social, Media, Games, Work & Productivity, Utilities) driven by Android's native ApplicationInfo.category metadata.
  • Asynchronous Category Indexing: Category resolution runs entirely on the background MODEL_EXECUTOR. Opening and flinging through the drawer remains silky smooth at a locked 120Hz.
  • Profile Parity: Fully supports both Personal and Work profile tabs in your app drawer. Toggle it anytime via Settings → App drawer → Smart categories.

4. 🌤️ Smartspace 2.0 & At a Glance Resilience

  • Zero-Blank Warm Start: Smartspace no longer greets you with an awkward empty void while external IPC services boot up. Local date, time, and weather cards render immediately on attach, gracefully transitioning when Smartspacer targets arrive.
  • Flow Crash Isolation: Every external data feed (Bluetooth telemetry, Battery, Torch, Media) is individually isolated with defensive exception barriers. If an accessory provider hiccups, your weather and calendar remain rock solid.
  • Connected Bluetooth Battery Telemetry: Live battery percentage indicators for connected Bluetooth headsets and audio devices, automatically surfacing battery alerts when power dips below 20%.
  • Active Card Retention: Navigating multi-card glanceables now binds dynamically to unique target IDs rather than volatile numeric indices, preventing cards from jumping unexpectedly during background refreshes.

5. 🔑 Pro Licenses That Survive Resets

  • Moves after a reset: A device-bound Pro key used to stop working after a factory reset, reinstall or cleared data. Now the launcher asks the activation service to move it to your device automatically (up to 3 new devices every 30 days).
  • Restore by receipt: Lost your key? Enter the Transaction ID from your PayPal receipt and the license is re-issued for this device.
  • Stable Device ID: Reinstalling or clearing app data keeps the same Device ID, so your key just keeps working.
  • Still offline-first: Keys are checked on your device. You only need a connection when a license moves to a new device.

😄 Launcher Humor

⚡ Our settings switches no longer stop to think things over. Tap, flip, done.

📁 Cover Folders: Because sometimes you want your folder to dress up as Spotify in front of its friends, until you swipe it up and reveal the secret folder society inside.

🌐 Our new Cloudflare worker lives on the edge, runs in milliseconds, and never sleeps. Just remember to give it a little Wi-Fi handshake during activation—it's serverless, not psychic!


💬 Community Notes

  • After a factory reset: Paste your Pro key (or your PayPal Transaction ID) while online, and the license moves to your reset device.
  • Bluetooth Permissions: Showing accessory battery levels on Android 12+ requires standard Nearby Devices permission (BLUETOOTH_CONNECT). Expressive Launcher never collects or transmits telemetry off your device.
  • Feedback & Bug Triage: Thank you to everyone in @ExpressiveLauncherFeedback for reporting switch delays and Smartspace blanking during beta testing!

🧩 Release Riddle

I look like a single app on your screen, but a gentle flick upward reveals an entire team. Tap me once and my leader charges ahead; swipe me up and my hidden squad spreads instead. What am I?

Tap to reveal answer

A Cover Folder! Tap launches app #1, swipe-up reveals the whole folder crew. 🎩📱


🛡️ Verification & Technical Details

  • Version: 5.0.0 (Build 62), Stable channel · Package dev.launcher.expressive.l3
  • Validated by Jenkins: 550 Android unit tests, 339 CI contract tests and 33 activation-worker tests passed; an isolated Android 17 QPR2 emulator (API 37.2) installed 4.1.2, upgraded in place to this exact APK with settings retained, and passed launch, drawer, search, At a Glance and clean-log checks. Emulator only, not a physical device.
  • Source revision: 999c803100db313d93de35c6b7e839b894fd9346
  • APK SHA-256: 639acdde5fea558d47790f01380f207caa9ec0809d557dd0392845eb5f27df49
  • Release certificate SHA-256: C1:41:60:30:6D:5C:05:9B:3D:11:9F:15:FB:74:E0:8C:57:CC:27:23:16:E8:0B:36:E1:92:C7:1D:C9:E4:D0:D2
  • Derived from Lawnchair and AOSP Launcher3; see the repository's license and upstream notices.

🔗 Links & Downloads: