Skip to content

HomeKey TV v1.7.0

Choose a tag to compare

@leonida92 leonida92 released this 09 Oct 22:45
· 5 commits to main since this release

Fix Remote Navigation Double-Input Glitch

  • Eliminated Accessibility Input Filter Dual-Dispatch: Fixed a race condition where rapid, concurrent Secure Settings wipes during service initialization caused Android's AccessibilityManagerService to maintain both an active binding and a crashed service connection, resulting in doubled D-pad remote inputs across the entire OS.
  • Early Return in Secure Settings Write: tryEnableViaSecureSettings() now checks whether the service is already listed in enabled_accessibility_services and exits immediately without tearing down the existing binder connection.

Stable Key Filtering & Native Pass-Through

  • Removed Runtime Filter Flag Flapping: Eliminated dynamic mutations of FLAG_REQUEST_FILTER_KEY_EVENTS via setServiceInfo() in RemoteButtonRemapService. Key events that should not be intercepted (including unmapped volume and navigation keys) now pass through natively by returning false in onKeyEvent(), preventing system-level input filter rebuilds and queue desynchronization.
  • Clean Volume Hold Engine: Retained the active software volume repeat generator for devices with suppressed hold repeats without disturbing system key filtering state.

Package Replacement & Startup Hardening

  • Package Update Grace Period: Added an initial delay in PackageReplacedReceiver so Android OS can complete its native accessibility service rebinding without interference after an APK update.
  • Eliminated Redundant Cold Boot Writes: Removed eager tryEnableViaSecureSettings() invocations from Application.onCreate() that raced against system service startup.
  • Window Token Attachment Buffer: Postponed DockOverlayManager prewarming by 500ms to guarantee WindowManager token readiness and avoid BadTokenException on cold connection.