After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 676697 - Add an initial-setup mode
Add an initial-setup mode
Status: RESOLVED FIXED
Product: gnome-shell
Classification: Core
Component: general
unspecified
Other All
: Normal normal
: ---
Assigned To: gnome-shell-maint
gnome-shell-maint
Depends on:
Blocks:
 
 
Reported: 2012-05-24 03:38 UTC by Matthias Clasen
Modified: 2012-05-31 17:47 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Add an initial-setup mode (2.13 KB, patch)
2012-05-24 03:39 UTC, Matthias Clasen
reviewed Details | Review
Add an initial-setup mode (2.16 KB, patch)
2012-05-31 01:13 UTC, Matthias Clasen
reviewed Details | Review
new patch (2.34 KB, patch)
2012-05-31 12:00 UTC, Matthias Clasen
accepted-commit_now Details | Review

Description Matthias Clasen 2012-05-24 03:38:57 UTC
Use the newly introduced kiosk mode functionality, and define an
'initial-setup' mode, which is similar to 'gdm' mode, but without
the greeter.
Comment 1 Matthias Clasen 2012-05-24 03:39:00 UTC
Created attachment 214829 [details] [review]
Add an initial-setup mode
Comment 2 Matthias Clasen 2012-05-25 00:47:44 UTC
Maybe this should just be called 'kiosk'.
Another canned mode that has been proposed would be a 'wm' mode - with just compositing and window decoration, but no panel or message tray.
Comment 3 Florian Müllner 2012-05-29 12:01:51 UTC
Review of attachment 214829 [details] [review]:

::: js/ui/sessionMode.js
@@ +64,3 @@
+                       hasRunDialog: false,
+                       hasWorkspaces: false,
+                       createSession: Main.createUserSession,

Do we really need a full user session here? I see the point of running networkAgent, but everything else?

@@ +78,3 @@
+                               'volume': imports.ui.status.volume.Indicator,
+                               'battery': imports.ui.status.power.Indicator,
+                               'powerMenu': imports.gdm.powerMenu.PowerMenuButton

I think everything in imports.gdm should be private to gdm mode, so if we want to reuse it here, it should be moved elsewhere. But I wonder if Shutdown/Reboot are actually too useful during initial setup ...
Comment 4 Matthias Clasen 2012-05-29 16:07:55 UTC
(In reply to comment #3)
> Review of attachment 214829 [details] [review]:
> 
> ::: js/ui/sessionMode.js
> @@ +64,3 @@
> +                       hasRunDialog: false,
> +                       hasWorkspaces: false,
> +                       createSession: Main.createUserSession,
> 
> Do we really need a full user session here? I see the point of running
> networkAgent, but everything else?

I'm not actually sure what createUserSession implies, here. I basically picked this instead of createGdmSession because I don't want a greeter.
Comment 5 Allan Day 2012-05-29 16:27:10 UTC
In general I think we should keep the number of System Status items to a minimum during initial setup. This communicates that the user isn't in a normal session, and focuses attention on the initial setup assistant.

The mockups for initial setup don't include any System Status entries in the top bar.

Some notes on each of the menus you have here:

a11y - we want initial setup to be accessible. A system status icon could be one way to acheive this. Another could be to add it as a stage in the initial setup assistant.

keyboard - shouldn't be necessary for initial setup. A user should only have one layout throughout.

network - shouldn't be necessary, since we provide a network setup step in the initial setup assistant.

volume - only required if someone is using a screen reader.

battery - shouldn't be necessary. The user should be warned about low battery through notifications.

power menu - I don't think we should suggest that initial setup is something that can be stopped and restarted, and this shouldn't be necessary if we keep the process short.
Comment 6 Matthias Clasen 2012-05-31 01:13:43 UTC
Created attachment 215299 [details] [review]
Add an initial-setup mode

Use the newly introduced kiosk mode functionality, and define an
'initial-setup' mode that is suitable for
https://live.gnome.org/GnomeOS/Design/Whiteboards/InitialSetup
Comment 7 Florian Müllner 2012-05-31 11:48:18 UTC
Review of attachment 215299 [details] [review]:

Looks like you attached the wrong patch - I don't see any difference at all wrt the previous one. One additional minor comment below:

::: js/ui/sessionMode.js
@@ +61,3 @@
+                       allowSettings: false,
+                       allowExtensions: false,
+                       allowKeybindingsWhenModal: true,

"false" might be more appropriate - I don't like the property name a lot, it basically means "allow to ctrl-alt-tab to the panel while the login dialog is up". I don't think initial-setup will use any system modal dialogs, so we don't need this (it shouldn't do any harm either of course).
Comment 8 Matthias Clasen 2012-05-31 12:00:25 UTC
Created attachment 215326 [details] [review]
new patch
Comment 9 Florian Müllner 2012-05-31 12:09:26 UTC
Review of attachment 215326 [details] [review]:

Looks good.