Git Plugin - Upstream+Design
I'm attempting to upstream the vast majority of the functionality of my GNOME-Builder git integration. Original - Vala Beware: Mediocre UI design ahead
This issue is primarily for discussing design.
At least for now, there are two main functionalities I want to upstream:
- Listing commits (Functionality 1a) and allowing to browse the tree at a specified commit (Functionality 1b)
- Listing previous revisions of a file (Functionality 2)
How my out-of-tree looks like
How my out-of-tree plugin looks currently
This was just a un-GNOMEy GUI, working fine for my purposes. Here just for demonstrative purposes what kind of information I want to present.
How it currently looks like in my Builder-fork
Link: https://gitlab.gnome.org/JCWasmx86/gnome-builder/-/tree/gitgui
(Maybe this should be more like usual file explorers, instead of a listview of paths?)
The icon has to change obviously, but that's the functionality I want to support for now.
Technical notes
-
Could be divided into two MRs:
- One that just does the changes in libide/vcs and plugins/git, plugins/git/daemon
- One that implements these designs in plugins/
-
List of commits is capped at 500, but could be trivially increased
-
I call git for listing the modifications to a file, due not finding a good way using libgit-glib
These is the overview of functionality and design ideas I had. Could somebody please help me a bit design-wise?
Reference examples in other editors: TBD