gitbutlerapp / gitbutler

The GitButler version control client, backed by Git, powered by Tauri/Rust/Svelte
https://gitbutler.com
Other
12.44k stars 489 forks source link

Make dragging changes to another branch easier on smaller screens #3234

Closed wesharper closed 3 days ago

wesharper commented 5 months ago

Right now, the sidebar, branch view, and changes pane all show at the same time and take up the whole window when the window is at half-size (50vw) or smaller.

If I want to move a handful of files off of my default branch and into another branch, the UI gets kind of awkward. It's fine when I want to move just one file because I can close the preview pane. However, if I want to move a small handful, I find that it's hard to both see what I'm moving and where I'm moving it all at the same time. The frustrations are compounded if my mouse doesn't have a horizontal scroll wheel.

Here are some videos illustrating what I'm talking about:

Keeping the main panel in focus means I can't move multiple items:

https://github.com/gitbutlerapp/gitbutler/assets/13283469/14dc6fa2-45ee-437d-a5cd-05c25244a000

Starting with the target branch in focus means I can't see the files I'm moving unless they're already selected:

https://github.com/gitbutlerapp/gitbutler/assets/13283469/f70893c5-1966-4791-b0df-957014007c38

Some solutions I've workshopped:

  1. Hide the preview panel on multi-select or dragstart
  2. Horizontally scroll when dragged items hit the window boundary
  3. Pin the preview pane to the right of the window as a fixed element, rather than having it attached to the branch's explorer
  4. Allow for smaller horizontal resizing of branch buckets
krlvi commented 5 months ago

Thanks for bringing this issue up. I gotta say that every time I'm using GB on just a laptop screen i get this pain point myself too. @PavelLaptev if you have time next week we can take a look at what approached could make sense here

PavelLaptev commented 5 months ago

Yes, I definitely will 🙂

PavelLaptev commented 5 months ago

@wesharper I made some changes in order to solve the issue. Solutions #1 and #2 should be implemented in the latest release. Can you please take a look?

https://github.com/gitbutlerapp/gitbutler/assets/18498712/9015c895-679a-45b6-833d-7690c6d7d18f

We're also on the hunk preview :-)

wesharper commented 5 months ago

That's excellent! Thanks for the quick work! I've already been able to use it in my own client!

Excited to see what you're up to with the hunk preview! 😃

PavelLaptev commented 5 months ago

Thank you for your feedback @wesharper 🙏

krlvi commented 3 weeks ago

Hey @wesharper, do you feel that the original issue is resolved for you here (can we close this issue)? Separately from this we are working on a broader UI/UX redesign which should further help with multi tasking, but that we will track in a separate github issue. Thanks!

krlvi commented 3 days ago

Closing this one since we havent heard back from the author. Feel free to create a new issue if this is still an issue. Thank you.