GNOME Bugzilla – Bug 636216
"Primary Screen" selection UI is not easily discoverable.
Last modified: 2013-09-03 10:44:54 UTC
gnome-display-properties doesn't seem to let me set which of my monitors should be the primary one (when not in clone mode). It seems to "guess" which is which based on the position, which is error-prone and doesn't work as expected if your primary screen is on the right and the secondary on the left. This affects window placement and the position of gnome-panel (don't know about gnome-shell), so it's a bit annoying not being able to do this.
The display panel for GNOME 3.x does this already.
Created attachment 181476 [details] screenshot with gnome3 livecd 0.0.4 There still doesn't seem to be any way to do this with the current display properties in gnome shell.#
(ie: there is no button to "Make screen primary").
Drag the "panel" at the top of the display to the display you want to be primary.
While I would consider that a nice "alternative way", I think this is not easily discoverable for users, and thus, impairs usability. I'm not saying this because I was not clever enough to think of it myself (though it's quite obvious I wasn't :), I'm saying this because I'm thinking of the following users: - the average user coming from other platforms - joe plumber plugging a HD TV into his computer as a secondary screen and having problems with his panel/shell showing up on the wrong screen due to graphic card inputs ordering - jane doe using her laptop in an extended desktop with a 24" monitor, but not wanting the tiny laptop screen to be the primary - university professors or students giving presentations or doing work with multi-head setups, or people who simply haven't invested tons of time researching wikis or forums or other documentation to know if the feature even exists (because they were told that gnome3 was all about removing features ;-) There's also the possibility of having a popup (right-click) menu for screens to "Set this screen as primary", but it would be less discoverable than a button (shown/made sensitive when the selected screen is not currently the primary).
This is the most undiscoverable bit of UI design that I found on OS X - please don't make this the standard way to on GNOME 3. Alternatives could include: - A drop down for "Primary display" listing the available display - (probably not nearly as simple to do) A checkbox in each display rectangle with "Primary" next to it
The lack of feedback indicating that the bar is something you can interact with is quite strong. It looks like it's just a static "screenshot", much like the overlay thumbnails you can't interact with.
I agree it may not be obvious. However, we really want to be doing the right thing automatically for the primary display setting. It really should only be something you very rarely change. Also, it really shouldn't be something I have to know the name of. "Primary display" means nothing to me. "the display with the top bar" does and that is what we try to represent in the settings panel. I think the way we do it now is not perfect but good enough.
I think adding a checkbox for 'Show the panel on this monitor' would be good
(In reply to comment #8) > I agree it may not be obvious. However, we really want to be doing the right > thing automatically for the primary display setting. It really should only be > something you very rarely change. Also, it really shouldn't be something I > have to know the name of. "Primary display" means nothing to me. "the display > with the top bar" does and that is what we try to represent in the settings > panel. I think the way we do it now is not perfect but good enough. I have used Gnome for several years, and up until I read this bug report I have always turned off my laptop screen when connecting to a larger monitor just so that the panel wouldn't end up on the small screen. During this time I have asked friends that are also long time Gnome users if the primary screen could be changed but none of them knew how to change it. I would say that the current behavior is far too invisible. A popup menu saying "Show Gnome shell controls on this window" would be far better. At least experienced users usually try to rigth click on things they want to change. The problem is that the sall bar at the top of the window icon is too small for people to realize that it is a separate item, or perhaps even notice that it is there
> "Primary display" means nothing to me. > "the display with the top bar" does > and that is what we try to represent in the settings panel. Just adding a little nuances here about the idea of a checkbox that says "Show the panel on this monitor", and two other reasons why I think it's not a better idea than a "Set as primary" button: - Show panel on this monitor could be confused with clone mode - It is not "just" the panel that gets shown on the primary monitor: the activities overview and all its features are shown there. - From what I can see in the current implementation in Fedora 15, windows present on secondary screens are not affected by workspaces (unless it's a bug?). So really, primary screens *means* primary screen. That's where the window interaction "primarily" occurs.
(In reply to comment #10) > I have used Gnome for several years, and up until I read this bug report I have > always turned off my laptop screen when connecting to a larger monitor just so > that the panel wouldn't end up on the small screen. During this time I have > asked friends that are also long time Gnome users if the primary screen could > be changed but none of them knew how to change it. This "I didn't know how to change it before" lark needs to stop. GNOME 3.0 is the first one with a display panel that allows changing the primary screen. Whether it's the right way or not is certainly up for debate, but why you didn't manage to find it before would be because it wasn't there.
Adding a checkbox would be crap, because it would be useless for the still prevalent use case of a single monitor (despite what people in this bug might think). The best thing I could come up with so far is to extend the "show a panel on primary screen" idea one step further. As Jean-François mentioned, the primary means more than just the panel, also means the activities view. We should be able to show the activities view in the preview display, and provide a more obvious way to move it (such as arrows that would switch it to a neighbouring display). Or we could just go with MacOS X's way and add text for it: http://snowleopardtips.net/wp-content/uploads/2009/09/change-primary-display.jpg
(In reply to comment #13) > Adding a checkbox would be crap, because it would be useless for the still > prevalent use case of a single monitor (despite what people in this bug might > think). You'd want to special-case the single screen scenario anyway, even in your idea below (so you don't have arrows that do nothing). > The best thing I could come up with so far is to extend the "show a panel on > primary screen" idea one step further. As Jean-François mentioned, the primary > means more than just the panel, also means the activities view. We should be > able to show the activities view in the preview display, and provide a more > obvious way to move it (such as arrows that would switch it to a neighbouring > display). That sounds reasonable. You could also have a four-way "move" arrow that is generally a cue for "this thing can be moved".
> Adding a checkbox would be crap, because it would be useless for the still > prevalent use case of a single monitor (despite what people in this bug might > think). Just don't show it in single-monitor setups, then ? The checkbox has the huge advantage that it is not only understandable, but also keynavigatable and accessible. > That sounds reasonable. You could also have a four-way "move" arrow that is > generally a cue for "this thing can be moved". We do show a different cursor on the top bar in the drag area. Maybe the four-way arrow would be clearer. What we should do too is to put a different tooltip there, if we want to keep the tooltips at all.
Created attachment 188749 [details] [review] patch
Created attachment 188750 [details] screenshot
Created attachment 188751 [details] and another
Obviously, "Primary monitor" needs a different label.
We used to have something like this. It is not a good solution for a number of reasons. The most obvious is that you can't really come up with a good label for it. Another is that it isn't a "setting" - it is normally automatically determined and doesn't really persist the way resolution does. We really want to be smart about the position of the primary. This means being dynamic and only considering changes as an override. This is very hard to do if you offer something that seems like a setting for it. There are other reasons too. I'm a little short on time today unfortunately. We should try to come up with a better solution for some of the problems like small target area, touch support. And better identify the situations where we get things wrong - rather than expecting the user to have to find this panel to "fix" things.
Isn't display properties a magic tool that can do strange things to the display that no other app can? Why not make the UI magical too. Float the top bar with white fuzz so people can tell they can move it. Shift the UI of the app to like a LG type view.
(In reply to comment #12) > (In reply to comment #10) > > I have used Gnome for several years, and up until I read this bug report I have > > always turned off my laptop screen when connecting to a larger monitor just so > > that the panel wouldn't end up on the small screen. During this time I have > > asked friends that are also long time Gnome users if the primary screen could > > be changed but none of them knew how to change it. > > This "I didn't know how to change it before" lark needs to stop. GNOME 3.0 is > the first one with a display panel that allows changing the primary screen. > Whether it's the right way or not is certainly up for debate, but why you > didn't manage to find it before would be because it wasn't there. I have to strongly disagree here. I had the same Problem for some time with Gnome2. It's not just the Panels (which also messed around when you drag them to another dosplay) but mainly the Problem that you coudln't (easily) controll where new opened windows are supposed to appear. I also talked to many Linux/Gnome users (on- and offline) but was never able to fix that Problem. As I now know Gnome3 is better that way, but it wasn't before this post: (In reply to comment #13) > Or we could just go with MacOS X's way and add text for it: > http://snowleopardtips.net/wp-content/uploads/2009/09/change-primary-display.jpg The first 12 Posts did not help! I agree that a check box wouldn't be pretty but that little, elegant text would be extremly helpfull, not bothering single-monitor-users and quite neat! Please consider it!
(In reply to comment #22) > (In reply to comment #12) > > (In reply to comment #10) > > > I have used Gnome for several years, and up until I read this bug report I have > > > always turned off my laptop screen when connecting to a larger monitor just so > > > that the panel wouldn't end up on the small screen. During this time I have > > > asked friends that are also long time Gnome users if the primary screen could > > > be changed but none of them knew how to change it. > > > > This "I didn't know how to change it before" lark needs to stop. GNOME 3.0 is > > the first one with a display panel that allows changing the primary screen. > > Whether it's the right way or not is certainly up for debate, but why you > > didn't manage to find it before would be because it wasn't there. > > I have to strongly disagree here. You disagree that it wasn't possible to set the primary screen pre-GNOME 3.0? In any case, your comment isn't helpful given Jon's comment in comment 20.
What i tried to say is that if it was possible to set a display to be the default location to open a window in Gnome 2 it was Not easy to find (i tried to solve that problem several times and never found someone who could tell me how to do it). So that was a problem pre-gnome3 and could become a Problem with gnome3, which could be easily solved with a Label like in the quoted comment. Because the Problem seems to be solved, it's just a matter of telling the Users (like me). P.S.: if you feel that my previous comment is not helping here please feel free to erase it. I did Not want to disturbe this disscussion, i just wanted to present the opinion of a long-time Gnome user whos biggest problem always was the one discussed here.
My first thought when reading this was basically comment 22 (the OSX-style add text to explain). While I agree doing the "most reasonable thing" is best. The computer can't possibly know if the monitor is to the left or right, so you need to go in this window to "override" (in Jon's term). I think the same reasoning should be used for the location for the top panel as it's completely a preference. It would be nice if it did persist as a setting based on the monitors connected. i.e. I want vga to be left of lvds and panel on vga when vga is projector xyz -as well as- I want vga to be above lvds and panel on lvds when vga is monitor abc.
(In reply to comment #20) > We used to have something like this. It is not a good solution for a number of > reasons. The most obvious is that you can't really come up with a good label > for it. I would use 'Main display', which is meaningful and can be understood in the current context. > Another is that it isn't a "setting" - it is normally automatically > determined and doesn't really persist the way resolution does. We really want > to be smart about the position of the primary. This means being dynamic and > only considering changes as an override. This is very hard to do if you offer > something that seems like a setting for it. There are other reasons too. I'm > a little short on time today unfortunately. We should try to come up with a > better solution for some of the problems like small target area, touch support. > And better identify the situations where we get things wrong - rather than > expecting the user to have to find this panel to "fix" things. I think it should persist whenever is possible (and it does). Overriding the options could be worse depending on each use case. Let's consider the following persona: Tom is a business man who use his laptop for everyday's work. - At work, Tom connects his laptop to a dock station, which is connected to 21" displays (side by side). His main display for work is the left one. - At home, Tom either uses his laptop sit in a cough or on a desktop. On the desktop, he connects his laptop to a display which is on top of everything else. He turns off the laptop display and works only with the external display. - Once a week, Tom gives business presentations to his team. In each case, he sets the main display his laptop and the presentation's display the projector. - From time to time, Tom visits a branch, where he has an office. In the office he has 2 20" displays, but no dock station. He connects either both display or one of them to his laptop. He turns off the laptop displays and set the Main display the left one (as in his main office). Overriding the setting, would make Tom's life painful. Tom should connect his laptop in either setup and it should just work. If the display (or projector) is new (unknown), then Tom might set it up.
Here's another idea that sprung to my mind just now: using a "non-hover" tooltip. Basically, a tooltip that does not depend on the mouse interaction, but rather on the software determining when it is best to show or hide it (like an infobar, but without the huge space usage). Basically, show this /--------------------------------------\ | Drag this panel from one monitor | | to another to set the main display. | ---\_________________ ___________________/-- | \/ | |===========================================| | | | | | | | | | | | Laptop screen 15" | | | | | --------------------------------------------- If the following conditions are met: 1) There is more than one screen shown and enabled 2) The user has not yet dragged the panel in this current app run Problem solved? :)
Should be addressed as part of the a new display panel design: https://live.gnome.org/Design/SystemSettings/Displays
*** Bug 696898 has been marked as a duplicate of this bug. ***
*** Bug 704106 has been marked as a duplicate of this bug. ***
The design Matthias mentioned has been implemented for 3.10 and includes a "Primary" option for each display.