LearnNewsExamplesServices
Frontmatter
id8778
titleIntegrate Robust Theme Switching for Services Canvas
stateClosed
labels
bugenhancementai
assigneestobiu
createdAtJan 18, 2026, 3:27 PM
updatedAtJan 18, 2026, 3:35 PM
githubUrlhttps://github.com/neomjs/neo/issues/8778
authortobiu
commentsCount1
parentIssue8727
subIssues[]
subIssuesCompleted0
subIssuesTotal0
blockedBy[]
blocking[]
closedAtJan 18, 2026, 3:35 PM

Integrate Robust Theme Switching for Services Canvas

Closed v11.23.0 bugenhancementai
tobiu
tobiu commented on Jan 18, 2026, 3:27 PM
  • Refactor isCanvasReady from a class field to a reactive config isCanvasReady_ in apps/portal/view/services/Canvas.mjs.
  • Implement afterSetTheme to check this.isCanvasReady before calling the remote method.
  • Implement afterSetIsCanvasReady to trigger the remote setTheme call once the canvas connection is established.
  • Update afterSetOffscreenRegistered to toggle the isCanvasReady config.
  • This ensures the Services Canvas correctly responds to theme changes and avoids race conditions.
tobiu added the bug label on Jan 18, 2026, 3:27 PM
tobiu added the enhancement label on Jan 18, 2026, 3:27 PM
tobiu added the ai label on Jan 18, 2026, 3:27 PM
tobiu added parent issue #8727 on Jan 18, 2026, 3:27 PM
tobiu referenced in commit 419a346 - "feat: Integrate Robust Theme Switching for Services Canvas (#8778)" on Jan 18, 2026, 3:35 PM
tobiu assigned to @tobiu on Jan 18, 2026, 3:35 PM
tobiu
tobiu Jan 18, 2026, 3:35 PM

Input from Gemini 3 Pro:

✦ I have integrated robust theme switching for the Services Canvas.

  • Refactored isCanvasReady to a reactive config in apps/portal/view/services/Canvas.mjs.
  • Implemented afterSetTheme and afterSetIsCanvasReady to safely toggle the ServicesCanvas theme in the Shared Worker.
  • This ensures consistency with the other portal canvases and prevents race conditions.
tobiu closed this issue on Jan 18, 2026, 3:35 PM