LearnNewsExamplesServices
Frontmatter
id7845
titleFeat: Create Neo.manager.Window for Multi-Window Geometry Tracking
stateClosed
labels
enhancementai
assigneestobiu
createdAtNov 21, 2025, 7:16 PM
updatedAtNov 21, 2025, 9:54 PM
githubUrlhttps://github.com/neomjs/neo/issues/7845
authortobiu
commentsCount0
parentIssuenull
subIssues[]
subIssuesCompleted0
subIssuesTotal0
blockedBy[]
blocking[]
closedAtNov 21, 2025, 9:54 PM

Feat: Create Neo.manager.Window for Multi-Window Geometry Tracking

Closed v11.9.0 enhancementai
tobiu
tobiu commented on Nov 21, 2025, 7:16 PM

Goal

Create a new core manager, Neo.manager.Window, in the App Worker to track the geometry and state of all connected browser windows. This is the foundational "God View" required for cross-window interactions like drag-and-drop.

Responsibilities

  1. Registry: Maintain a collection of all connected windows, keyed by windowId.
  2. Geometry Tracking: Store the screenX, screenY, outerWidth, and outerHeight for each window.
  3. Updates: Provide a method (e.g., updateWindowRect(windowId, rect)) that can be called by the Main Thread (via DOM listeners or polling) to keep the worker state in sync.
  4. Intersection API: Provide a method getWindowAt(screenX, screenY) that returns the windowId of the window at the given global coordinates.

Implementation Details

  • Namespace: src/manager/Window.mjs
  • Singleton: This should be a global singleton in the App Worker.
  • Integration: It should listen for connect / disconnect events to manage the registry automatically.

Acceptance Criteria

  • Neo.manager.Window exists and is accessible in the App Worker.
  • It correctly tracks the list of active windows.
  • (Mock/Test) Updating a window's rect updates the internal state.
  • getWindowAt(x, y) correctly identifies the target window based on the stored geometry.
tobiu added the enhancement label on Nov 21, 2025, 7:16 PM
tobiu added the ai label on Nov 21, 2025, 7:16 PM
tobiu assigned to @tobiu on Nov 21, 2025, 7:18 PM
tobiu referenced in commit 14b20c1 - "Feat: Create Neo.manager.Window for Multi-Window Geometry Tracking #7845" on Nov 21, 2025, 9:53 PM
tobiu closed this issue on Nov 21, 2025, 9:54 PM