Skip to content

Default the browser to the inline-3D samples page - #52

Open
dfattal wants to merge 1 commit into
mainfrom
feat/default-landing-page
Open

Default the browser to the inline-3D samples page#52
dfattal wants to merge 1 commit into
mainfrom
feat/default-landing-page

Conversation

@dfattal

@dfattal dfattal commented Jul 28, 2026

Copy link
Copy Markdown
Contributor

The browser opened to a blank new tab — a poor first impression for a build whose entire reason to exist is the weave, since nothing on screen demonstrates it. Startup and the home button now both point at https://displayxr.github.io/displayxr-web/, which links on to the gallery.

Not a source patch — deliberately

patches/ is regenerated from the fork branch and rebased onto a new milestone tag every month, and patches/README.md notes the series reproduces that branch exactly (identical tree hash). A hand-authored 55th patch would be dropped by the next regeneration, and even done properly a homepage string would carry a permanent rebase cost. branding/README.md already states the standing rule: keep branding rebase-stable.

Chromium ships a data mechanism for exactly this. branding/initial_preferences is copied into the staged tree by package.sh, so the installer's existing File /r "${STAGE_DIR}\*.*" lands it next to chrome.exe, where Chromium reads it. Zero rebase cost, forever.

Behaviour worth knowing

  • Seeds a NEW profile only. An existing profile keeps whatever it has. That's correct for a default — a starting point, not a policy, and the user stays free to change their homepage — but it means testing needs a fresh --user-data-dir.
  • restore_on_startup: 4 is Chromium's "open these URLs" value. The URL is in both homepage and session.startup_urls so the home button and the startup page can't disagree.
  • Also sets check_default_browser: false and make_chrome_default: false — this is a developer preview that the README explicitly says not to use as a daily driver, so it shouldn't be asking to become the default browser.

Verification

Not runtime-tested, and I want to be plain about that. This box has no Chromium checkout and no Windows build. What I did check: the JSON parses and carries the expected keys, package.sh passes bash -n, and the staging path is the one the NSI already globs. Nobody has watched the browser actually open the page.

Worth a look on the Windows box with a fresh profile before this is trusted.

🤖 Generated with Claude Code

The browser opened to a blank new tab, which is a poor first impression for
a build whose entire reason to exist is the weave: nothing on screen
demonstrates it. Startup and the home button now both point at
https://displayxr.github.io/displayxr-web/ — the samples page, which links
on to the gallery.

Shipped as `branding/initial_preferences`, copied into the staged tree by
package.sh so the installer's `File /r` lands it next to chrome.exe, where
Chromium reads it.

NOT a source patch, deliberately. The patch series is regenerated from the
fork branch and rebased onto a new milestone tag every month, and the
branding README's standing rule is to keep this stuff rebase-stable. A
homepage string does not justify a 55th entry with a permanent rebase cost
when Chromium ships a data mechanism for exactly this.

Seeds a NEW profile only — an existing profile keeps what it has. That is
the right behaviour for a default (a starting point, not a policy), but it
does mean testing this needs a fresh --user-data-dir.

UNVERIFIED: not runtime-tested. This box has no Chromium checkout and no
Windows build, so the JSON is schema-checked and the script syntax-checked,
but nobody has watched the browser actually open the page yet.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant