Skip to content

fix(desktop): share browser modal and status page presentation - #7856

Merged
waleedlatif1 merged 3 commits into
stagingfrom
codex/desktop-modal-consistency
Sep 15, 2026
Merged

waleedlatif1 merged 3 commits into
stagingfrom
codex/desktop-modal-consistency

Conversation

@waleedlatif1

Copy link
Copy Markdown
Collaborator

Summary

  • Use the same EMCN modal descriptions, initial focus policy, status-page layout, and canonical wordmark in desktop and the browser. Remove the duplicate page/wordmark implementations, extra recovery-action icons, and desktop-only font smoothing; bundle the exact browser font asset.
  • Keep bundled dialogs and recovery pages in sync with the app's selected theme, including live changes and renderer recovery. Reuse the desktop title-bar observer for fullscreen layout and consolidate native modal focus, resizing, and Escape handling.
  • Preserve isolated recovery windows, trusted IPC boundaries, native file pickers, and the synchronous unload fallback that must work when the hosted renderer is unavailable.

Type of Change

  • Bug fix

Testing

  • Completed all eight cleanup passes; lint, 46 repository audits, API validation, generators, and 26 workspace type checks pass.
  • 1,605 desktop unit tests, 225 related web regression tests, 45 shared modal tests, and all 10 Electron smoke tests pass. Smoke coverage includes no-scroll server validation, keyboard dismissal, theme changes, and fullscreen recovery across reloads.
  • Compared actual Electron and Chromium renders in light/dark themes at the same display scale. Verified shared typography, colors, spacing, and border geometry.
  • Desktop production bundle builds. Local unsigned packaging requires unavailable Xcode icon tooling; the unsigned packaged-app CI smoke check remains required before completion.

Checklist

  • Code follows project style guidelines
  • Self-reviewed my changes
  • Tests added/updated and passing
  • No new warnings introduced
  • I confirm that I have read and agree to the terms outlined in the Contributor License Agreement (CLA)

@vercel

vercel Bot commented Sep 15, 2026 •

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

1 Skipped Deployment
Project Deployment Actions Updated
docs Skipped Skipped Sep 15, 2026 7:10pm UTC

Request Review

@greptile-apps

greptile-apps Bot commented Sep 15, 2026 •

Copy link
Copy Markdown
Contributor

RetriggerConfidence Score: 5/5

The PR appears safe to merge, with no outstanding correctness, security, or repository-rule issues identified.

Summary

The PR aligns desktop recovery dialogs and status pages with their browser equivalents while preserving Electron isolation and recovery behavior.

  • Reuses shared EMCN modal, status-page, and canonical wordmark components.
  • Synchronizes bundled-page themes with the hosted app, including live changes and renderer recovery.
  • Consolidates modal focus, resizing, and Escape handling.
  • Extends native fullscreen-state presentation to bundled recovery pages.
  • Packages the browser’s exact Season Sans font asset for desktop rendering.
  • Preserves local-page sender checks, isolated server selection, and native recovery paths.

Diagram

%%{init: {'theme': 'neutral'}}%%
flowchart LR
  Hosted[Hosted Sim renderer] -->|Resolved theme| Main[Electron main process]
  Main -->|Theme snapshot and updates| Bundled[Bundled recovery pages]
  Main --> Dialog[Isolated recovery dialog]
  Main --> Offline[Offline status page]
  Main --> Server[Server-selection window]
  Bundled --> Shared[Shared EMCN presentation]
  Dialog --> Shared
  Offline --> Shared
  Server --> Shared
  Main -->|Validated local-page IPC| Native[Native recovery actions]
Loading

Reviews (3) · Last reviewed commit: "chore(desktop): remove redundant dismiss..."

@cubic-dev-ai cubic-dev-ai Bot left a comment •

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

All reported issues were addressed across 73 files

Reply with feedback, questions, or to request a fix.

Fix all with cubic | Re-trigger cubic

Comment thread apps/desktop/src/renderer/shell.ts
@waleedlatif1

Copy link
Copy Markdown
Collaborator Author

@greptile

@waleedlatif1

Copy link
Copy Markdown
Collaborator Author

@cubic-dev-ai review this PR

@cubic-dev-ai

cubic-dev-ai Bot commented Sep 15, 2026

Copy link
Copy Markdown
Contributor

@cubic-dev-ai review this PR

@waleedlatif1 I have started the AI code review. It will take a few minutes to complete.

@cubic-dev-ai cubic-dev-ai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No issues found across 73 files

Confidence score: 5/5

  • Automated review surfaced no issues in the provided summaries.
  • No files require special attention.

Re-trigger cubic

Comment thread apps/desktop/e2e/smoke.spec.ts Outdated
@waleedlatif1

Copy link
Copy Markdown
Collaborator Author

@greptile

@waleedlatif1

Copy link
Copy Markdown
Collaborator Author

@cubic-dev-ai review this PR

@cubic-dev-ai

cubic-dev-ai Bot commented Sep 15, 2026

Copy link
Copy Markdown
Contributor

@cubic-dev-ai review this PR

@waleedlatif1 I have started the AI code review. It will take a few minutes to complete.

@cubic-dev-ai cubic-dev-ai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No issues found across 73 files

Confidence score: 5/5

  • Automated review surfaced no issues in the provided summaries.
  • No files require special attention.

Re-trigger cubic

@waleedlatif1
waleedlatif1 merged commit d61006a into staging Sep 15, 2026
36 checks passed
@waleedlatif1
waleedlatif1 deleted the codex/desktop-modal-consistency branch September 15, 2026 19:19

This branch was previously deployed

1 inactive deployment
Preview — 6a578a5d Deployed Sep 15, 2026 by vercel[bot]
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