New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Context Menu Improvements #113

clounie opened this Issue Oct 2, 2017 · 6 comments


None yet
5 participants

clounie commented Oct 2, 2017

So I was looking at the context menu earlier:


And - there is a lot there. I don't think that is a bad thing, either...but I think there are a few ways it could be made better:
A. Reduce number of sections
B. Remove (one) unnecessary item
C. Add user cues

A. Reduce number of sections

Action: move three items to cut the number of sections in half
If you move a couple items, you get sections are a pretty clean set of categories:

  • Branch (move Create New Branch/Tag here)
  • Merge
  • Commit
  • Misc (move Git Flow here)

Four sections is much easier to skim through than the current seven (!)

B. Remove unnecessary item

Action: Remove the Push 'branch' to origin... menu item
To push a branch to origin we already have two different ways:

  1. Click the 'Push' button
  2. Right click the branch in the menu on the left side

Do we really need an option in the context menu of commits as well?

C. Add user cues

Action: Add cues to help the user find things
On the left side of the context menu, I think it could use either:
a) Bold, all-caps, vertical text per section (MERGE, COMMIT, MISC)
b) Icons for the different actions

As a quick little queue so the user doesn't get the chance to think "Don't make me think". Text would probably be less busy..

Thanks for taking the time to read.


@clounie clounie changed the title from Context Menu Discussion to Context Menu Improvements Oct 2, 2017


This comment has been minimized.

nebhale commented Oct 3, 2017

I’ll chime in on some kind of simplification and this suggestion doesn’t strike me as problematic. That being said, I’d support some re-organization regardless of the end result as it seems like I have to spend a lot more concentrated time finding what I want in that menu than I think I should.


This comment has been minimized.


DanPristupov commented Oct 3, 2017

@clounie you did a tremendous work, thank you very much! I absolutely agree. The context menu must be reworked and cleaned up. I'm going to create a mockup and post it there.

Right now I'm thinking of adding drag'n'drop support which should allow to make merge/RB/interactiveRB/cherry-pick/revert without calling context menu (#82).


This comment has been minimized.

Turbo87 commented Dec 15, 2017

I agree that the current context menu is quite cluttered. I think putting icons in there for the most common operations would help quite a lot!

One other idea I had would be to merge the "Rebase" and "Interactive Rebase" items and display both options on the same line. Something like:

[Rebase Icon] Rebase ...                          | [Interactive Icon]

but I guess this will probably require a custom context menu implementation, right? so maybe not worth it after all 🤔


This comment has been minimized.


DanPristupov commented Dec 17, 2017


  1. Apple design guidelines says:

Minimize the use of icons. Use icons in menus only when they add significant value. A menu that includes too many icons appears cluttered and is hard to read.

I don't think I'm able to draw an icon to represent something the user can associate with specific functionality. For example recognizable icons for: rebase, cherry-pick and revert.

  1. displaying two items on a row is not acceptable, because it's not the way how other macOS menus look and behave.

This comment has been minimized.

tflo commented Dec 17, 2017

Please, no icons in the contextual menu (or any other menu).


This comment has been minimized.


DanPristupov commented Aug 31, 2018

Here's how the context menu is going to look like in the next update:

  • All the branch related actions (checkout, rename, delete, push, merge) go to a submenu.

  • Rebase, Interactive Rebase and Reset are in the same group (since they all move the tip of the branch).

  • Git Flow will be visible only if it's initialized in the repository.

  • Copy Commit Info will be hidden by default and appear on alt/option press.

2018-08-31 at 15 51

Some words are quite repetitive (like "rebase to here", "commit"), but I think that is fine.

@DanPristupov DanPristupov added this to the 1.0.70 milestone Sep 18, 2018

@DanPristupov DanPristupov added the done label Oct 11, 2018

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment