Make the dashboard the default interface at root#3345
Open
jelveh wants to merge 1 commit into
Open
Conversation
The dashboard now loads at / (with /dashboard kept as an alias), and the desktop moves to a new /desktop route. An "Open Desktop" button pinned at the bottom of the dashboard sidebar switches to the desktop. Root URLs that carry a desktop-only flow keep booting the desktop: auth popups (?embedded_in_popup=), app deep links (?app=), direct downloads (?download=), fullpage mode (?puter.fullpage=), and iframe embeds. Desktop-context redirects are retargeted so desktop users stay on the desktop: logout, the QR "continue on phone" link, the auth cover-page logo click, and window close/hide URL resets now use /desktop. OIDC login/signup gains a strictly whitelisted return_to param (/desktop or /dashboard) so social login returns to the interface it started from. Also: the dashboard strips ?ref= like the desktop does, ?auth_token= cleanup preserves the path and tab hash, the logged-out session list gets the wallpaper back, ?download= also works at /desktop, and the GUI dev server serves /desktop and /dashboard.
Contributor
Coverage Report
File Coverage
|
||||||||||||||||||||||||||||||||||||||||||||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
/;/dashboardstill works as an alias./desktoproute (backend shell route + GUI dev server route).Compatibility
Root URLs that carry a desktop-only flow keep booting the desktop exactly as before:
?embedded_in_popup=— SDK auth popup token handoff?app=— insta-login / app deep links?download=— direct-download links (now also work at/desktop)?puter.fullpage=— chromeless fullpage modeDesktop-context redirects are retargeted so desktop users stay on the desktop:
/desktop(dashboard users to/)/desktopinstead of//desktop/desktopreturn_toparam so social login returns to the interface it started from — strictly whitelisted server-side to/desktopand/dashboard(no open redirect)Smaller fixes that fell out of the change:
?ref=from the URL like the desktop does (referral attribution no longer lingers in shareable URLs)?auth_token=cleanup preserves the current path and tab hash (/#usagelinks survive)Testing
HomepageControllerandOIDCControllervitest suites pass (39 tests)/→ dashboard;/desktop→ desktop; Open Desktop button navigates;/?app=exploreropens explorer on the desktop;/?puter.fullpage=trueboots the chromeless shell;/?download=…shows the download confirmation;/?ref=x#usagestrips the ref, keeps the hash, and opens the Usage tab