Skip to content

feat(desktop): refine session tab preview popover#34792

Merged
Brendonovich merged 1 commit into
devfrom
tab-preview-tweaks
Jul 2, 2026
Merged

feat(desktop): refine session tab preview popover#34792
Brendonovich merged 1 commit into
devfrom
tab-preview-tweaks

Conversation

@usrnk1

@usrnk1 usrnk1 commented Jul 1, 2026

Copy link
Copy Markdown
Contributor

Issue for this PR

Closes #

Type of change

  • Bug fix
  • New feature
  • Refactor / code improvement
  • Documentation

What does this PR do?

Follow-up refinements to the session tab hover preview popover (from #34678), based on design review feedback that it felt too busy and the animation felt repetitive when moving across tabs.

  • Remove the git branch row — we don't surface branch anywhere else in the session view, so it read as out of place. Also drop the folder icon on the path row.
  • Path no longer clips: it wraps to the next line so the meaningful tail of the path stays visible.
  • Calmer layout: vertical spacing unified to 6px, and project name / session title / path set to 1.5 line-height.
  • Repeated-animation fix: while rapidly hopping between tabs (within a 500ms window) the preview shows/hides instantly, so only the first "cold" preview animates — closer to how browsers reuse a single tab tooltip. Implemented by marking the content data-instant when it opens inside the warm window (Kobalte's HoverCard has no skipDelayDuration).
  • The enter/exit animation is currently disabled (instant) while we evaluate feel; the keyframes remain in place for a one-line re-enable.

How did you verify your code works?

  • bun typecheck passes in packages/app.
  • Existing titlebar/tab tests pass.
  • Presentational + thin reactive wiring, so no new tests per the repo's no-rendered-component-test convention.

Screenshots / recordings

Screenshot.2026-07-01.at.22.06.22.mp4

Checklist

  • I have tested my changes locally
  • I have not included unrelated changes in this PR

Follow-up tweaks from design review:

- Remove the git branch row (branch isn't shown elsewhere in the session,
  so it read as out of place) and drop the folder icon on the path row.
- Path now wraps to the end instead of clipping, so the meaningful tail is
  visible.
- Unify vertical spacing to 6px and set project/title/path line-height to
  1.5 for a calmer, less busy layout.
- Skip the enter/exit animation while rapidly hopping between tabs (only
  the first "cold" preview animates), and widen the skip window to 500ms.
- Make the preview show/hide instantly for now (animation disabled; the
  keyframes remain for easy re-enable).
@usrnk1 usrnk1 requested review from Brendonovich and Hona as code owners July 1, 2026 20:28
@Brendonovich Brendonovich merged commit 917eca4 into dev Jul 2, 2026
12 checks passed
@Brendonovich Brendonovich deleted the tab-preview-tweaks branch July 2, 2026 02:41
Wiktor102 pushed a commit to Wiktor102/opencode that referenced this pull request Jul 5, 2026
github-actions Bot added a commit to wallentx/opencode-termux that referenced this pull request Jul 6, 2026
* ci: Add Android build and publish workflow with APK artifact upload

Signed-off-by: wallentx <william.allentx@gmail.com>

* ci: Allow publish workflow to run with android_only input

Signed-off-by: wallentx <william.allentx@gmail.com>

* ci: Use github.token instead of committer output in publish workflow

Signed-off-by: wallentx <william.allentx@gmail.com>

* feat: Add aarch64-linux-android target to sidecar binaries

Signed-off-by: wallentx <william.allentx@gmail.com>

* ci: Simplify publish workflow and fix Android build conditions

Signed-off-by: wallentx <william.allentx@gmail.com>

* feat: Refactor app initialization and add WSL path conversion

Signed-off-by: wallentx <william.allentx@gmail.com>

* ci: Fix Android-only workflow condition and update dependencies

Signed-off-by: wallentx <william.allentx@gmail.com>

* sync release versions for v1.17.13

* chore: bump gitlab-ai-provider to 6.10.0 (anomalyco#34756)

* chore: update nix node_modules hashes

* feat(stats): redesign lab hero

* feat(stats): add lab overview

* feat(stats): redesign lab usage

* feat(data): another redesigned lab section

* feat(stats): use catalog descriptions

* chore: generate

* fix(stats): refine lab page tooltips

* fix(stats): include locale header in vary (anomalyco#34789)

* zen: new inference

* fix(desktop): keep window tabs across app close (anomalyco#34807)

* fix(app): stabilize session timeline layout continuity (anomalyco#34533)

* feat(desktop): refine session tab preview popover (anomalyco#34792)

* fix(ui): raise v2 tooltip layer (anomalyco#34455)

Co-authored-by: Jay <53023+jayair@users.noreply.github.com>
Co-authored-by: opencode-agent[bot] <opencode-agent[bot]@users.noreply.github.com>

* chore: update nix node_modules hashes

* fix(opencode): update Cerebras SDK reasoning replay (anomalyco#34826)

Co-authored-by: Aiden Cline <63023139+rekram1-node@users.noreply.github.com>

* chore: update nix node_modules hashes

* fix(app): resolve target session lineage outside router transition (anomalyco#34838)

* chore: generate

* fix(opencode): filter session list by resolved instance directory (anomalyco#34842)

* fix(app): only allow \(...\) syntax for inline latex (anomalyco#34850)

* test(opencode): cover Windows session list directory spellings (anomalyco#34857)

* fix(app): scope session tab indicators to the tab's server (anomalyco#34861)

* chore: generate

* fix(app): clear original prompt after retarget (anomalyco#34863)

* fix(app): seed session status before warming session info (anomalyco#34864)

* feat(app): v2 review panel overhaul (anomalyco#31882)

Co-authored-by: LukeParkerDev <10430890+Hona@users.noreply.github.com>

* fix(app): keep terminal mounted when switching session tabs in a workspace (anomalyco#34852)

Co-authored-by: Brendan Allan <git@brendonovich.dev>

* fix(ui): resolve toast icon inside the toast component (anomalyco#34874)

* fix(copilot): honor advertised model endpoints (anomalyco#34958)

* fix(stats): polish lab pages

* feat(stats): redesign model hero

* chore: generate

* feat(tui): add debug info dialog with copy to clipboard (anomalyco#35004)

* zen: new inference

* zen: new inference

* feat(app): navigate tabs on mousedown in new layout (anomalyco#35042)

* zen: new inference

* zen: new inference

* fix(app): keep v2 review pane mounted across session tab switches (anomalyco#35074)

* feat: experimental codemode (anomalyco#34677)

* chore: generate

* fix(ci): setup Node 24 before bun install for node-gyp (anomalyco#35076)

* revert: back out experimental codemode (anomalyco#35077)

* feat(codemode): add confined execution package (anomalyco#35079)

* chore: generate

* chore: update nix node_modules hashes

* chore: remove root node-gyp pin after Node 24 setup (anomalyco#35092)

* feat(desktop): add recently closed projects to home (anomalyco#34926)

* feat(app): align subagent UI with v2 (anomalyco#34931)

Co-authored-by: Luke Parker <10430890+Hona@users.noreply.github.com>

* chore: generate

* feat(desktop): papercut fixes (anomalyco#34939)

* refactor(opencode): expose MCP tools in native shape from the service (anomalyco#35103)

* feat(app): improvements to model search (anomalyco#34954)

* chore: generate

* feat(opencode): add code-mode MCP adapter (anomalyco#35085)

* chore: generate

* chore: update nix node_modules hashes

* feat(app): dropdown search fix (anomalyco#34961)

Co-authored-by: Brendan Allan <git@brendonovich.dev>

* fix(opencode): provide Observability beneath all route service graphs (anomalyco#35171)

* chore: upgrade turbo (anomalyco#35173)

* feat(stats): add model momentum section

* chore: generate

* fix(core): rewrite replacements while hoisting layers (anomalyco#35175)

* fix(stats): link market share labs

* chore: artifacts

* chore: generate

* feat(tui): render code-mode execute tool with child calls (anomalyco#35113)

* refactor(opencode): fail the execute tool on program failure (anomalyco#35180)

* fix(tui): align execute child calls with task indentation (anomalyco#35190)

* refactor(core): move path resolve into fs service (anomalyco#35202)

* feat(opencode): gate execute tool behind code mode flag (anomalyco#35185)

* chore: generate

* cleanup: tweak compaction prompt (anomalyco#35220)

Co-authored-by: Aiden Cline <63023139+rekram1-node@users.noreply.github.com>
Co-authored-by: opencode-agent[bot] <opencode-agent[bot]@users.noreply.github.com>

* fix(app): restore unfocused composer typing (anomalyco#35249)

* fix(app): delay initial tab preview (anomalyco#35266)

Co-authored-by: Jay <53023+jayair@users.noreply.github.com>

* fix(desktop): stabilize esm shim injection (anomalyco#35270)

* fix(app): match new session panel corners (anomalyco#35257)

* tui: preserve spinner registration (anomalyco#35292)

* feat: Add aarch64-linux-android target to sidecar binaries

Signed-off-by: wallentx <william.allentx@gmail.com>

* chore(ci): Improve workflow portability and add Android build support

Signed-off-by: wallentx <william.allentx@gmail.com>

* feat(ci): Add Android artifact build workflow and guidance

Signed-off-by: wallentx <william.allentx@gmail.com>

* fix(opencode): use NDK sysroot for Android artifact build

* fix(opencode): pass Android NDK libc paths to Zig

* fix(opencode): patch OpenTUI Android system libs

* fix(opencode): rely on NDK libc config for Android

* fix(opencode): resolve Android OpenTUI loader relatively

* chore(ci): add Android Bun compile smoke target

* fix(opencode): relocate Android Bun payload pointer

* chore(ci): build Android Bun runtime from source

* fix(ci): install LLVM for Android Bun source build

* fix(ci): bootstrap LLVM 21 for Android Bun build

* fix(ci): keep Bun Android build inside source tree

* fix(ci): link Android NDK runtimes for Bun build

* fix(ci): use Android strip for Bun runtime build

* chore(termux): add release mirror workflows

* chore(termux): align app token variables

* chore(termux): use app client id input

* chore(termux): fall back to github token

* chore(termux): prepare v1.17.13

---------

Signed-off-by: wallentx <william.allentx@gmail.com>
Co-authored-by: wallentx <william.allentx@gmail.com>
Co-authored-by: opencode <opencode@sst.dev>
Co-authored-by: Vladimir Glafirov <vglafirov@gitlab.com>
Co-authored-by: opencode-agent[bot] <opencode-agent[bot]@users.noreply.github.com>
Co-authored-by: Adam <2363879+adamdotdevin@users.noreply.github.com>
Co-authored-by: Frank <frank@anoma.ly>
Co-authored-by: Luke Parker <10430890+Hona@users.noreply.github.com>
Co-authored-by: usrnk1 <7547651+usrnk1@users.noreply.github.com>
Co-authored-by: opencode-agent[bot] <219766164+opencode-agent[bot]@users.noreply.github.com>
Co-authored-by: Jay <53023+jayair@users.noreply.github.com>
Co-authored-by: Aiden Cline <63023139+rekram1-node@users.noreply.github.com>
Co-authored-by: Brendan Allan <14191578+Brendonovich@users.noreply.github.com>
Co-authored-by: Aarav Sareen <96787824+arvsrn@users.noreply.github.com>
Co-authored-by: Brendan Allan <git@brendonovich.dev>
Co-authored-by: Dustin Deus <deusdustin@gmail.com>
Co-authored-by: Kit Langton <kit.langton@gmail.com>
Co-authored-by: James Long <longster@gmail.com>
Co-authored-by: Simon Klee <hello@simonklee.dk>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants