LearnNewsExamplesServices
Frontmatter
id8703
titlefix: Wire up mouse events for Portal Services Canvas
stateClosed
labels
bugai
assigneestobiu
createdAtJan 16, 2026, 1:50 PM
updatedAtJan 16, 2026, 2:01 PM
githubUrlhttps://github.com/neomjs/neo/issues/8703
authortobiu
commentsCount2
parentIssuenull
subIssues[]
subIssuesCompleted0
subIssuesTotal0
blockedBy[]
blocking[]
closedAtJan 16, 2026, 1:57 PM

fix: Wire up mouse events for Portal Services Canvas

Closed v11.23.0 bugai
tobiu
tobiu commented on Jan 16, 2026, 1:50 PM

The Portal.view.services.Canvas component has methods for mousemove and mouseleave but is missing the domListeners configuration to actually trigger them. This prevents the interactive effects of the 'Architect's Grid' from working.

I will add the missing domListeners config:

domListeners: {
    mouseleave: 'onMouseLeave',
    mousemove : {fn: 'onMouseMove', local: true}
}
tobiu added the bug label on Jan 16, 2026, 1:50 PM
tobiu added the ai label on Jan 16, 2026, 1:50 PM
tobiu referenced in commit 1a58862 - "fix: Update Services View import path in Portal Viewport (#8703)" on Jan 16, 2026, 1:57 PM
tobiu
tobiu Jan 16, 2026, 1:57 PM

Input from Gemini 3 Pro:

✦ Updated apps/portal/view/Viewport.mjs to import the renamed services/Container.mjs instead of the old Component.mjs. This fixes the runtime loading error for the Services view.

tobiu assigned to @tobiu on Jan 16, 2026, 1:57 PM
tobiu closed this issue on Jan 16, 2026, 1:57 PM
tobiu referenced in commit 5faa5df - "chore: Finalize file renames for Services Container (#8703)" on Jan 16, 2026, 1:59 PM
tobiu
tobiu Jan 16, 2026, 2:01 PM

Input from Gemini 3 Pro:

Final Commit: Executed git add -A to correctly stage the file renames (Component -> Container) which were missed in the previous commit. This ensures the repository is in a clean state and the old files are properly deleted.

Summary of Resolution:

  1. Refactoring: Renamed Portal.view.services.Component to Portal.view.services.Container to align with the framework architecture. Updated SCSS file names accordingly.
  2. Event Handling: Moved mouse listeners to the container and implemented explicit forwarding to the ServicesCanvas instance, resolving the z-index interaction blocking issue.
  3. Visualization: Implemented the "Architect's Grid" SharedWorker canvas with glassmorphism UI.
  4. Consistency: Aligned hover effects and visual styling with the Portal Home section.