Built-in browser Home button
Add a Home entry to the OpenProgram built-in browser toolbar, reusing the existing new-tab page without introducing a configurable home URL.
Behavior
- Both the desktop native WebContentsView toolbar and the ordinary browser iframe toolbar display a House icon button.
- The button title and accessible name follow the current language:
HomeorHome. - Clicking replaces the current
webtab in place with the existingntppage; it does not add a tab or navigate to an external URL. - Preserve tab order, active state and compound-tab member position; remove the old web tab id and clear legacy split state that references it.
Boundaries
Do not add custom home settings, search-engine settings, dependencies, background processes or a new page implementation. Back, forward, address input, reload, bookmarks, split view and external opening remain unchanged.
Task files
Production code:apps/web/components/center-tabs/web-tab-pane.tsx, apps/web/lib/tabs/center-tabs-store.ts. Tests:apps/web/scripts/runtime/check-web-split.mjs. Design and acceptance records: this file.
Acceptance
- RED: the existing code lacks the store action, House button and wiring for both toolbars.
- GREEN: state tests demonstrate in-place replacement, group updates and native web-view id cleanup; source checks verify Home buttons in both toolbars.
- After building, use only the installed
/Applications/OpenProgram.appfor visible page acceptance; do not start Electron from source.
Implementation record
Implemented and passed automated checks and installed-App acceptance.
- All Web checks, TypeScript checks and the production build passed.
- The installed
/Applications/OpenProgram.appstarts the default worker with its bundled Python runtime; Electron was not started from source. - DOM/ARIA acceptance confirms exactly one
Homebutton in the toolbar;titleand the accessible name are correct, and the address bar displayshttps://example.com/. - Clicking Home displays the existing
New tabpage, preserves the tab count and removes the original web tab's CDP target. - One screenshot of the current viewport confirms button placement and visual consistency; OCR, candidate-box detection and repeated screenshots were not used.