Skip to content

fix(desktop): synchronize session row metadata with menu state - #3470

Merged
Astro-Han merged 1 commit into
apache:mainfrom
chihumyum:fix/session-row-menu-overlap
Aug 22, 2026
Merged

fix(desktop): synchronize session row metadata with menu state#3470
Astro-Han merged 1 commit into
apache:mainfrom
chihumyum:fix/session-row-menu-overlap

Conversation

@chihumyum

Copy link
Copy Markdown
Contributor

Summary

  • Prevent the sidebar session timestamp from overlapping or flickering with its action trigger during menu dismissal.
  • Mirror the controlled menu-open state onto the session action wrapper.
  • Use the same hover, focus, and menu-open conditions for both action visibility and timestamp hiding, so they switch together.
  • Extend Electron regression coverage for hover loss, outside dismissal, reopening, and pointer menu selection.

before:
Screenshot 2026-08-22 at 2 38 50 PM

after:
Screenshot 2026-08-22 at 3 24 32 PM

Verification

  • npm run build:with-deps from apps/desktop
  • npm --workspace @maka/desktop run typecheck
  • npx biome check apps/desktop/e2e/sidebar-project-row.spec.ts apps/desktop/src/renderer/styles/sidebar.css packages/ui/src/session-history-list.tsx
  • npx playwright test --config e2e/playwright.config.ts e2e/sidebar-project-row.spec.ts — 3 passed
  • git diff --check

The focused regression failed before the controlled menu-state wiring was added.

AI use

Select exactly one:

  • No generative tool made a substantive contribution
  • Generative tooling made a substantive contribution

Tool(s) and scope: Codex analyzed the popover/focus timing, implemented the controlled-state CSS fix, and extended Electron E2E coverage.

Checklist

  • Tests cover the change and fail without it
  • Lint, format, typecheck and the affected suites pass locally

Does this PR entail a change in behavior?

  • Yes — described under Summary above
  • No

@Astro-Han Astro-Han left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks — this is a focused fix at the existing controlled-menu seam. I reviewed exact head dff8838ce4dc63f04dbf5d6249443c103a664827; the DOM projection follows the same menuOpen state that owns dismissal and focus handoff, the selector does not affect project rows, and the pointer/keyboard regression coverage matches the behavior. I found no P0–P3 issues, and the current-head test check is green.

AI-assisted review disclosure: OpenAI Codex performed an independent exact-head review. I verified the state ownership, event/lifecycle paths, tests, live review state, mergeability, and current-head CI, and I independently made the approval decision.

@Astro-Han
Astro-Han merged commit b26733d into apache:main Aug 22, 2026
1 check passed
@chihumyum
chihumyum deleted the fix/session-row-menu-overlap branch August 22, 2026 13:31
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