Skip to content

release: v5.1.0 — Inline Reply, Timers, History, OEM Rules & Copilot Review Engine - #36

Merged
agupta07505 merged 11 commits into
mainfrom
dev
Aug 22, 2026
Merged

release: v5.1.0 — Inline Reply, Timers, History, OEM Rules & Copilot Review Engine#36
agupta07505 merged 11 commits into
mainfrom
dev

Conversation

@agupta07505

Copy link
Copy Markdown
Owner

Description

This PR rolls out the v5.1.0 minor release to main, introducing:

  1. Inline-Reply Input & Soft-Keyboard Focus: Dynamic WindowManager focus switching (FLAG_NOT_FOCUSABLE $\leftrightarrow$ FLAG_ALT_FOCUSABLE_IM), auto-collapse suppression while typing (isInputActive), and RemoteInput pending intent execution.
  2. Timer & Stopwatch Dynamic Island Modes: Multi-OEM clock notification parsing (Google Clock, Samsung Clock, Xiaomi/HyperOS, ColorOS, Huawei) with collapsed countdown/elapsed badges, circular/linear progress bars, millisecond tickers, and pause/resume/lap/reset controls.
  3. Persistent SQLite Notification History Hub: On-device SQLite database storing past alerts with real-time search, app filtering chips, category filters, notification details sheet, and swipe-to-delete.
  4. OEM Device Rules Engine: Vendor-specific autostart and background protection rules (Xiaomi/HyperOS, Samsung OneUI, OnePlus/Oppo/Realme, Huawei/Honor, Vivo/iQOO, Asus).
  5. In-App GitHub Release Checker & Network Privacy Guard: In-app version update checks with explicit user toggle (allowNetworkChecks) and strict offline mode fallback.
  6. Copilot Code Review Engine & Automated Workflows: Comprehensive instructions in .github/copilot-code-review-instructions.md, modular instructions under .github/instructions/, and automated PR/Issue review action .github/workflows/auto-review.yml.
  7. Expanded Unit Test Suite: 52+ new unit tests across parsers, repositories, and ViewModels with 100% clean test passes.

Related Issue

Closes #30

Type Of Change

  • Bug fix
  • New feature
  • Breaking change
  • Documentation update
  • UI/UX improvement
  • Refactor
  • Test addition or update
  • Build/release change

App Area

  • Floating overlay island
  • Notification listener
  • Incoming calls
  • Media playback
  • Island settings/customization
  • Permissions/onboarding
  • Privacy/security
  • CI/CD or Gradle
  • Documentation

Screenshots Or Recordings

Before After

Testing

  • ./gradlew assembleDebug
  • ./gradlew lintDebug testDebugUnitTest assembleDebug (All 62 Gradle verification tasks executed with 0 errors)
  • Overlay permission flow tested
  • Notification listener flow tested
  • Incoming call or media notification flow tested
  • Manual device/emulator testing

Checklist

  • My code follows the existing project style.
  • I kept the change focused.
  • I added or updated tests where useful.
  • I updated docs/templates when behavior changed.
  • I did not commit secrets, keystores, generated APKs, _base64.txt files, or local paths.
  • Screenshots and logs do not contain private notification content.

Introduce Timer and Stopwatch island modes with parsers, UI (collapsed glyphs, countdown/elapsed timers, expanded Timer/Stopwatch screens), and settings (colors, deviceType). Add TimerStopwatchParser, OemDeviceRules (OEM-specific screen-recording/hotspot/call rules), HotspotUtil improvements, and stronger suppression retry handling in the notification listener. Add GitHubApiService and About-section update for in-app release/insights (requires INTERNET). Wire settings repository keys and UI flows, plus many unit tests for new behavior and parsing logic.
Introduce a new allowNetworkChecks boolean setting (default true) to SmartIslandSettings and persist it via DataStore (allow_network_checks key). SmartIslandSettingsRepository maps the preference, exposes setAllowNetworkChecks, and includes it in the settings Flow. The AboutSection now respects offline mode: when network checks are disabled it shows an OfflineMode state with an enable button that calls the repository; launched effects and update checks guard network calls. A toggle for "Network Access & Release Checks" was added to Notifications & Privacy. Unit test expectations updated for the new default.
…r multiple notification modes and gesture navigation
…acking, and repository architecture"

This reverts commit ae3daf7.
…racking, and repository architecture"

This reverts commit 47c0a38.
…pport for multiple notification modes and gesture navigation"

This reverts commit 392487d.
Pause auto-collapse and enable keyboard input when replying in the island. Adds isInputActive state to IslandViewModel (with tests), routes reply state through OverlayIsland/IslandOverlayView, and updates SmartIslandOverlayService to make the overlay focusable and adjust soft input behavior. NotificationExpanded gains focused text field, IME actions, RemoteInput send handling, and keyboard show/hide logic. Also bumps app versionName to 5.1.0, disables AndroidGradlePluginVersion lint, and updates Gradle wrapper to 9.7.1. No new permissions or network introduced.
@agupta07505 agupta07505 self-assigned this Aug 22, 2026
@agupta07505 agupta07505 added bug Something isn't working enhancement New feature or request labels Aug 22, 2026
@agupta07505
agupta07505 merged commit 61d8f04 into main Aug 22, 2026
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant