Framed client: navigating to any settings page escapes the Nextcloud frame #1

Open
opened 2026-08-05 22:17:43 -07:00 by neonoverlord · 0 comments
Member

Repro (Brock, 2026-08-05 night): open the app via the Social menu (framed /app page) -> click any settings entry (General reliably; other settings entries too; the main nav Home/Local/etc does NOT do this) -> the whole window becomes the standalone client (out of the NC frame). Browser Back then flashes a 500 (the stale-classmap redeclare error, separately fixed by post-install graceful reload) before returning to the framed page.

Open questions the next session should answer with devtools:

  • address-bar URL immediately after the escape (top-level nav confirmed or not?)
  • whether Firefox's cannot-display-embedded recovery panel is involved
  • whether sapper's router fallback (component load failure -> location.href) fires for prerendered settings routes, and on WHICH window object

Known-not-the-cause: no target=_top/_parent in settings components; no top/parent refs besides the deliberate OAuth breakout in addInstance.js; CSP frame-ancestors 'self' is set on all served client HTML.

Severity: annoying, not blocking — the standalone client works fine after the escape.

Repro (Brock, 2026-08-05 night): open the app via the Social menu (framed /app page) -> click any settings entry (General reliably; other settings entries too; the main nav Home/Local/etc does NOT do this) -> the whole window becomes the standalone client (out of the NC frame). Browser Back then flashes a 500 (the stale-classmap redeclare error, separately fixed by post-install graceful reload) before returning to the framed page. Open questions the next session should answer with devtools: - address-bar URL immediately after the escape (top-level nav confirmed or not?) - whether Firefox's cannot-display-embedded recovery panel is involved - whether sapper's router fallback (component load failure -> location.href) fires for prerendered settings routes, and on WHICH window object Known-not-the-cause: no target=_top/_parent in settings components; no top/parent refs besides the deliberate OAuth breakout in addInstance.js; CSP frame-ancestors 'self' is set on all served client HTML. Severity: annoying, not blocking — the standalone client works fine after the escape.
Sign in to join this conversation.
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: bawnet/integration_gotosocial#1