SessionHandling
Size: 3219
Comment: + suspend or hibernate errors
|
Size: 3637
Comment: + Scope
|
Deletions are marked like this. | Additions are marked like this. |
Line 6: | Line 6: |
== Scope == For each of {start up, log in with password, log in automatically, lock screen manually, lock screen automatically, unlock, switch user account, log out, suspend, hibernate, restart, shut down}, we should define how that function is made available (or not), looks, behaves, and fails gracefully, for {a standard user account, an admin account, a guest session, a live/test-drive session}. |
This is an incomplete but living specification on how Ubuntu sessions should work.
As a temporary measure until ExitStrategy is implemented, there should be separate Log Out, Sleep, Hibernate, Restart, and Switch Off commands. The Log Out, Restart, and Switch Off commands should have confirmation alerts. The “Sleep” and “Switch Off” terminology should be used consistently across Ubuntu.
Packages affected: gdm, gnome-power-manager, gnome-session, indicator-session
Scope
For each of
- {start up, log in with password, log in automatically, lock screen manually, lock screen automatically, unlock, switch user account, log out, suspend, hibernate, restart, shut down},
we should define how that function is made available (or not), looks, behaves, and fails gracefully, for
- {a standard user account, an admin account, a guest session, a live/test-drive session}.
Common alert elements
The primary action button should respond to the Enter key, and should not have any other access key. The Cancel button should respond to the Esc key, and should not have any other access key. None of the buttons should have icons.
Log Out
If updates that require a restart are waiting to be installed:
The “Restart” button should have the access key R. If you do not have permission to restart without authenticating, the button label should end with an ellipsis.
Otherwise:
Restart
If you do not have permission to restart without authenticating, the button label should end with an ellipsis.
Switch Off
(The phrase “shut down” is used here in the primary text as a hint for people who are used to “shut down” from previous versions or other OSes.)
If you do not have permission to switch off without authenticating, the button label should end with an ellipsis.
When suspending or hibernating fails
There are three errors Ubuntu might receive when trying to suspend or hibernate.
Not enough swap space to hibernate
Swap space is encrypted
If you have encrypted swap but have not specified a password for the swap, you would not be able to wake from hibernate. To protect you from this, Ubuntu will not hibernate in the first place. In this case, "Hibernate" should not appear in the session menu in the first place.
In the unlikely event that Ubuntu does try to hibernate in this situation ...
Sleep has already been requested
Show nothing extra, because the sleep is happening anyway.
Implementation plan
In indicator-session, implement the new alerts.
In gdm, change “Suspend” to “Sleep” and “Shut Down” to “Switch Off”.
In gnome-power-manager, change “Suspend” to “Sleep” and “Shutdown” [sic] to “Switch Off”.
In gnome-session’s behemoth dialog, change “Suspend” to “Sleep” and “Shut Down” to “Switch Off”.
In gnome-session, change “System policy prevents stopping the system when other users are logged in” to “To switch off the computer while others are logged in, you need to authenticate.” (with a period).
In gnome-user-guide, change the “Ending a Session” page so that it refers to “Switch Off” instead of “Shut Down”, and has a bullet point for “Sleep” instead of wibbling about some vendors letting you suspend.
Later, move the confirmation alerts from indicator-session to gnome-session.
SessionHandling (last edited 2016-01-08 12:12:56 by mpt)