-
Notifications
You must be signed in to change notification settings - Fork 16
refactor: Refactor display logic #57
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
calsys456
commented
Dec 22, 2025
- Remove greeter completely
- Employ a clean new way to interact with authenticate module
- Remove unused code
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sorry @calsys456, you have reached your weekly rate limit of 500000 diff characters.
Please try again later or upgrade to continue using Sourcery
|
Hi @calsys456. Thanks for your PR. I'm waiting for a linuxdeepin member to verify that this patch is reasonable to test. If it is, they should reply with Once the patch is verified, the new status will be reflected by the I understand the commands that are listed here. DetailsInstructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
This pull request performs a major refactoring of the display server logic by removing the Greeter component entirely and introducing a cleaner authentication flow. The changes consolidate display server management into a Treeland-centric architecture with X11 support as needed.
Key Changes:
- Removed the Greeter abstraction and DisplayServer base class, replacing them with concrete TreelandDisplayServer and refactored XorgDisplayServer implementations
- Refactored the Auth module to split authentication into distinct phases (authenticate, openSession, startUserProcess) for better control flow
- Simplified the Display class by removing complex state management and switching logic, now defaulting to Treeland with dynamic X11/Wayland session support
Reviewed changes
Copilot reviewed 26 out of 26 changed files in this pull request and generated 15 comments.
Show a summary per file
| File | Description |
|---|---|
| src/daemon/XorgUserDisplayServer.h | Deleted - user-mode X11 display server removed |
| src/daemon/XorgUserDisplayServer.cpp | Deleted - user-mode X11 display server removed |
| src/daemon/XorgDisplayServer.h | Changed inheritance from DisplayServer to QObject, made display a public member |
| src/daemon/XorgDisplayServer.cpp | Removed testing mode branches, added vt parameter to start(), changed m_display to public display member |
| src/daemon/WaylandDisplayServer.h | Deleted - standalone Wayland display server removed |
| src/daemon/WaylandDisplayServer.cpp | Deleted - standalone Wayland display server removed |
| src/daemon/UserSession.h | Updated start() to accept command, type, and cookie parameters; removed m_auth member |
| src/daemon/UserSession.cpp | Refactored start() to use switch statement for display types, simplified stop() logic, removed greeter-specific handling |
| src/daemon/TreelandDisplayServer.h | Added - new Treeland display server implementation |
| src/daemon/TreelandDisplayServer.cpp | Renamed from SingleWaylandDisplayServer with simplified interface |
| src/daemon/SingleWaylandDisplayServer.h | Deleted - replaced by TreelandDisplayServer |
| src/daemon/SeatManager.cpp | Simplified createDisplay() call to remove serverType parameter |
| src/daemon/Seat.h | Updated createDisplay() signature to remove serverType parameter |
| src/daemon/Seat.cpp | Removed display server type selection logic and fallback handling |
| src/daemon/Pam.h | Changed openSession parameter from pass-by-value to const reference |
| src/daemon/Pam.cpp | Updated openSession signature to const reference |
| src/daemon/Greeter.h | Deleted - greeter component completely removed |
| src/daemon/Greeter.cpp | Deleted - greeter component completely removed |
| src/daemon/DisplayServer.h | Deleted - base class abstraction removed |
| src/daemon/DisplayServer.cpp | Deleted - base class implementation removed |
| src/daemon/Display.h | Major refactor - removed DisplayServer abstraction, made seat and terminalId public members, simplified interface |
| src/daemon/Display.cpp | Complete rewrite - removed greeter logic, simplified authentication flow, added direct Treeland management |
| src/daemon/CMakeLists.txt | Updated to remove deleted files and add TreelandDisplayServer |
| src/daemon/Auth.h | Refactored to split start() into authenticate(), openSession(), and startUserProcess() |
| src/daemon/Auth.cpp | Implemented new three-phase authentication flow |
| REUSE.toml | Updated file list to reflect deletions |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
249bef2 to
cafbb94
Compare
- Remove greeter completely - Employ a clean new way to interact with authenticate module - Remove unused code
|
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: calsys456, zccrs The full list of commands accepted by this bot can be found here. DetailsNeeds approval from an approver in each of these files:Approvers can indicate their approval by writing |