Bug 532458 - [UI change request] Optimize git staging area view
Summary: [UI change request] Optimize git staging area view
Status: NEW
Alias: None
Product: EGit
Classification: Technology
Component: UI (show other bugs)
Version: unspecified   Edit
Hardware: PC Linux
: P3 enhancement with 1 vote (vote)
Target Milestone: ---   Edit
Assignee: Project Inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2018-03-14 12:11 EDT by Leo Ufimtsev CLA
Modified: 2018-12-11 03:41 EST (History)
6 users (show)

See Also:


Attachments
Staging area is bubbly. (111.22 KB, image/png)
2018-03-14 12:11 EDT, Leo Ufimtsev CLA
no flags Details
Buttons do not fold up (79.68 KB, image/png)
2018-03-14 15:04 EDT, Lucas Bullen CLA
no flags Details
Possible new title style from repo page (22.96 KB, image/png)
2018-03-14 15:04 EDT, Lucas Bullen CLA
no flags Details
Screenshot (20.24 KB, image/png)
2018-12-10 11:04 EST, Lars Vogel CLA
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Leo Ufimtsev CLA 2018-03-14 12:11:08 EDT
Created attachment 273127 [details]
Staging area is bubbly.

Something that's been bugging me for 3 years:

A lot of git-staging view is used by non-content items.
I.e, labels that describe content boxes like:
- repo name
- Unstaged changes label
- Staged Changes Label
- Commit message label.
- Empty space in various parts.

The problem is that if staged view is in a tab and uses 1/3 of the screen, you can't actually see much actual content. (files to be staged, commit message).
So each time I have to make the view bigger, meh.

Screen shot with suggestions attached.
Comment 1 Thomas Wolf CLA 2018-03-14 13:51:47 EDT
Some good ideas. There's an option to show unstaged/staged side-by-side (View menu->Column layout). Maybe that already improves the situation a little for you.

Let's go point-by-point:

1. Move title to head. I wouldn't know how. That "head" is an empty are the CTabFolder provides if it can't put the view's toolbar into the CTabFolder's tab area. If it can, this "head" area isn't even there. (At least on Mac. It looks like CTabFolder doesn't do that on Linux. So it's even platform-dependent.) Also, AFAIK there is no API to gain access to this "head" area and do something useful with it.

2. Vertical titles. Not sure that helps. Might get confusing with the buttons, and would need to be different depending on whether or not that "column layout" is active. When tree layout (View menu->Presentation) or compact tree layout is chosen, there are even two more buttons.

3. Shorter author/committer fields and place buttons right of them. I like that one.
Comment 2 Thomas Wolf CLA 2018-03-14 13:57:01 EDT
Or maybe moving the git staging view to the top right stack (usually shows Outline) helps for you.

Just noticed that in that case, point (3) above would be counter-productive, so that _also_ would have to be layout-dependent.
Comment 3 Leo Ufimtsev CLA 2018-03-14 13:58:03 EDT
(In reply to Thomas Wolf from comment #1)
> Some good ideas. There's an option to show unstaged/staged side-by-side
> (View menu->Column layout). Maybe that already improves the situation a
> little for you.

Column view is an improvement.

The screenshot mentioned the first couple ideas that came to mind.
There are a few other things that could maybe be improved, maybe reduce padding in some areas. Like some of the padding is maybe a bit excessive.
Comment 4 Lucas Bullen CLA 2018-03-14 15:04:29 EDT
Created attachment 273130 [details]
Buttons do not fold up

My collection of thought on the topic without going into the code:

Why don't the button fold up on the tab level like the way they do on all other views? (See image)

All of the buttons (+, --, amend, ...) can be put on tab level or the current button level if we can't figure out how to get them on the tab level.

The main title (or all titles if we can move the buttons) should be replaced with the same less styled title as history view (See image)

I like the dynamic choosing of author/committer and commit buttons stacking

We can optimize layout for different part sizes (stacking when this big, beside eachother when that big) so if we find a solution that fixes it in one scenario, we should not dismiss it because it won't work in another
Comment 5 Lucas Bullen CLA 2018-03-14 15:04:56 EDT
Created attachment 273131 [details]
Possible new title style from repo page
Comment 6 Thomas Wolf CLA 2018-03-14 18:19:53 EDT
(In reply to Lucas Bullen from comment #4)
> Why don't the button fold up on the tab level like the way they do on all
> other views? (See image)

On Mac, they do. On Linux they don't with GTK 3, but do with GTK 2:

* RHEL 7.3, GTK 3.22.10: CTabFolder doesn't move the view's toolbar to the right
  of the tabs in Staging View, but does so in History View (Git History)

* RHEL 7.3, GTK 2.24.31: works for both views.

* Ubuntu 16.04, GTK 3.18.9: doesn't work in either History or Staging View.

* Ubuntu 16.04, GTK 2.24.30: works for both views. 

All tests with Neon.3. So this bit looks like a GTK3 problem.

However, possibly related: bug 502111. See also bug 529405.
Comment 7 Thomas Wolf CLA 2018-03-14 18:21:58 EDT
(In reply to Lucas Bullen from comment #5)
> Created attachment 273131 [details]
> Possible new title style from repo page

That's from the History view. I hate it :-) It's the view "description".
Comment 8 Thomas Wolf CLA 2018-03-14 18:23:41 EDT
(In reply to Lucas Bullen from comment #4)
> All of the buttons (+, --, amend, ...) can be put on tab level or the
> current button level if we can't figure out how to get them on the tab level.

I don't like that. The +, ++, -, -- buttons should stay near the staged/unstaged viewers, and amend etc. should stay near the commit message text viewer.
Comment 9 Leo Ufimtsev CLA 2018-03-15 11:52:44 EDT
(In reply to Lucas Bullen from comment #5)
> Created attachment 273131 [details]
> Possible new title style from repo page

Me like that. It's more compact.

I usually drag files across, but I can see the use case for buttons.
Maybe just reduce the padding so there is just label/buttons instead of those dead pixels. Make the boarder padding smaller also (there are some large gaps between everything.

The specific details of the implementation can vary. Personally, I would just care for more space given to content and less space given to padding/empty space. Maybe use more icons & less text etc..
Comment 10 Eclipse Genie CLA 2018-03-25 19:24:16 EDT
New Gerrit change created: https://git.eclipse.org/r/120153
Comment 11 Eclipse Genie CLA 2018-03-26 07:25:54 EDT
Gerrit change https://git.eclipse.org/r/120153 was merged to [master].
Commit: http://git.eclipse.org/c/egit/egit.git/commit/?id=aab7bb39d5351fc1f59853005734d5a5523ce37e
Comment 12 Lars Vogel CLA 2018-12-10 11:04:00 EST
Created attachment 276890 [details]
Screenshot

If we move the repository text after the Unstaged Changes text we would save a lot of space. See screenshot.