Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 358270 - [client] git commands need tooltips
Summary: [client] git commands need tooltips
Status: RESOLVED FIXED
Alias: None
Product: Orion
Classification: ECD
Component: Git (show other bugs)
Version: unspecified   Edit
Hardware: PC Windows 7
: P3 normal (vote)
Target Milestone: 0.3 RC1   Edit
Assignee: Szymon Brandys CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: 359975
  Show dependency tree
 
Reported: 2011-09-20 12:22 EDT by Susan McCourt CLA
Modified: 2011-10-06 13:59 EDT (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Susan McCourt CLA 2011-09-20 12:22:13 EDT
in bug 358162 I added support in the command framework for showing the command.tooltip property in a hover when a text command is used.

I think the git commands could really benefit from tooltips.
For example, I wasn't sure of the difference between "Push All" and "Force Push All"

If no tooltip is provided, we will use the command name as the tooltip, so it's worthwhile to come up with a brief tooltip for each command to avoid the repetition of the command name.

When commands are rendered as icons, the name will be used as the tooltip.  (Perhaps we will revisit this decision, but if every command defines a name and tooltip for now, we'll be set to evolve this as needed).

See bug 358162 for further detail.
Comment 1 Susan McCourt CLA 2011-09-29 13:59:34 EDT
Can we get rid of the use of "Open" in the link commands?

Open Git Log -> Git Log
Open Git Status -> Git Status

This helps save real estate.
Open implies some special behavior like "open in new tab" but it's just a link
Comment 2 Szymon Brandys CLA 2011-10-05 05:59:03 EDT
Let's start from Git Clones page. These are tooltips I'm going to add there:

- Clone Repository "Clone an existing Git repository to the workspace"
- Init Repository "Create a new Git repository in the workspace"
- New Remote "Add a new remote to the repository"
- Remove (Remote) "Remove the remote from the repository"
- New Branch "Add a new local branch to the repository"
- Remove (Branch) "Remove the local branch from the repository"
- Git Log "Open the log for the repository/branch"
- Git Status "Open the status for the repository"
- Show in Navigator "Show the repository folder in the file navigator"

- Push "Update the remote branch using content from your active branch"
- Checkout "Make the branch or corresponding local branch active"
- Rebase "Rebase the branch using your active branch"
- Merge "Merge the content from the branch to your active branch"
- Fetch "Update the remote tracking branch using the content from the remote"
- Reset (Index) "Reset the state of your active branch, index and working directory to the state of the selected branch"

Git Log:
- Tag "Create a tag for the commit"
- Cherry-pick "Apply the change introduced by the commit to your active branch"
- Push All "Update the remote branch using content from your active branch"
- Force Push All "Override the remote branch using the content from your active branch. Be careful! You might lose history."
- Switch to remote "Switch to the corresponding remote tracking branch"
- Fetch "Update the remote tracking branch using the content from the remote"
- Force Fetch "Override the remote tracking branch using the content from the remote"
- Merge "Merge the content from the branch to your active branch"
- Switch to Active Local "Switch to the local active branch"

Git Status:
- Reset "Reset the state of the index and working directory to the state your active branch "
- Stage/Stage selected "Add the file content to the index"
- Checkout "Reset the file in the index and working tree to the state in your active branch"
- Side by side compare "Show the side-by-side compare for the change"
- Unstage "Reset the file in the index to the state in your active branch. The state in the working directory remains untouched."
- Commit "Record changes from the index in your active branch"

Moreover the message in the "Reset" dialog should be updated. It says "The content of the working directory will be reset to the content on the index."
Since we do hard reset there, it should say "The content of the working directory and index will be reset to the content of your active branch."
Comment 3 Szymon Brandys CLA 2011-10-05 06:37:46 EDT
Tomek suggested some changes.

Git Clone:
- Checkout "Make the branch or corresponding local branch active. If the remote tracking branch does not have a corresponding local branch, the local branch will be created first.
- Reset "Reset your active branch to the state of the selected branch. Remove all staged and unstaged changes."

Git Status:
- Reset "Remove all staged and unstaged changes."
- Stage "Stage the selected changes"
- Checkout "Remove all unstaged changes."
- Side by side compare "Show the side-by-side compare. For unstaged files shows changes to stage, for staged files changes to commit."
- Unstage "Unstage the selected changes"
- Commit "Commit staged changes to your active branch"

Tomek, you also suggested a change for Rebase. Could you add it here?
Comment 4 Tomasz Zarna CLA 2011-10-05 06:44:29 EDT
(In reply to comment #3)
> Tomek, you also suggested a change for Rebase. Could you add it here?

"Rewind commits from the active branch and replay them on top of the selected branch."
Comment 5 Szymon Brandys CLA 2011-10-05 08:52:35 EDT
(In reply to comment #0)
> in bug 358162 I added support in the command framework for showing the
> command.tooltip property in a hover when a text command is used.
> 
> I think the git commands could really benefit from tooltips.
> For example, I wasn't sure of the difference between "Push All" and "Force Push
> All"

I added these tooltips however the benefit is minimal because most of our commands are images and because of Bug 359974. If we showed tooltips for image commands and for commands in 'More', it would be good.
Comment 6 Susan McCourt CLA 2011-10-05 12:06:08 EDT
(In reply to comment #5)
> If we showed tooltips for image
> commands and for commands in 'More', it would be good.

Agree, some of the most complex commands to explain are the ones in menus.  See bug 358296.

I find some of these tooltips to be quite long, we should not rely on multiple sentences.  Warnings like "watch out, you could lose work" should probably be in some prompt rather than in the tooltip.

These tooltips are also using the word "workspace" which we've avoided.  Do you want me to take a pass at some rewording/shortening?
Comment 7 Susan McCourt CLA 2011-10-06 11:36:12 EDT
I was in the commands yesterday while updating them to use image sprites.  I got rid of the "workspace" wording.  For the rest I'll see how they look and possibly shorten unless I hear an objection here.
Comment 8 Szymon Brandys CLA 2011-10-06 12:04:55 EDT
(In reply to comment #7)
> I was in the commands yesterday while updating them to use image sprites.  I
> got rid of the "workspace" wording.  For the rest I'll see how they look and
> possibly shorten unless I hear an objection here.

Thanks Susan. I wonder if we could use multi-line tooltips?
Comment 9 Susan McCourt CLA 2011-10-06 13:59:34 EDT
(In reply to comment #8)
> (In reply to comment #7)
> > I was in the commands yesterday while updating them to use image sprites.  I
> > got rid of the "workspace" wording.  For the rest I'll see how they look and
> > possibly shorten unless I hear an objection here.
> 
> Thanks Susan. I wonder if we could use multi-line tooltips?

I wasn't really worried about presentation so much as user overload.
Especially now that we show them on images.  I'm used to getting one word, or maybe a few, that tell me what this icon means.  If I instead get several sentences with warnings, it's too much info.  That info seems more like context sensitive help, worthy of a different gesture.