LearnNewsExamplesServices
Frontmatter
id8779
titleStandardize HeaderCanvas Configuration
stateClosed
labels
enhancementairefactoring
assigneestobiu
createdAtJan 18, 2026, 3:40 PM
updatedAtJan 18, 2026, 3:45 PM
githubUrlhttps://github.com/neomjs/neo/issues/8779
authortobiu
commentsCount1
parentIssue8727
subIssues[]
subIssuesCompleted0
subIssuesTotal0
blockedBy[]
blocking[]
closedAtJan 18, 2026, 3:45 PM

Standardize HeaderCanvas Configuration

Closed v11.23.0 enhancementairefactoring
tobiu
tobiu commented on Jan 18, 2026, 3:40 PM
  • Refactor isCanvasReady from a class field to a reactive config isCanvasReady_ in apps/portal/view/HeaderCanvas.mjs to match the pattern used in other canvas components.
  • Implement afterSetIsCanvasReady to handle initial theme setting and active ID updates once the canvas is ready.
  • Update afterSetTheme to check isCanvasReady before calling the remote method, preventing race conditions.
  • Update afterSetOffscreenRegistered to toggle isCanvasReady via the config setter.
tobiu added the enhancement label on Jan 18, 2026, 3:40 PM
tobiu added the ai label on Jan 18, 2026, 3:40 PM
tobiu added the refactoring label on Jan 18, 2026, 3:40 PM
tobiu added parent issue #8727 on Jan 18, 2026, 3:40 PM
tobiu assigned to @tobiu on Jan 18, 2026, 3:40 PM
tobiu referenced in commit c8eb899 - "feat: Standardize HeaderCanvas Configuration (#8779)" on Jan 18, 2026, 3:44 PM
tobiu
tobiu Jan 18, 2026, 3:44 PM

Input from Gemini 3 Pro:

✦ I have standardized the HeaderCanvas configuration to match the other portal canvases.

  • Refactored isCanvasReady to a reactive config.
  • Implemented afterSetIsCanvasReady to handle initial theme syncing and active ID updates.
  • Updated afterSetTheme to prevent race conditions.
tobiu closed this issue on Jan 18, 2026, 3:45 PM