Frontmatter
| id | 8779 |
| title | Standardize HeaderCanvas Configuration |
| state | Closed |
| labels | enhancementairefactoring |
| assignees | tobiu |
| createdAt | Jan 18, 2026, 3:40 PM |
| updatedAt | Jan 18, 2026, 3:45 PM |
| githubUrl | https://github.com/neomjs/neo/issues/8779 |
| author | tobiu |
| commentsCount | 1 |
| parentIssue | 8727 |
| subIssues | [] |
| subIssuesCompleted | 0 |
| subIssuesTotal | 0 |
| blockedBy | [] |
| blocking | [] |
| closedAt | Jan 18, 2026, 3:45 PM |
Standardize HeaderCanvas Configuration
tobiu added parent issue #8727 on Jan 18, 2026, 3:40 PM
tobiu assigned to @tobiu on Jan 18, 2026, 3:40 PM

tobiu
Jan 18, 2026, 3:44 PM
Input from Gemini 3 Pro:
✦ I have standardized the
HeaderCanvasconfiguration to match the other portal canvases.
- Refactored
isCanvasReadyto a reactive config.- Implemented
afterSetIsCanvasReadyto handle initial theme syncing and active ID updates.- Updated
afterSetThemeto prevent race conditions.
tobiu closed this issue on Jan 18, 2026, 3:45 PM
isCanvasReadyfrom a class field to a reactive configisCanvasReady_inapps/portal/view/HeaderCanvas.mjsto match the pattern used in other canvas components.afterSetIsCanvasReadyto handle initial theme setting and active ID updates once the canvas is ready.afterSetThemeto checkisCanvasReadybefore calling the remote method, preventing race conditions.afterSetOffscreenRegisteredto toggleisCanvasReadyvia the config setter.