Skip to content

Constrain macOS overscroll to conversations#1317

Merged
thomaspblock merged 3 commits into
mainfrom
brain/overscroll-boundary-lock
Jun 30, 2026
Merged

Constrain macOS overscroll to conversations#1317
thomaspblock merged 3 commits into
mainfrom
brain/overscroll-boundary-lock

Conversation

@thomaspblock

@thomaspblock thomaspblock commented Jun 26, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • add a root webview wheel-boundary lock so non-conversation chrome cannot chain wheel gestures to the WKWebView viewport and rubber-band the whole app
  • lock html, body, and #root to the viewport with hidden overflow / no overscroll behavior
  • mark the real conversation scrollers (main timeline and thread panel), keeping any allowed elastic affordance scoped to conversations
  • add a smoke E2E test covering top chrome, sidebar pinned/nav area, channel header, and conversation timeline behavior

Verification

Latest conflict-resolution pass:

  • . ./bin/activate-hermit && pnpm --dir desktop typecheck
  • . ./bin/activate-hermit && pnpm --dir desktop lint
  • . ./bin/activate-hermit && pnpm --dir desktop build && pnpm --dir desktop exec playwright test tests/e2e/scroll-history.spec.ts tests/e2e/timeline-no-shift.spec.ts tests/e2e/overscroll-boundary.spec.ts --project=smoke
  • git push origin HEAD pre-push hooks passed: desktop-test, mobile-test, desktop-tauri-test, rust-tests

Original PR verification:

  • corepack pnpm --dir desktop typecheck
  • corepack pnpm --dir desktop lint
  • corepack pnpm --dir desktop exec playwright test tests/e2e/overscroll-boundary.spec.ts --project=smoke
  • corepack pnpm --dir desktop build

Verification videos:

Co-authored-by: Thomas Petersen <thomasp@squareup.com>
Signed-off-by: Thomas Petersen <thomasp@squareup.com>
@thomaspblock thomaspblock force-pushed the brain/overscroll-boundary-lock branch from f505b25 to 0c719f6 Compare June 26, 2026 23:27
@thomaspblock thomaspblock marked this pull request as ready for review June 26, 2026 23:51
@thomaspblock thomaspblock merged commit 9b711f4 into main Jun 30, 2026
45 of 47 checks passed
@thomaspblock thomaspblock deleted the brain/overscroll-boundary-lock branch June 30, 2026 14:58
wpfleger96 pushed a commit that referenced this pull request Jun 30, 2026
…work

* origin/main: (25 commits)
  fix(thread): stop mid-scroll content jump in live threads (#1397)
  fix(ci): restore main to green — tauri fmt, personas.rs file-size split, Windows path test (#1399)
  fix(desktop): enable buzz-dev-mcp MCP server for Codex agents (#1394)
  fix(ci): restore E2E flakiness fixes for pgschema, docker-pull, and spec timing (#1396)
  fix(personas): persist pack-backed persona UI edits across reboot (#1392)
  fix(buzz-acp): clear steer_rx on all run_prompt_task exit paths (#1391)
  Restore channel date divider rule (#1395)
  Speed up profile wave action (#1379)
  Restore visible links for rich previews (#1378)
  Mobile channel list polish (#1367)
  style(desktop): unify corner radii to rounded-2xl (16px) (#1393)
  fix(desktop): skip keychain write when blob contents are unchanged (#1377)
  fix(desktop): stop clipping the agent-activity row under the composer (#1371)
  Constrain macOS overscroll to conversations (#1317)
  Mobile appearance foundation (#1366)
  chore(release): release Buzz Desktop version 0.3.38 (#1375)
  feat(desktop): provider-agnostic model selection + databricks discovery (#1307)
  release(helm): buzz chart 0.1.1 (#1374)
  Harden relay attack surfaces (#1369)
  ci(helm): publish chart to GHCR on chart-v* tags (#1372)
  ...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants