When asked to switch sessions, jump to session creation if there's nothing to switch to
ClosedPublic

Authored by ngraham on Aug 20 2019, 2:08 AM.

Details

Summary

TL;DR version: whenever you currently would be taken to a session switcher page where the only possible action is to go to SDDM and start a new session, instead just show SDDM immediately instead.

Currently, the session switcher screen suffers from a few UX problems:

  • There's a fake "start new session" item that looks like a button but isn't clickable
  • Asking to switch users always goes to the screen where you can switch to existing sessions even if there are no existing sessions to switch to, which is an unnecessary extra step

This patch aims to solve those problems in the following ways:

  • Don't show a fake "start new session" item in the Breeze theme; instead add a real button in the UI to do this
  • When asked to show the session management screen and there is only one session so the on;y thing you could do on that screen is create another session, instead just go to session creation directly
  • For themes where the fake "start new session" button is shown, use a better icon that doesn't make it look like a clickable button

BUG: 386361
FIXED-IN: 5.17.0

Depends on D23279

Test Plan
  1. Have only one session > Kickoff/Kicker/dash/Krunner > Switch User -> you go directly to SDDM where you can start a new session
  2. Start a new session, then Switch user again -> you go to the session management screen where you can switch to the other session, or start a new one

Videos:
Clicking "Switch User" when there are no other sessions:

Clicking "Switch User" when there is another session to switch to, and then switching to it:

Clicking "Switch User" when there is another session to switch to, and then starting a new session:

Switching between multiple sessions in the session switcher:

If the fake "New Session" item is shown (e.g in other themes), here's what it now looks like:

Diff Detail

Repository
R120 Plasma Workspace
Branch
revamp-session-switching-ux
Lint
No Linters Available
Unit
No Unit Test Coverage
Build Status
Buildable 15418
Build 15436: arc lint + arc unit
ngraham created this revision.Aug 20 2019, 2:08 AM
Restricted Application added a project: Plasma. · View Herald TranscriptAug 20 2019, 2:08 AM
Restricted Application added a subscriber: plasma-devel. · View Herald Transcript
ngraham requested review of this revision.Aug 20 2019, 2:08 AM
ngraham edited the summary of this revision. (Show Details)Aug 20 2019, 2:09 AM

Screenshots please

ngraham edited the test plan for this revision. (Show Details)Aug 20 2019, 1:53 PM

Screenshots please

Done; added screenshots and videos to the Test Plan section.

gregormi added a subscriber: gregormi.EditedAug 20 2019, 8:37 PM

Looks great. Thanks, Nate. (Sidenote: I wonder if there is an obvious way to close the additional session. Currently, I use the keyboard: Ctrl+Alt+F8 and then Ctrl+Alt+Back,Back)

ngraham edited the summary of this revision. (Show Details)Aug 20 2019, 8:43 PM
ngraham updated this revision to Diff 64229.Aug 21 2019, 4:14 PM

Adjust to the fact that the Switch user button is always visible now

ngraham retitled this revision from When asked to switch sessions, skip to session creation if there's nothing to switch to to When asked to switch sessions, jump to session creation if there's nothing to switch to.Aug 21 2019, 4:22 PM
ngraham edited the summary of this revision. (Show Details)
GB_2 accepted this revision as: VDG, GB_2.Sep 5 2019, 4:10 PM
GB_2 added a subscriber: GB_2.

Makes sense to me UI- and behavior-wise.

lookandfeel/contents/lockscreen/LockScreenUi.qml
443

"Switch to Session" or "Switch to This Session"

This revision is now accepted and ready to land.Sep 5 2019, 4:10 PM
ngraham updated this revision to Diff 65458.Sep 5 2019, 4:35 PM
ngraham marked an inline comment as done.

Fix string capitalization

Thanks for the review, @GB_2. Have you tested it out? I did a lot of testing, but even more testing would be appreciated since I know this has the potential to introduce some regressions.

I suspect all the Plasma people are going to be busy with Akademy for the next week or two so I'll stop pinging for a while.

GB_2 added a comment.Sep 10 2019, 4:45 PM

Thanks for the review, @GB_2. Have you tested it out? I did a lot of testing, but even more testing would be appreciated since I know this has the potential to introduce some regressions.

I suspect all the Plasma people are going to be busy with Akademy for the next week or two so I'll stop pinging for a while.

I tested it and it it works fine, much better than before.

mart accepted this revision.Sep 17 2019, 5:31 PM
This revision was automatically updated to reflect the committed changes.