Skip to content

v1.0.0-alpha.12 — Map simplify pass

Latest

Choose a tag to compare

@NateIsern NateIsern released this 12 Apr 17:24
· 97 commits to main since this release

Map simplify pass + keyboard fixes

Follow-up to v1.0.0-alpha.11. Applies a second round of /simplify review fixes and lands the keyboard-controller integration.

Cleanups

  • Snap constants: collapsed SHEET_INDEX_DETAIL / SHEET_INDEX_LIST (both `1`) into a single SHEET_INDEX_MID, and renamed SHEET_INDEX_SEARCHSHEET_INDEX_TOP to match what the index actually means.
  • Render perf: `LIST_CONTENT_CONTAINER_STYLE` is now a module-level constant instead of an empty-dep `useMemo`.
  • Row re-renders: `PlaceRow` wrapped in `React.memo` so FlashList skips rows that aren't the new or old selection.
  • No-op guard: `handleSheetChange` uses the functional setState form so repeat snaps at the same index don't schedule extra renders.
  • Comment hygiene: `handleSearchFocus` comment trimmed to just the non-obvious WHY.

Keyboard

  • `KeyboardProvider` from `react-native-keyboard-controller` wired at the root (replaces React Native's flaky keyboard bookkeeping on Android).
  • Dropped the `onBlur`-triggered snap that was causing focus-blur oscillation on the search TextInput.

Test plan

  • Tap search → sheet snaps to top, keyboard stays open, can type
  • Drag sheet through all three snaps — magnetic to top
  • Scroll the places list at mid and top snap
  • Tap a pin from the map → detail view shows
  • Change filter chip → list updates, haptic feedback fires

🤖 Generated with Claude Code