Repository navigation
feat: integrate Windows/Linux desktop SDK and accepted platform fixes - #184
Merged
Merged
Conversation
Introduce desktop:embed for canvas-app contributions and keep native window handles in the main process. Bind expiring selections to their canvas card, synchronize the trusted iframe viewport, hide native surfaces under overlays, and restore original windows on detach or host shutdown. Ship a standalone Codex Desktop reference plugin, SDK declarations, compatibility documentation, capability tests and real Win32/Electron smoke tests. Refuse mismatched DPI modes before reparenting and keep process launch/termination outside this API.
Check the native image clipboard for every configured terminal paste chord and forward literal Ctrl+V for Windows Codex before xterm extended-key encoding. Preserve configured text paste, unbound literal-key behavior, and stale-session guards. Cover Windows screenshots, text, modifiers, other CLIs and restart races in the actual keyboard handler tests.
Extend the desktop:embed SDK introduced by bbutterm in PR #182 with an independent Linux X11/XWayland backend, native child clipping and workspace HUD/input integration. Preserve the original Windows implementation and contributor commit history.
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.
Integrates the accepted platform contributions while retaining the original contributor commits.
Changes
Attribution and merge method
Merge with a merge commit, not squash or rebase. Original heads from #171 (
038d73cb), #182 (7c9e6bca) and #183 (a10e6ee3) are ancestors of this branch; their authors and licenses remain in history. #172 was already included in main through817ca7c5; its original PR has now been merged into its original beta2 target to record its accepted status.Validation
Known limits
Linux requires X11/XWayland and XFixes 2; native Wayland surfaces and macOS desktop embedding are unsupported. Abrupt destruction of Electron can destroy foreign child windows and lose unsaved application data. Foreign GPU surfaces/dialogs and mixed DPI remain compatibility limits; Chromium-only captures may omit foreign pixels, and sampled native click focus can miss exceptionally short clicks. Windows native embedding and real Codex screenshot attachment were not manually retested here.