gitextensions / gitextensions

Git Extensions is a standalone UI tool for managing git repositories. It also integrates with Windows Explorer and Microsoft Visual Studio (2015/2017/2019).
https://gitextensions.github.io/
Other
7.8k stars 2.09k forks source link

Remove support for RevisionGrid layouts #5026

Closed drewnoakes closed 6 years ago

drewnoakes commented 6 years ago

The RevisionGrid control supports multiple layouts.

I strongly suspect that most users don't know this, and use the default layout.

I kinda wonder whether anyone uses a non-default layout. Does anyone reading this do so?

Layouts

Many of the layouts look completely broken. Here's what they look like in 2.51.02, and they look much the same on master.

You can cycle layouts by pressing Ctrl+Shift+L, or via the "View" menu.

image

image

image

image

image

image

image

image

Proposal

Remove the ability to change the layout. Have one good layout. Reduce the volume of code considerably. No one will notice :)

I've got a branch going with some tidying of RevisionGrid. That's such a huge class, with over 300 members (excluding the designer file). If this proposal gains support, I will do the necessary surgery on that branch and create a PR.


Environment

GitExtensions version: 2.51.02, master OS version: Windows 10

vbjay commented 6 years ago

I do.

On Mon, Jun 4, 2018, 7:56 PM Drew Noakes notifications@github.com wrote:

The RevisionGrid control supports multiple layouts.

I strongly suspect that most users don't know this, and use the default layout.

I kinda wonder whether anyone uses a non-default layout. Does anyone reading this do so? Layouts

Many of the layouts look completely broken. Here's what they look like in 2.51.02, and they look much the same on master.

You can cycle layouts by pressing Ctrl+Shift+L, or via the "View" menu.

[image: image] https://user-images.githubusercontent.com/350947/40947413-747d7960-685a-11e8-93eb-20ab707bf20a.png

[image: image] https://user-images.githubusercontent.com/350947/40947425-7e6e72f8-685a-11e8-9db3-6a878902efb8.png

[image: image] https://user-images.githubusercontent.com/350947/40947430-8b27da8e-685a-11e8-9b76-7729fa9dacb1.png

[image: image] https://user-images.githubusercontent.com/350947/40947434-928f6e04-685a-11e8-8d3b-b289e940d0ba.png

[image: image] https://user-images.githubusercontent.com/350947/40947443-9da8473e-685a-11e8-9ed9-1b025125fa0f.png

[image: image] https://user-images.githubusercontent.com/350947/40947456-a8c31d4c-685a-11e8-8c65-284604d4ee56.png

[image: image] https://user-images.githubusercontent.com/350947/40947463-b2dcdc5a-685a-11e8-8c0e-a0e8dfc48035.png

[image: image] https://user-images.githubusercontent.com/350947/40947470-ba34cf4e-685a-11e8-897b-75e49c258eb8.png Proposal

Remove the ability to change the layout. Have one good layout. Reduce the volume of code considerably. No one will notice :)

I've got a branch going with some tidying of RevisionGrid. That's such a huge class, with over 300 members (excluding the designer file). If this proposal gains support, I will do the necessary surgery on that branch and create a PR.

Environment

GitExtensions version: 2.51.02, master OS version: Windows 10

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/gitextensions/gitextensions/issues/5026, or mute the thread https://github.com/notifications/unsubscribe-auth/ADdhsbC0VSCUNJO1ZP-p-9GSye35Nphmks5t5ck9gaJpZM4UZ84e .

vbjay commented 6 years ago

Instead. Make it more visible.

On Mon, Jun 4, 2018, 7:57 PM Jay Asbury vbjay.net@gmail.com wrote:

I do.

On Mon, Jun 4, 2018, 7:56 PM Drew Noakes notifications@github.com wrote:

The RevisionGrid control supports multiple layouts.

I strongly suspect that most users don't know this, and use the default layout.

I kinda wonder whether anyone uses a non-default layout. Does anyone reading this do so? Layouts

Many of the layouts look completely broken. Here's what they look like in 2.51.02, and they look much the same on master.

You can cycle layouts by pressing Ctrl+Shift+L, or via the "View" menu.

[image: image] https://user-images.githubusercontent.com/350947/40947413-747d7960-685a-11e8-93eb-20ab707bf20a.png

[image: image] https://user-images.githubusercontent.com/350947/40947425-7e6e72f8-685a-11e8-9db3-6a878902efb8.png

[image: image] https://user-images.githubusercontent.com/350947/40947430-8b27da8e-685a-11e8-9b76-7729fa9dacb1.png

[image: image] https://user-images.githubusercontent.com/350947/40947434-928f6e04-685a-11e8-8d3b-b289e940d0ba.png

[image: image] https://user-images.githubusercontent.com/350947/40947443-9da8473e-685a-11e8-9ed9-1b025125fa0f.png

[image: image] https://user-images.githubusercontent.com/350947/40947456-a8c31d4c-685a-11e8-8c65-284604d4ee56.png

[image: image] https://user-images.githubusercontent.com/350947/40947463-b2dcdc5a-685a-11e8-8c0e-a0e8dfc48035.png

[image: image] https://user-images.githubusercontent.com/350947/40947470-ba34cf4e-685a-11e8-897b-75e49c258eb8.png Proposal

Remove the ability to change the layout. Have one good layout. Reduce the volume of code considerably. No one will notice :)

I've got a branch going with some tidying of RevisionGrid. That's such a huge class, with over 300 members (excluding the designer file). If this proposal gains support, I will do the necessary surgery on that branch and create a PR.

Environment

GitExtensions version: 2.51.02, master OS version: Windows 10

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/gitextensions/gitextensions/issues/5026, or mute the thread https://github.com/notifications/unsubscribe-auth/ADdhsbC0VSCUNJO1ZP-p-9GSye35Nphmks5t5ck9gaJpZM4UZ84e .

drewnoakes commented 6 years ago

Which layout do you use? Do they look this broken for you? To me the non-broken layouts look pretty much the same.

vbjay commented 6 years ago

Some of them you have to force a refresh before it looks right.

vbjay commented 6 years ago

image I submitted an issue for this one for the selected commit text not being visible.

I also use this one

image

RussKie commented 6 years ago

I second the removal motion. I have started extraction of the rendering logic from the grid, but it was a slow and very difficult process... I'd rather have a single working good looking layout with a clean separation of concerns, and then add new layouts later.

On Tue, Jun 5, 2018, 10:46 AM Jay Asbury notifications@github.com wrote:

[image: image] https://user-images.githubusercontent.com/3629489/40948743-2ddf8d80-6838-11e8-8c6c-4f9851a9ea34.png

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/gitextensions/gitextensions/issues/5026#issuecomment-394544691, or mute the thread https://github.com/notifications/unsubscribe-auth/AEMyXlCq-vn3_CXGFHO8kidicJoosqLqks5t5dTkgaJpZM4UZ84e .

jbialobr commented 6 years ago

I also support single layout, especially taking into account switching from WinForms to sth else.

gerhardol commented 6 years ago

Single layout. A colleague got one of the semi-broken layouts somehow and did not know how to get it back. This can of course occur for any customization, but there is not much point in delivering broken layouts.

drewnoakes commented 6 years ago

I should have time today to experiment with this. Will report back with findings.

drewnoakes commented 6 years ago

@vbjay could you explain some more about what the tile view gives you? Then we can explore whether there's a way of bringing some of that into a single layout. To me it looks nice enough aesthetically, but I wouldn't use it due to its low information density.

vbjay commented 6 years ago

I like it because it does give me less commits. It lets me focus on each commit instead of seeing a ton of them. I have a scroll wheel.

On Tue, Jun 5, 2018, 3:56 AM Drew Noakes notifications@github.com wrote:

@vbjay https://github.com/vbjay could you explain some more about what the tile view gives you? Then we can explore whether there's a way of bringing some of that into a single layout. To me it looks nice enough aesthetically, but I wouldn't use it due to its low information density.

— You are receiving this because you were mentioned.

Reply to this email directly, view it on GitHub https://github.com/gitextensions/gitextensions/issues/5026#issuecomment-394617020, or mute the thread https://github.com/notifications/unsubscribe-auth/ADdhsWEKTZWwBQm5LhXBNmcbQWogWLZEks5t5jmrgaJpZM4UZ84e .

pmiossec commented 6 years ago

I'm Ok to remove too. Also, under high dpi all others are either:

For example, this all flat layout :

image We can't understand which commit belong to which branch. Using the option "Show current branch only" make a lot more sense...

vbjay commented 6 years ago

There are multiple layouts. Cycle through each one and then hit refresh.

On Tue, Jun 5, 2018, 6:50 AM Philippe Miossec notifications@github.com wrote:

I'm Ok to remove too. Also, under high dpi all others are either:

  • completely broken
  • nearly the same than the default one
  • display not clear data and could induce comprehension errors

For example, this all flat layout :

[image: image] https://user-images.githubusercontent.com/460196/40971485-15063c9c-68be-11e8-9c3d-5418da7218e4.png We can't understand which commit belong to which branch. Using the option "Show current branch only" make a lot more sense...

— You are receiving this because you were mentioned.

Reply to this email directly, view it on GitHub https://github.com/gitextensions/gitextensions/issues/5026#issuecomment-394665812, or mute the thread https://github.com/notifications/unsubscribe-auth/ADdhsfKoQudYotOERTxZPfvoXl_Wnn3Lks5t5mKNgaJpZM4UZ84e .

pmiossec commented 6 years ago

@vbjay I did it once I read your previous comment and that don't change a lot of things. There are mostly broken even after a refresh under high dpi screen :(

vbjay commented 6 years ago

Well the high dpi could be the issue. The layouts may not work well like a lot of things with high dpi. I don't have a high dpi display. The only issue I face with the layouts is the selected commit font color. White against that gradient causes the commit text to disappear.

On Tue, Jun 5, 2018, 6:55 AM Philippe Miossec notifications@github.com wrote:

@vbjay https://github.com/vbjay I did it once I read your previous comment and that don't change a lot of things. There are mostly broken even after a refresh under high dpi screen :(

— You are receiving this because you were mentioned.

Reply to this email directly, view it on GitHub https://github.com/gitextensions/gitextensions/issues/5026#issuecomment-394666930, or mute the thread https://github.com/notifications/unsubscribe-auth/ADdhsXHQJ2h2CQmf23biFcdQat4uTi40ks5t5mOjgaJpZM4UZ84e .

drewnoakes commented 6 years ago

@pmiossec thanks for pointing out that we would remove a large bunch of high DPI bugs.

@vbjay

It lets me focus on each commit instead of seeing a ton of them.

Perhaps we can introduce a density setting to let the user choose how visually dense the revision grid is. Would that help achieve what you're after.

In a similar spirit, moving to a single grid presentation style allows us to focus on making it as great to use as possible, while resisting adding too many user options. This will be easier to realise if we have less code to consider.

I have some progress on this but it's blocked a bit behind #5029. I'll fix that first.

drewnoakes commented 6 years ago

The only issue I face with the layouts is the selected commit font color. White against that gradient causes the commit text to disappear.

This is a problem with many of the non-default layouts. The default layout works well with selections.

vbjay commented 6 years ago

I also like the gravatar image on the commits. If we can maybe have 2. One with the commit lines, and the commit lines with gravatar on commits.

On Tue, Jun 5, 2018, 7:45 AM Drew Noakes notifications@github.com wrote:

The only issue I face with the layouts is the selected commit font color. White against that gradient causes the commit text to disappear.

This is a problem with many of the non-default layouts. The default layout works well with selections.

— You are receiving this because you were mentioned.

Reply to this email directly, view it on GitHub https://github.com/gitextensions/gitextensions/issues/5026#issuecomment-394679288, or mute the thread https://github.com/notifications/unsubscribe-auth/ADdhscrabAc2fp7ZdK8fP-WyT2tCABT9ks5t5m9mgaJpZM4UZ84e .

drewnoakes commented 6 years ago

I also like the gravatar image on the commits

We could add it as a column to the grid, and still have only one layout. There are existing settings that toggle column visibilities, so we can add one more.

Such a column would probably only look decent if the density was turned down.

pmiossec commented 6 years ago

I also like the gravatar image on the commits

We could add it as a column to the grid

I also think that it should be a column displayed for example just before the Author column...

drewnoakes commented 6 years ago

Thinking longer term we could add a column chooser, where you can control which columns are visible and their order in the grid.

vbjay commented 6 years ago

Those suggestions together

On Tue, Jun 5, 2018, 8:10 AM Drew Noakes notifications@github.com wrote:

Thinking longer term we could add a column chooser, where you can control which columns are visible and their order in the grid.

— You are receiving this because you were mentioned.

Reply to this email directly, view it on GitHub https://github.com/gitextensions/gitextensions/issues/5026#issuecomment-394685459, or mute the thread https://github.com/notifications/unsubscribe-auth/ADdhsbVPGfmJS7oieGogkAyvepCbLLtJks5t5nUbgaJpZM4UZ84e .

RussKie commented 6 years ago

Alright, it looks like we are all mostly on the same page. Let's deprecate all layouts except the default one until such time when we are happy with it, then we can revisit the desire to add more layouts. As discussed earlier, the default layout can be enhanced, if desired. Please be mindful of the feature-creep though. Timeline-wise I propose the deprecation to target v3.0, everything else to target v3.x

The only issue I face with the layouts is the selected commit font color. White against that gradient causes the commit text to disappear.

This bug needs to be fixed one way or another. I believe there is an issue in the backlog.

On 5 June 2018 at 22:17, Jay Asbury notifications@github.com wrote:

Those suggestions together

  • Density control
  • Gravatar column
  • Column chooser, and position would make it work.

On Tue, Jun 5, 2018, 8:10 AM Drew Noakes notifications@github.com wrote:

Thinking longer term we could add a column chooser, where you can control which columns are visible and their order in the grid.

— You are receiving this because you were mentioned.

Reply to this email directly, view it on GitHub https://github.com/gitextensions/gitextensions/ issues/5026#issuecomment-394685459, or mute the thread https://github.com/notifications/unsubscribe-auth/ ADdhsbVPGfmJS7oieGogkAyvepCbLLtJks5t5nUbgaJpZM4UZ84e

.

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/gitextensions/gitextensions/issues/5026#issuecomment-394687572, or mute the thread https://github.com/notifications/unsubscribe-auth/AEMyXjoZN0nBLKzEOoDyoqCTFQFX6_nuks5t5nbygaJpZM4UZ84e .