fix(mobile): resolve touch issues and unify button styling in plugins settings - #502
Conversation
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
ProdigyV21
left a comment
There was a problem hiding this comment.
Thanks — the core here is genuinely good. The mobile card layout for plugins matches the rest of mobile settings, the MobileSettingsCategory/MobileSettingsRow extraction to SettingsRows.kt is a clean exact move, and replacing the tv.material3 Surface dialog buttons fixes a real touch issue.
Three blockers, all on the TV side (TV is the primary form factor):
-
Reset Plugins & Extensions is silently removed — the reset row,
WarningDialog, and the only UI path toPluginUiEvent.ResetAllPluginsare gone on both TV and mobile, leaving dead code behind. Please restore it in both branches. If you think it should be dropped, propose that separately. -
The new Box+clickable dialog buttons have no focused-state visual. On TV you can no longer see whether Cancel or Add is focused. Keep the touch fix, but add a focus indicator (interactionSource/onFocusChanged driving background or border), or keep the TV Surface on the non-touch branch.
-
Please revert removing
.focusProperties { canFocus = false }from the Add row andFocusableSettingsRow/FocusableSettingsToggleRow. Those are TV-only paths now (mobile takes your new branch), so the change buys nothing for touch — and that guard is what keeps real Compose focus out of rows in the virtual-focus system.
Also worth considering: mobile repo rows delete instantly on any tap — a confirmation would prevent accidents.
With 1–3 addressed, happy to merge.
…fix TV focus guards
ProdigyV21
left a comment
There was a problem hiding this comment.
Reviewed and verified after updating to current main. The requested mobile touch fixes, restored reset flow, TV focus guards, and dialog focus states are present. Play and Sideload Kotlin compilation passed locally, the Sideload unit-test suite passed locally, and GitHub's required Verify build check passed.
Summary
This PR fixes touch interaction issues on Android mobile devices within the Plugins settings screen and aligns button and category styling with the rest of the mobile settings sections.
Changes
LocalDeviceType.current.isTouchDevice()so touch events trigger directly without TV D-Pad focus slot overrides.androidx.tv.material3.Surfacedialog buttons inAddRepoDialogwith touch/focus-friendly ComposeBoxbuttons.MobileSettingsCategoryandMobileSettingsRowinSettingsRows.kt.BackgroundElevated,RoundedCornerShape(12.dp)), standard row padding, dividers, value pills, and green toggle switches (SuccessGreen) for plugins settings.