Skip to content

Improve PWA internal/external URL routing controls#813

Open
djangonavarro220 wants to merge 5 commits into
filips123:mainfrom
djangonavarro220:feat/smarter-firefox-webapp-routing
Open

Improve PWA internal/external URL routing controls#813
djangonavarro220 wants to merge 5 commits into
filips123:mainfrom
djangonavarro220:feat/smarter-firefox-webapp-routing

Conversation

@djangonavarro220
Copy link
Copy Markdown

@djangonavarro220 djangonavarro220 commented Apr 26, 2026

Summary

This PR improves how PWAs decide whether a URL should stay inside the app window or open in the regular browser.

What changed

  • infer in-app scope automatically from the app manifest / start URL when possible
  • open out-of-scope links in the regular browser by default
  • intercept external links earlier in the native browser hooks so direct external links are less likely to get absorbed by the PWA window
  • add a per-app setting for explicit internal URL patterns
  • support exact prefixes and wildcard patterns such as:
    • https://mail.google.com/mail/
    • https://*.google.com/*
    • https://domain.com/path/*
  • prefill the install form start URL with the current app URL

Why

There are several long-running reports around:

  • _blank / new-window links staying inside the PWA
  • needing path-level or wildcard control instead of domain-only matching
  • cases where a site mixes internal app routes with external links under related domains

This PR aims to improve the common case without requiring manual configuration for every app, while still allowing finer per-app control when needed.

Related to:

Notes

  • tested locally with a custom build flow on macOS
  • this is intentionally focused on routing behavior and small UI support for tuning it
  • there may still be edge cases around complex SSO / redirect flows that need follow-up

@djangonavarro220 djangonavarro220 force-pushed the feat/smarter-firefox-webapp-routing branch 4 times, most recently from 0b2b579 to bed3953 Compare April 29, 2026 15:52
@djangonavarro220 djangonavarro220 force-pushed the feat/smarter-firefox-webapp-routing branch from bed3953 to 8d2641c Compare April 29, 2026 16:14
@filips123
Copy link
Copy Markdown
Owner

Can you please also set up translations? Some guidelines how the translation system works are here.

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.

2 participants