Skip to content

Assist option popups: keyboard covers number fields (Zebra Highlight / Midtone) #135

Description

@erik-sutton95

Maintainer + testers: in View Assist long-press popups, number fields (Zebra Highlight / Midtone) sit under the keyboard. You cannot see or change the value.

What went wrong?

Zebra options use a number-pad TextField (ZebraNumberField / Android SettingsNumberField). The long-press card parks above the assist bar (AssistLongPressOverlay) and never tracks the keyboard. Operator Setup already pads for keyboardWillChangeFrame. The live popup does not. Number pad has no Return, so the field stays focused and the card stays buried.

Same rows exist in Operator Setup → View Assist (Android ZebraAssistCard / iOS zebra card).

Already in tree

  • iOS: ZebraAssist.ZebraNumberField .keyboardType(.numberPad) — only assist numeric editor
  • iOS: AssistLongPressOverlay positions from AssistLongPressChrome.panelBox (toolbar + safe area). No keyboard inset. shouldScroll is for a short well, not IME.
  • iOS: SettingsRootView already applies keyboardInset from keyboardWillChangeFrame
  • Android: SettingsNumberField on AssistOptionsPopup Zebra rows — no imePadding / window-insets lift documented on that overlay

Do

  • When a number field focuses, lift or scroll the assist popup so the field stays above the keyboard (live + playback overlays).
  • Number-pad accessory: Done / dismiss. Tap outside still dismisses the popup.
  • Operator Setup zebra card: same rule if the Setup keyboard inset does not actually reveal those fields on a small phone.
  • Android assist popup: IME padding / imePadding() so Highlight/Midtone stay visible.
  • Any other assist numeric field (if added) uses the same chrome — not a Zebra-only hack.

Out of scope

Changing zebra IRE mapping (separate issue). New units.

Done when

Physical phone, live ZEBRA long-press: tap Highlight, type 95, see the field, dismiss keyboard, stripes update. Landscape and portrait. iOS + Android.

Verify

Physical iPhone (small + Pro Max) and Android. just native-check / just android-check.

Metadata

Metadata

Assignees

Labels

P1High priority — important for current cyclearea:androidAndroid / Jetpack Compose workarea:iosiOS SwiftUI shell (ios/OpenPocketCine)area:monitoringMonitoring assists (false color, scopes, zebra, guides, etc.)area:uiGeneral UI/UX, layout, design systembugSomething isn't workingreadyTriaged and ready to pick up

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions