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 732287 - Open button is confusing
Open button is confusing
Status: RESOLVED FIXED
Product: gedit
Classification: Applications
Component: general
3.13.x
Other Linux
: Normal normal
: ---
Assigned To: Gedit maintainers
Gedit maintainers
Depends on:
Blocks:
 
 
Reported: 2014-06-26 16:30 UTC by Allan Day
Modified: 2014-07-19 16:30 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
button and File-dialog popover to replace headerbar file controls (64.74 KB, patch)
2014-07-14 08:34 UTC, sébastien lafargue
none Details | Review
screenshot (55.98 KB, image/png)
2014-07-14 08:40 UTC, sébastien lafargue
  Details
gedit file popover (58.93 KB, patch)
2014-07-17 18:32 UTC, sébastien lafargue
none Details | Review
screenshot (197.45 KB, image/png)
2014-07-17 18:33 UTC, sébastien lafargue
  Details
horiz (19.22 KB, image/png)
2014-07-17 19:40 UTC, Paolo Borelli
  Details
gedit file popover row style (62.58 KB, image/png)
2014-07-17 22:55 UTC, sébastien lafargue
  Details
final screenshot (66.52 KB, image/png)
2014-07-18 22:27 UTC, sébastien lafargue
  Details
file dialog popover (60.72 KB, patch)
2014-07-19 11:10 UTC, sébastien lafargue
needs-work Details | Review
gedit-open-document-selector (64.91 KB, patch)
2014-07-19 16:30 UTC, sébastien lafargue
committed Details | Review

Description Allan Day 2014-06-26 16:30:07 UTC
During recent user testing on gedit, a number of users had difficulty finding the open file action. They tried to find the open option within the recent items drop down and, having inspected this, did not try to use the linked open button.

We don't have clear data on why these users behaved in this way, but they clearly expected to find open in the drop down, and for some reason weren't inclined to use the joined open button.

One potential solution would be to implement the kind of new tab screen that has been under discussion for a while, like the one in this mockup:

https://raw.githubusercontent.com/gnome-design-team/gnome-mockups/master/gedit/gedit-menus-v3.png

Another possible answer would be to combine the open button with the recent files dropdown, into a single popover:

[ Open V ]

File 1
File 2
File 3
File 4
File 5
---
Select File...
Comment 1 Robert Roth 2014-06-27 11:47:14 UTC
The welcome screen would be useful in scenarios when gedit is started with any documents open, but in case there's a file open, to open another file the user would still have to "find" the open button. Maybe draw some inspiration from browsers: having a new tab button instead of an open button might help:
* clicking the new tab button would open the welcome screen
* the welcome screen with links to recent files + new file and open file buttons (just like in the mockup) would replace the open dropdown (while having the same functionality with the same number of clicks - except for open, which user testing revealed to be hard to find) and the search (as in the mockup) would further enhance its usefulness. The only drawback is the increased mouse travel distance, but that can also be improved.
Comment 2 Mattias Eriksson 2014-06-27 12:29:33 UTC
I think the current button is good, since it saves you a click from the pop-over menu. However, I don't see why there also can be a "Select File..." option in the menu.
Comment 3 Jasper St. Pierre (not reading bugmail) 2014-06-27 13:00:58 UTC
(In reply to comment #0)
> During recent user testing on gedit, a number of users had difficulty finding
> the open file action. They tried to find the open option within the recent
> items drop down and, having inspected this, did not try to use the linked open
> button.

Perhaps they thought the "Open" button was a label for the gear menu, like "Open Menu"?
Comment 4 Michael Catanzaro 2014-06-27 15:42:29 UTC
Honestly, this is really disappointing/frustrating to learn. The Open button is really big.

I guess the lesson of this and Bug #732222 is that buttons in the header bar ought to have menu entries as well? But then that adds clutter to the menu.

(In reply to comment #3)
> Perhaps they thought the "Open" button was a label for the gear menu, like
> "Open Menu"?

You mean they might have thought it was a label for the arrow menu that lists recently used files? (The gear menu is on the opposite side of the header bar.) Evidently. Maybe linking text and image buttons is confusing if you haven't seen it before.

(In reply to comment #0)
> One potential solution would be to implement the kind of new tab screen that
> has been under discussion for a while, like the one in this mockup:

But that would make it even harder to find Open, since you would first have to click on New, which feels more like "New Document" than "New Tab." Even if it was clearly a New Tab button, as Robert suggests, it would be quite confusing that you need to press New Tab in order to get to Open.  (I really like that new tab page, just not as a replacement for a traditional Open action.)

> Another possible answer would be to combine the open button with the recent
> files dropdown, into a single popover:

This seems reasonable, though like Mattias noted, it adds one extra click.
Comment 5 Paolo Borelli 2014-06-27 21:17:54 UTC
(In reply to comment #0)
> During recent user testing on gedit.
> 

It's great to hear about this initiative!


> One potential solution would be to implement the kind of new tab screen that
> has been under discussion for a while, like the one in this mockup:
> 
> https://raw.githubusercontent.com/gnome-design-team/gnome-mockups/master/gedit/gedit-menus-v3.png
> 

As you know from past discussions, I am not so convinced about using the "new tab screen" thingie :)


> Another possible answer would be to combine the open button with the recent
> files dropdown, into a single popover:
> 
> [ Open V ]
> 
> File 1
> File 2
> File 3
> File 4
> File 5
> ---
> Select File...


Yes, this is much more like what I have in mind and I actually wanted to do it last cycle and run out of time.
To be more precise, I was thinking of a popover slightly more complex than just a menu: something along the line of

[ (doc symbolic icon v ]

_______________________
| New    |   Select... |
|----------------------|
|   [ entry to type ]  |
| recent 1             |
| recent 2             |
| recent 3             |
| recent 4             |
_______________________


Note: the above popover layout is just a quick ascii sketch and suggestions/changes/mockups are more than welcome. The notable differences with respect to your proposal are:
1) also have new in there
2) use a search entry + listbox for the recent files
Comment 6 Jim Hall 2014-07-02 20:12:37 UTC
>> Perhaps they thought the "Open" button was a label for the gear menu, like
>> "Open Menu"?
>
>You mean they might have thought it was a label for the arrow menu that lists
>recently used files? (The gear menu is on the opposite side of the header bar.)
>Evidently. Maybe linking text and image buttons is confusing if you haven't
>seen it before.

Hi. I'm the person who facilitated the usability tests. What I observed was users clicking on the "V" part of the "Open" button. These users were not clicking on the button per-se; they thought the "V" was the part of the button they should click on.

The "V" drop-down menu brings up a list of recently used files. But since each usability tester started with a fresh instance of GNOME, there were no recently-used files anyway.

Perhaps if the drop-down menu could include "open a new file" (similar to Paolo's ascii sketch) that would resolve things?
Comment 7 sébastien lafargue 2014-07-14 08:34:22 UTC
Created attachment 280630 [details] [review]
button and File-dialog popover to replace headerbar file controls
Comment 8 sébastien lafargue 2014-07-14 08:40:17 UTC
Created attachment 280631 [details]
screenshot
Comment 9 Paolo Borelli 2014-07-14 08:45:39 UTC
Thanks for prototyping this. Allan, Jim, what do you think?

Here are my doubts after seeing this live:

1) I fear one would expect to select a file in the list and then click on the "open" button expecting to open the file... can this be avoided by better wording on the button? Or maybe "select other..." should be a special item always present in the list?

2) should the button on the header bar have the down arrow or not? the gear menu does not have it

3) should the button on the header bar use doc-new icon or the new-tab icon
Comment 10 sébastien lafargue 2014-07-14 09:04:09 UTC
for 1) 

Using pointer, clicking an item immediately loads the corresponding file ( no double-click ) so no 'open button' confusion in this case.

Using keyboard, you must select an item and hit enter. So in this case you can be confused by going to the 'open button'. isn't an extreme case ?
Comment 11 Allan Day 2014-07-16 11:46:26 UTC
I've tried the popover patch, and it's quite cool. There are a few UI issues there that I can see, but I think we can make it work - I'd be happy to look at the design.

Before we go down that road though, it's maybe worth reflecting on the relative merits of using a popover for this, versus a new tab screen [1].

Popover advantages:

 * It's a less severe visual transition when you want to open/start a document.
 * Probably works better on a large screen.

New tab view advantages:

 * Better first run experience when launching gedit directly. It is particularly convenient to see recent files in this scenario.
 * Including a new document action makes more sense here.

[1] https://raw.githubusercontent.com/gnome-design-team/gnome-mockups/master/gedit/gedit-menus-v3.png
Comment 12 Allan Day 2014-07-16 16:23:41 UTC
(In reply to comment #11)
...
> Before we go down that road though, it's maybe worth reflecting on the relative
> merits of using a popover for this, versus a new tab screen [1].
...

Paolo and I discussed this on IRC earlier. He made some good points:

 - it is weird when you open many files, e.g. new tab -> file chooser -> select many
 - it gets in the way when I just want to ctrl+N and takes some notes
 - opening an already open file switches to that tab, which would be weird on the new tab

Here's a mockup for how the popover could be improved:

https://raw.githubusercontent.com/gnome-design-team/gnome-mockups/master/gedit/png/document-popover.png

It would be good to give it a static height, so that searching doesn't make the popover change shape.
Comment 13 sébastien lafargue 2014-07-17 18:32:28 UTC
Created attachment 281039 [details] [review]
gedit file popover
Comment 14 sébastien lafargue 2014-07-17 18:33:10 UTC
Created attachment 281040 [details]
screenshot
Comment 15 Robert Roth 2014-07-17 18:41:57 UTC
Could extensions have an api to extend this popover somehow? For me the popover seems a bit too cluttered, I would like some more spacing and/or padding, and maybe the files should also show part of the path of the file in a second row for each result. My usecase is: I often do work with similarly-named files, or even files with the same name (e.g. multiple copies of the same project), and I always have to guess from the recent list which file I want to edit (the one on the correct path).
Comment 16 sébastien lafargue 2014-07-17 19:14:29 UTC
Hi Robert,

Don't pay too much attention to rows style, it's just a matter of css to change it, we just wait for green light from design team before refinement.

For the path part, this patch have tooltips, putting this in rows mean very long row, not sure it' the way to go.

Allan, paolo, any more changes ?
Comment 17 Paolo Borelli 2014-07-17 19:40:13 UTC
Created attachment 281042 [details]
horiz

I was thinking of this alternative. It wastes a bit of space but I do not think it is a big problem and I like that the buttons are near the button pressed on the headerbar and I think the position makes more clear that the "select" button is not the confirmation button for the the list selection.


The mockup is just a collage of Allan's, due to my limited gimp skills :)


Ideall I would make the list even wider.


I would also like to experiment with larger rows in the list that have

---------------------------
filename (in black)
/path/to/filename (in gray)
---------------------------
Comment 18 Robert Roth 2014-07-17 19:52:13 UTC
(In reply to comment #17)
> Created an attachment (id=281042) [details]
> horiz
> 
> I was thinking of this alternative. It wastes a bit of space but I do not think
> it is a big problem and I like that the buttons are near the button pressed on
> the headerbar and I think the position makes more clear that the "select"
> button is not the confirmation button for the the list selection.
> 
> 
> The mockup is just a collage of Allan's, due to my limited gimp skills :)
> 
> 
> Ideall I would make the list even wider.
> 
> 
> I would also like to experiment with larger rows in the list that have
> 
> ---------------------------
> filename (in black)
> /path/to/filename (in gray)
> ---------------------------
That's what I was thinking of, and with your layout it might really work. I agree with slaf that paths might get long, but I don't think we have to show the full path, the last three path segments should be enough for identifying the file.
Comment 19 sébastien lafargue 2014-07-17 22:55:11 UTC
Created attachment 281049 [details]
gedit file popover row style
Comment 20 Robert Roth 2014-07-18 06:45:31 UTC
(In reply to comment #19)
> Created an attachment (id=281049) [details]
> gedit file popover row style

I love that, that's fairly good. /home/USER is usually redundant, Maybe doing the same thing as nautilus in the locationbar (/home/USER replaced with a house icon or ~) would result in shorter urls.
Comment 21 Paolo Borelli 2014-07-18 07:52:49 UTC
(In reply to comment #20)
> /home/USER is usually redundant, Maybe doing
> the same thing as nautilus in the locationbar (/home/USER replaced with a house
> icon or ~) would result in shorter urls.


slaf: we already have an utility for that that's used for the title and tab tooltips
Comment 22 sébastien lafargue 2014-07-18 08:27:25 UTC
I need to extract the scheme part of the uri for non-local files, show it in another color i think, and also remove the file part from the path name.
Comment 23 Allan Day 2014-07-18 11:35:08 UTC
(In reply to comment #17)
> Created an attachment (id=281042) [details]
> horiz
> 
> I was thinking of this alternative. It wastes a bit of space but I do not think
> it is a big problem and I like that the buttons are near the button pressed on
> the headerbar and I think the position makes more clear that the "select"
> button is not the confirmation button for the the list selection.
...

I'm not a fan of having a horizontal layout like this. Visually it's not great with all that space, but more than that, it's not as convenient having to do a horizontal movement to get to the list.

If you think that the open and new buttons are more important, or will be more commonly used, it's a simple matter to move them to the top of the popover.
Comment 24 Allan Day 2014-07-18 11:38:05 UTC
(In reply to comment #16)
> Hi Robert,
> 
> Don't pay too much attention to rows style, it's just a matter of css to change
> it, we just wait for green light from design team before refinement.
> 
> For the path part, this patch have tooltips, putting this in rows mean very
> long row, not sure it' the way to go.
> 
> Allan, paolo, any more changes ?

I definitely wouldn't include the path in a tooltip - they're tricky and slow to access that way, and will be someone difficult to parse.

Adding each file's directory to the list is an option, although I am a little nervous about adding a lot of detail there - it could become quite noisy/information-dense, which would make it more work to use.
Comment 25 Allan Day 2014-07-18 16:39:28 UTC
After quite a bit of back on forth on #gnome-design, we've agreed on the following design:

https://raw.githubusercontent.com/gnome-design-team/gnome-mockups/master/gedit/png/document-popover.png
Comment 26 Michael Catanzaro 2014-07-18 17:15:04 UTC
Yes, that's perfect -- the separate New and Open buttons are important since without those, it'd be even more difficult to find how to open a file.
Comment 27 sébastien lafargue 2014-07-18 22:27:45 UTC
Created attachment 281154 [details]
final screenshot

For the code it's done but it need a little clean up so tomorrow.
Comment 28 Michael Catanzaro 2014-07-19 01:47:07 UTC
Be sure to use the right ellipses character: … rather than ...

https://wiki.gnome.org/Design/HIG/Typography
Comment 29 sébastien lafargue 2014-07-19 11:10:05 UTC
Created attachment 281173 [details] [review]
file dialog popover
Comment 30 sébastien lafargue 2014-07-19 11:23:09 UTC
And thanks michael for showing me the way of proper ellipsis character.
Comment 31 Paolo Borelli 2014-07-19 12:08:38 UTC
Review of attachment 281173 [details] [review]:

::: gedit/Makefile.am
@@ -104,1 @@
 	gedit/gedit-file-chooser-dialog.h	\

I do not like the naming:

1) it is not a dialog
2) I prefer to talk about document instead of file
3) it does not say it is for *opening* stuff

(and this also applies to var names etc in the other parts of the patch)

gedit-open-document-popover?
gedit-open-document-selector?

other suggestions?

::: gedit/gedit-file-dialog.c
@@ +1,2 @@
+/*
+ * gedit-highlight-mode-selector.c

cut & paste error :-)

@@ +64,3 @@
+/* Properties */
+enum {
+	GTK_RECENT_CHOOSER_PROP_FIRST = 0x3000,

why this offset? if there is a valid reason it is surely worth a comment in the code

@@ +346,3 @@
+
+	/* these we own */
+	if (filter_info.applications) g_strfreev ((gchar **) filter_info.applications);

please no if in a single line

@@ +353,3 @@
+
+static GList *
+_gtk_recent_chooser_get_items (GtkRecentChooser  *chooser,

no need for _ prefix if it is static

@@ +390,3 @@
+		gboolean remove_item = FALSE;
+
+		if (filter && get_is_recent_filtered (filter, info)) remove_item = TRUE;

carriage returns are for free this summer

::: gedit/gedit-window.c
@@ +1822,3 @@
 	GeditWindow *window = GEDIT_WINDOW (data);
 
+	gboolean gear_menu_state =

let's split var declaration and assignment, especially since lines are so long

@@ +2437,3 @@
 		gtk_revealer_set_reveal_child (GTK_REVEALER (window->priv->fullscreen_controls), FALSE);
 	}
 }

missing empty line

@@ +2943,3 @@
 
+	/* We want the 'New' buttons to have the same height as other headerbar buttons
+	 * so we keep image-button class in .ui file and remove text-button */

I do not think this hack is necessary, if they do not have the same height, let's bug Lapo to fix adwaita

::: gedit/gedit-window.ui
@@ +35,3 @@
             </style>
             <child>
+              <object class="GtkButton" id="file_new_button">

simply new_button (I would not care, but since the name is used for the var in the template it matters)

@@ -41,1 +46,1 @@
                 <style>

In the mockups this was a text-button with "New"

@@ +50,3 @@
             </child>
             <child>
+              <object class="GtkMenuButton" id="file_open_button">

simply open_button

@@ -82,2 +57,2 @@
                 <style>
                   <class name="image-button"/>

text-button
Comment 32 sébastien lafargue 2014-07-19 16:30:12 UTC
Created attachment 281190 [details] [review]
gedit-open-document-selector

commited as d4e498b