Uh oh!
There was an error while loading. Please reload this page.
fix: phone touch targets, send and stop names, and the Flow caret - #36
fix: phone touch targets, send and stop names, and the Flow caret#36divyanshub024 wants to merge 5 commits into
Conversation
87774fb to
bc923e1Comparec7949f5 to
b4d4d37CompareUh oh!
There was an error while loading. Please reload this page.
b4d4d37 to
8edf666CompareUh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes using default effort and found 1 potential issue.
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit 81c886a. Configure here.
Uh oh!
There was an error while loading. Please reload this page.
divyanshub024
commented
Aug 30, 2026
Folded into #37, which now targets main with these commits unchanged. |

Summary
Mobile fixes from a pass over the example on the iPhone simulator. Stacked on #35 (shared changelog); merge that first.
FlowTouchTargetwidens the hit area on touch platforms without changing layout, sized per site so a neighbour's taps stay its own (siblings hit-test in reverse order, not by distance; the actions row takes its reach downward into the gap between turns). Pointer platforms pass straight through.FlowComposer.sendTooltipandstopTooltipname them, as tooltips, which carry the semantics label. Docs and example updated.FlowThemeon a stockThemeDatagot Material's purple caret, wash and iOS handles against Flow's primary. NewFlowSelectionThemederivesTextSelectionThemeand the Cupertino primary fromFlowColors; wraps the chat view and the composer.kIsWeb, which silences the two runtime warnings it logged on iOS.Screenshots
How this was verified
flutter analyzeclean at the root and inexample/andplayground/;dart format .applied.Checklist
flutter analyze libandflutter analyzeinexample/andplayground/are cleandart format .applieddependencies:inpubspec.yamlis flutter.dev-published, forces no configuration on hosts that never use the feature, and is argued in this PRlib/flow_ui.dartand documented indocs/and the README tableCHANGELOG.mdupdated for user-facing changes, with breaking changes called outfeat:,fix:,refactor:,docs:,chore:)Note
Low Risk
Localized UI/a11y and layout hit-testing on touch; no auth, data, or breaking API beyond optional composer tooltip params.
Overview
Improves mobile usability and accessibility without shifting desktop layout: new
FlowTouchTarget(iOS/Android only) reserves larger hit boxes in layout and forwards taps to small controls—message actions, composer attach/send/stop rings, menu triggers, code-block copy, and error dismiss—often by reclaiming footer/row gap so pixels stay on-spec.Adds
FlowComposer.sendTooltipandstopTooltipso VoiceOver gets names for send/stop (documented in composer docs; example sets'Send'/'Stop').FlowSelectionThemewraps the chat surface and composer so caret, selection wash, handles, and Cupertino primary use Flow primary instead of the hostColorSchemepurple.The example passes
kIsWeb-gated drop/paste handlers to avoid iOS runtime warnings.CHANGELOG.mdrecords touch targets, tooltips, and the caret fix.Reviewed by Cursor Bugbot for commit cb4bad4. Bugbot is set up for automated code reviews on this repo. Configure here.