From d340536578036acca608f4f99cdb6a980beb0c9c Mon Sep 17 00:00:00 2001 From: edde746 <86283021+edde746@users.noreply.github.com> Date: Sat, 20 Dec 2025 14:56:18 +0100 Subject: [PATCH] fix: don't switch input mode on atv pointer events close #169 --- lib/focus/input_mode_tracker.dart | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/lib/focus/input_mode_tracker.dart b/lib/focus/input_mode_tracker.dart index a66d75e7..bf311f48 100644 --- a/lib/focus/input_mode_tracker.dart +++ b/lib/focus/input_mode_tracker.dart @@ -95,6 +95,13 @@ class _InputModeTrackerState extends State { @override Widget build(BuildContext context) { + // On Android TV, don't switch to pointer mode from pointer events + // as D-pad can generate synthetic pointer events that would incorrectly + // trigger pointer mode and show a cursor instead of D-pad focus navigation + if (TvDetectionService.isTVSync()) { + return _InputModeProvider(mode: _mode, child: widget.child); + } + return Listener( // Switch to pointer mode on mouse activity onPointerDown: (_) => _setMode(InputMode.pointer),