Repository navigation
fix(portal): recover capture sooner after GNOME display changes (#27) - #35
Conversation
Use Mutter notifications to enable a 200 ms grace for correlated, continuously paused capture without a valid format. Cancel stale hints on healthy renegotiation and retain the five-second fallback. Test event ordering, repeated and stale notifications, natural recovery, and subscription teardown. Document measured recovery gains and limits. Fixes VallierDev#27
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
…he repository Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
感谢!实现很克制(只在 GNOME 会话订阅 Mutter Thanks — tight change and clear measurements. As with #34 I pushed a small commit moving |
|
已合并,感谢!将随下一个版本发布。/ Merged, thanks — ships in the next release. |
Fixes #27
GNOME scaling changes can leave Portal capture paused without a negotiated format until the existing five-second failure threshold expires. This change uses Mutter
MonitorsChangedto check that failure sooner and reuse the existing serialized session recovery.实现 / Implementation
实测 / Measurements
Ubuntu 26.04, GNOME 50 Wayland, one 3840x2160 display, 200% ↔ 166.67% scaling:
200 ms 是本机测量后的初始宽限,不是所有 GNOME 版本的保证。候选版官方客户端的渲染、鼠标和黑屏耗时尚未完成验收;上述数字是主机会话恢复时间。其他桌面保留兜底;多屏、物理分辨率和旋转不在本次范围。
The 200 ms grace is an initial measured value, not a guarantee across GNOME versions. Official-viewer rendering, pointer acceptance and black-screen duration remain unverified for the candidate; these measurements cover host session recovery. Other desktops retain the fallback. Multi-monitor, physical-resolution and rotation support remain outside this change.
Details:
docs/experiments/issue-27-display-recovery.md.验证 / Validation
cargo test --locked --features wayland,portalcargo build --locked --release --features wayland,portal