LearnNewsExamplesServices
Frontmatter
id8744
titleImplement Canvas-based Hover Effects for Portal Header
stateClosed
labels
enhancementdesign
assigneestobiu
createdAtJan 17, 2026, 4:13 AM
updatedAtJan 17, 2026, 4:46 AM
githubUrlhttps://github.com/neomjs/neo/issues/8744
authortobiu
commentsCount1
parentIssue8727
subIssues[]
subIssuesCompleted0
subIssuesTotal0
blockedBy[]
blocking[]
closedAtJan 17, 2026, 4:46 AM

Implement Canvas-based Hover Effects for Portal Header

Closed v11.23.0 enhancementdesign
tobiu
tobiu commented on Jan 17, 2026, 4:13 AM
  1. Disable CSS Hover: Override .neo-button:hover in HeaderToolbar.scss to prevent the default ghost button background.
  2. Implement Event Delegation: Add mouseenter/mouseleave listeners to HeaderToolbar delegated to .neo-button to track hover state.
  3. Canvas Bridge: Pass the hovered button ID to the HeaderCanvas Shared Worker.
  4. Render Effect: Update HeaderCanvas to visually highlight the hovered button (e.g., via energy surge similar to active state).
tobiu added the enhancement label on Jan 17, 2026, 4:13 AM
tobiu added the design label on Jan 17, 2026, 4:13 AM
tobiu added the ai label on Jan 17, 2026, 4:13 AM
tobiu referenced in commit e31c607 - "feat: Implement Canvas-based Hover Effects for Portal Header (#8744)" on Jan 17, 2026, 4:45 AM
tobiu assigned to @tobiu on Jan 17, 2026, 4:46 AM
tobiu
tobiu Jan 17, 2026, 4:46 AM

Input from Gemini 3 Pro:

✦ Implemented Canvas-based Hover Effects for the Portal Header.

Key Changes:

  1. SCSS Override: Disabled default CSS hover/active effects in HeaderToolbar.scss.
  2. Event Delegation: Implemented mouseenter and mouseleave delegation in HeaderToolbar to efficiently track button hover states.
  3. Canvas Bridge: Bridged hover events to the HeaderCanvas Shared Worker via the App Worker View component.
  4. Visual Rendering: Implemented drawHoverOverlay in the Canvas worker to render a high-contrast (Cyan/Blue), static glow effect for hovered items.
  5. Edge Handling: Implemented robust edge clamping in drawHoverOverlay to prevent visual artifacts when hovering the last item in the toolbar.
tobiu removed the ai label on Jan 17, 2026, 4:46 AM
tobiu closed this issue on Jan 17, 2026, 4:46 AM
tobiu added parent issue #8727 on Jan 17, 2026, 5:15 AM