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 755185 - Have tooltips for buttons in the user interface
Have tooltips for buttons in the user interface
Status: RESOLVED FIXED
Product: gnome-builder
Classification: Other
Component: general
3.17.x
Other Linux
: Normal enhancement
: ---
Assigned To: GNOME Builder Maintainers
GNOME Builder Maintainers
Depends on:
Blocks:
 
 
Reported: 2015-09-17 21:05 UTC by Bastian Ilsø
Modified: 2016-02-23 10:54 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Tooltips for buttons (2.17 KB, patch)
2015-12-25 11:36 UTC, rishabh
none Details | Review
Tooltips for buttons (2.36 KB, patch)
2015-12-26 13:46 UTC, rishabh
none Details | Review
Tooltips for buttons (2.02 KB, patch)
2015-12-27 18:39 UTC, rishabh
needs-work Details | Review
gnome-builder: Set tooltips on header bar buttons (4.34 KB, patch)
2016-02-13 15:53 UTC, Adrian Zatreanu
committed Details | Review
gnome-builder: Tooltips for editor view (789.15 KB, patch)
2016-02-16 11:34 UTC, Adrian Zatreanu
rejected Details | Review
gnome-builder: Tooltips for the greeter view icons (3.39 KB, patch)
2016-02-21 10:15 UTC, Adrian Zatreanu
none Details | Review
gnome-builder: Tooltips for the greeter view icons (2.92 KB, patch)
2016-02-22 20:03 UTC, Adrian Zatreanu
committed Details | Review

Description Bastian Ilsø 2015-09-17 21:05:13 UTC
The keyboard shortcut overview is awesome, but it would be a nice little addition to have a tooltip showing when you hover over a button, telling you what the button does and the shortcut to activate it.


This could be a good bug for any newcomer to work on btw. :)
Comment 1 rishabh 2015-12-25 11:36:52 UTC
Created attachment 317873 [details] [review]
Tooltips for buttons

Added tooltips for left pane, bottom pane, right pane and menu.
Comment 2 Piotr Drąg 2015-12-25 16:10:30 UTC
<property name="tooltip-text"> tags should have the translatable="yes" attribute (i.e. <property name="tooltip-text" translatable="yes">).
Comment 3 rishabh 2015-12-26 13:46:04 UTC
Created attachment 317891 [details] [review]
Tooltips for buttons

Added translatable property.
Comment 4 sébastien lafargue 2015-12-26 18:13:59 UTC
Hi,

- do one patch for all the changes

- the subject line is wrong (patch_1_755185, patch_2_755185):
  "Set tooltips on header bar buttons" is more informative

- no need to set 'has-tooltip', it's set automatically :
  
https://developer.gnome.org/gtk3/unstable/GtkWidget.html#GtkWidget--tooltip-text
Comment 5 rishabh 2015-12-27 18:39:20 UTC
Created attachment 317932 [details] [review]
Tooltips for buttons

Removed 'has-tooltip' property and changed subject :)
Comment 6 Adrian Zatreanu 2016-02-13 15:53:28 UTC
Created attachment 321074 [details] [review]
gnome-builder: Set tooltips on header bar buttons

It is an enhancement of the gnome-builder app which intends to inform the users by adding tooltips to buttons.

Now the users will know exactly what each button does before clicking it.

To fix this i edited some files and added the tooltip-text with translatable property on : The search bar, the menu button, the toggle button for left, bottom, right panels and also the Search bar on the Preferences perspective.
Comment 7 Christian Hergert 2016-02-15 22:08:02 UTC
LGTM, thanks!

Longer term, we should really come up with a preferred format for
how to show shortcuts with the tooltip text. This isn't bad, but
I think we can come up with something that looks similar to the
shortcuts dialog.

Attachment 321074 [details] pushed as 3b87dea - gnome-builder: Set tooltips on header bar buttons
Comment 8 Adrian Zatreanu 2016-02-16 11:34:28 UTC
Created attachment 321362 [details] [review]
gnome-builder: Tooltips for editor view

I have been further working to add tooltips for the UI on the editor view.
The objects i have added tooltips to are: The programming language, the name of the file you are editing, the close button for current file and do "Go To Line" button. I have been doing this to enhance the user experience for people that are using this application.

In order to do this, i have edited the files data/ui/ide-editor-view.ui and data/ui/ide-layout-tab.ui

https://bugzilla.gnome.org/show_bug.cgi?id=755185

This was happening on a second call to Build, or other commands.
Instead, we now just destroy the view and re-create it.

This was originally notify::dirty, and then refactored to changed.
Once again the lack of proper typing of callbacks casts its ugly shadow.



We can just do this with CSS styling, so drop the GtkSeparator widget.

This should match the UI a bit better

As found by the new gettext plugin.



We had an issue where "gmake", despite getting SIGKILL, would not cause
the build process to exit. This seems to be caused by the descendent
processes not dying with the parent.

To allow us to kill all of the processes, we first create a new session
group with setsid() in our child setup function. If the process should
be cancelled (via g_cancellable_cancel()), then we send SIGKILL to all
members of the session group with kill(-pid, SIGKILL). Specifying a
negated(pid) indicates delivery to all members of the group.

We probably need to verify that this works on FreeBSD, but it seems
plausible that will.

https://bugzilla.gnome.org/show_bug.cgi?id=760874

This will allow us to cancel the launched processes when the cancellable
is triggered.


I'm not a fan of these shortcuts here (builder is the only app to do this, it
does it for arbitrary shortcuts, and we have a shortcuts window), but
correcting the capitalization is the low-hanging fruit I can safely pick.





It is an enhancement of the gnome-builder app which intends to inform the users by adding tooltips to buttons.

Now the users will know exactly what each button does before clicking it.

To fix this i edited some files and added the tooltip-text with translatable property on : The search bar, the menu button, the toggle button for left, bottom, right panels and also the Search bar on the Preferences perspective.

https://bugzilla.gnome.org/show_bug.cgi?id=755185

It looks like we were swallowing the trialing ' when tracking changes in
the current `make' directory. This looks for a suffix when parsing
directory paths and chomps the trailing '.

https://bugzilla.gnome.org/show_bug.cgi?id=761451

GCC and clang supposedly both hoist this out automatically, so no need
to be clever to get compile-time sizes.







This plugin performs syntax checks on translatable strings, using the
--check option of xgettext:
http://www.gnu.org/software/gettext/manual/html_node/xgettext-Invocation.html#index-_002d_002dcheck_002c-xgettext-option

It is helpful to keep the messages consistent with the Unicode character
usage guidelines:
https://wiki.gnome.org/Initiatives/GnomeGoals/UnicodeUsage

https://bugzilla.gnome.org/show_bug.cgi?id=762062




The .buildconfig file is used by Builder to determine how to bootstrap
and build a project.

This adds a new perspective, the build configuration perspective, to the
workbench. Using this perspective you can create build configurations
and tweak existing ones.

The build panel now allows selecting a configuration.

We still have plenty to do, but this gets things started for an
IdeRuntime implementation.

Some things that still need to be plumbed include how we do build-finish
as well as translating paths for include files (to provide during clang
operations).






We need the ability for runtimes to tweak the process launching state.
Since we can't extend GSubprocessLauncher, just use our own that does
the required machinery.





This should start being used to notify of errors and warnings for the
context. This will allow us to show messages later on in the UI.

Add IdeRuntime, which contains the necessary machinery to perform
commands inside of a runtime. Such examples of a runtime might be
jhbuild, xdg-app, or the host system.



IdeConfiguration wraps all the important information required to do a
build. This means, runtime, device, environment variables, and possibly
more as needed.


Add a reusable component to edit IdeEnvironments.

IdeEnvironment is a GListModel to manage environment variables. It seems
a bit heavy handed for a glorified array of key=value, but it vastly
simplifies the environment editor case.







you can now use ide_preference_remove_id
with the id you get at preferences widgets creation
to remove them from the prefs ( most of the time,
during unload )
Comment 9 Christian Hergert 2016-02-16 18:23:06 UTC
(In reply to Adrian Zatreanu from comment #8)
> Created attachment 321362 [details] [review] [review]
> gnome-builder: Tooltips for editor view
> 
> I have been further working to add tooltips for the UI on the editor view.
> The objects i have added tooltips to are: The programming language, the name
> of the file you are editing, the close button for current file and do "Go To
> Line" button. I have been doing this to enhance the user experience for
> people that are using this application.


It looks like something very wrong happened during your rebase. The patch is ... not quite right :)
Comment 10 Adrian Zatreanu 2016-02-16 18:53:24 UTC
Oh i can see, thats my bad. I will try resending them again tomorrow, i have worked on the greeter view and the editor view as well :) sorry for the mess !
Comment 11 Adrian Zatreanu 2016-02-21 10:15:46 UTC
Created attachment 321768 [details] [review]
gnome-builder: Tooltips for the greeter view icons

I have created this patch to enhance the user experience on this application, on the greeter view. I have added tooltips to the "New project, Search through projects, Select projects, the search entry bar, the checkbox where you choose projects and the cancel searching button". The property is also translatable.
Comment 12 Christian Hergert 2016-02-22 00:16:07 UTC
Review of attachment 321768 [details] [review]:

Some comments added. Would love some feedback from our translator/a11y contributors.

::: data/ui/ide-greeter-perspective.ui
@@ -15,2 +15,3 @@
             <child internal-child="entry">
               <object class="GtkSearchEntry" id="search_entry">
+              <property name="tooltip-text" translatable="yes">Search through existing projects</property>

I don't think we need tooltip text for this, at least I don't see it used in other projects.

@@ -225,2 +227,3 @@
     <child>
       <object class="GtkToggleButton" id="search_button">
+        <property name="tooltip-text" translatable="yes">Search through existing projects</property>

Lets shorten this a bit. In gnome-documents, they just use "Search". I think we can improve that a bit with something like:

 "Search for projects"

Interestingly, we could add search later on to find projects that are on GNOMEs git servers.

@@ -243,2 +246,3 @@
     <child>
       <object class="GtkToggleButton" id="selection_button">
+        <property name="tooltip-text" translatable="yes">Select from existing projects</property>

We need to be more specific about what the "object selection" is for. Currently it is for removing existing projects (although that might expand into something more, later on).

How about something like:

 "Select projects for removal"

@@ -262,2 +266,3 @@
     <child>
       <object class="GtkButton" id="cancel_button">
+        <property name="tooltip-text" translatable="yes">Cancel searching through existing projects</property>

Let's avoid the use of "cancel", since it doesn't imply what is being changed. How about something like:

 "Return to project selection"

::: data/ui/ide-greeter-project-row.ui
@@ -9,2 +9,3 @@
         <child>
           <object class="GtkCheckButton" id="checkbox">
+          <property name="tooltip-text" translatable="yes">Choose this project</property>

Indentation is wrong, and the string is not clear about what is being done. What does choose mean?

In this case, we probably want something more like:

  "Select to open project in Builder"
Comment 13 Adrian Zatreanu 2016-02-22 20:03:52 UTC
Created attachment 321890 [details] [review]
gnome-builder: Tooltips for the greeter view icons

I have created this patch to enhance the user experience on this application, on the greeter view. I have added tooltips to the "New project, Search through projects, Select projects, the checkbox where you choose projects and the cancel searching button". The property is also translatable.
Now the patch is updated with more professional and adequated tooltips.
Comment 14 Christian Hergert 2016-02-22 20:34:13 UTC
Comment on attachment 321890 [details] [review]
gnome-builder: Tooltips for the greeter view icons

Attachment 321890 [details] pushed as 57f69c4 - gnome-builder: Tooltips for the greeter view icons
Comment 15 Alexandre Franke 2016-02-23 10:51:49 UTC
Review of attachment 317932 [details] [review]:

::: data/ui/gb-workbench.ui
@@ +18,3 @@
         <child>
           <object class="GtkMenuButton" id="gear_menu_button">
+            <property name="tooltip-text" translatable="yes">Menu</property>

That seems rather pointless. Can you come up with a better explanation of what purpose this serves?

@@ +46,3 @@
                 <property name="action-name">workbench.show-left-pane</property>
                 <property name="focus-on-click">false</property>
+                <property name="tooltip-text" translatable="yes">Left Pane</property>

For those, you probably want to describe the action triggered rather than the object link to them. "Trigger Left Pane" and so on…
Comment 16 Alexandre Franke 2016-02-23 10:54:48 UTC
Review of attachment 321362 [details] [review]:

It seems you attached the wrong patch.