Hive Hive
Sign in

fix(web): keep account dropdown open during interaction

GitHub issue · Closed

Metadata
Source
tuist/hive #66
Updated
Jun 24, 2026
Domains
Hive
Details

What changed

The account dropdown in the dashboard header now uses Noora’s dropdown hook with the same trigger and positioner structure used in the Tuist server and Atlas header patterns. The stylesheet now opens the menu from the hook’s explicit open state instead of relying on hover-only visibility.

A focused layout test now checks that the account dropdown keeps the Noora hook and positioner structure.

Why

Moving from the avatar trigger to the menu crossed the visual gap between the two elements. Since the old implementation depended on hover and focus selectors, the menu could disappear before the pointer reached the dropdown content.

Root cause

The menu content was absolutely positioned below the trigger and hidden unless the wrapper matched hover or focus-within. When the pointer left the trigger before entering the content, neither selector matched, so the dropdown closed.

Approach

The header account menu now follows the existing Tuist pattern: Noora owns the dropdown open state and positions the menu through a sibling positioner element. The Hive-specific styles remain responsible for the account menu’s visual treatment.

Impact

Signed-in users can move from the avatar trigger to the account dropdown without it closing prematurely. There are no data, route, or configuration changes.

Validation

  • mix format lib/hive_web/components/layouts.ex test/hive_web/components/layouts_test.exs
  • mix test test/hive_web/components/layouts_test.exs, 12 tests passed
  • mix assets.build, completed successfully with existing third-party dependency warnings during first-time compilation
Comments

No GitHub comments yet.