Skip to content

Display greeter on xwayland: primary display only - #457

Draft
jerezereh wants to merge 2 commits into
pop-os:masterfrom
jerezereh:fix/primary-login-surface
Draft

Display greeter on xwayland: primary display only#457
jerezereh wants to merge 2 commits into
pop-os:masterfrom
jerezereh:fix/primary-login-surface

Conversation

@jerezereh

Copy link
Copy Markdown

Addresses issue #435.

Uses the xwayland: primary configuration to determine primary monitor to display login subsurface on, falling back to leftmost-display (as oriented by hardware defaults, will not pick up user configuration of monitor setup), and destroys subsurfaces on non-primary displays. Tested and working with lock screen, suspend, and restart greeter paths.

Known issues:

  • The detect-and-destroy strategy makes a race condition in the greeter more visible, where the first monitor to connect receives focus, rather than the primary. This issue already exists (Password input field is out of focus - possible regression #286), but is currently hidden by duplicating the login subsurface across all displays. I have investigated this issue and determined it likely requires changes outside of this repo.
  • When login box is unfocused, a fallback inputs uncaptured character text into the password field, but keys with no text output fail (backspace, enter, etc.). Through testing I found that focus is being taken away after being established in greeter.rs, likely through some lower-level GUI mechanism. Related issues include multiple displays connected. login box not selected. #110 and Tab should focus password input #71.

  • I have disclosed use of any AI generated code in my commit messages.
    • If you are using an LLM, and do not fully understand the changes it is making to the code base, do not create a PR.
    • In our experience, AI generated code often results in overly complex code that lacks enough context for a proper fix or feature inclusion. This results in considerably longer code reviews. Due to this, AI authored or partially authored PRs may be closed without comment.
  • I understand these changes in full and will be able to respond to review comments.
  • My change is accurately described in the commit message.
  • My contribution is tested and working as described.
  • I have read the Developer Certificate of Origin and certify my contribution under its conditions.

Disclaimer: Being new to Rust, I have used AI agent Codex for reference and review. If anything looks incorrect or out of place, please leave feedback or guidance.

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