patch list action bar design changes

Stephen Finucane stephen at that.guru
Sat Jul 10 00:33:56 AEST 2021


On Fri, 2021-07-02 at 12:50 -0400, Raxel Gutierrez wrote:
> Hi,
> 
> I designed a mockup for the UI of the “Patches” page for Patchwork
> that moves the actions that can be made on selected patches up above
> the list of patches.

Awesome.

> As can be seen, there is now a sort of action bar
> that can be used to change the state of and delegate someone to a
> patch. Also, there’s a text field to create a bundle as before.
> Additionally, for more one-off changes there are dropdowns for the
> delegate and state so that users can make those specific changes. When
> a user changes the selected option, the change will be made right
> away. I think confirmation is not necessary as any erroneous changes
> can be undone, but if anyone feels that confirmation is required
> please provide feedback.

I think this depends on how you intend to make these changes. If it's done via a
form submit (i.e. not using AJAX), then I think a confirm step is necessary.
Without this, it becomes difficult to update multiple attributes on multiple
patches since you will have to select the same N patches M times (i.e. for each
attribute you'd like to update). If you can do the update asynchronously via
AJAX (with a standard form submit for those navigating the web without JS), then
doing it immediately is fine since we don't lose information like the currently
selected patches.

> I would like general feedback about the patch
> list action bar and the feel of the UI changes. Does the UI seem
> fairly learnable?

Yes, moving these controls up is a good step IMO.

> Are the possible actions that can be taken to change
> a patch’s state and delegate as well as create a bundle clear?

Yes, though I would like to ask how you envision the 'delegate to' button
working. Ideally, I'd like the ability to delegate a patch to any user in the
project, however, when we tried this in the past we had to remove it because the
amount of users could be huge, resulting in ridiculously large <select>
elements. An AJAX'y dropdown that is pre-populated with maintainers of the
project but that contains a search dialog to find other users would be awesome.
I have attached an example from the GitHub UX demonstrating what I mean (from
https://github.com/getpatchwork/patchwork). I have tried to do this myself more
than once but my JS skills (or lack thereof) have let me down each time.

> Currently, when a user is not logged in, the table rows are not
> selectable and the form to make changes is not visible at the bottom.
> This behavior makes sense from the perspective of preventing behavior
> that can’t occur (better for safety). An alternative suggested by
> Jonathan that I think can be discussed is to have the rows selectable
> and the new action bar visible. If a user doesn’t realize they aren’t
> signed in, a popup message that lets them know to sign in when they
> try to submit changes would be helpful for them to figure that out.
> Adding on to that, users that don’t have accounts, and simply want to
> explore the website can see what actions are afforded to them without
> actually making changes.

This is the only component I'm not a fan of. For most projects, the amount of
users that can actually make changes on patches (i.e. patchwork "maintainers")
is a tiny fraction of total users. For all users that are not maintainers, these
are controls which they'll never be able to actually use and therefore are
things that just waste space. In my opinion, this form should be hidden for
those users that can't do anything. I would expect that creating a bundle is the
only one they'll care about.

As an aside, I have a fairly sweeping series that reworks the Patchwork UX
significantly sitting on my local machine. I've reworked a lot of the
login/logout logic and replaced Bootstrap 3 with Bulma. However, it's incomplete
which is why I haven't pushed it (funnily enough, I got stuck trying to get a
patch detail page that I was happy with). Would this be helpful for you? I can
push it as an RFC series over the weekend if so.

Stephen

> 
> Best,
> Raxel
> _______________________________________________
> Patchwork mailing list
> Patchwork at lists.ozlabs.org
> https://lists.ozlabs.org/listinfo/patchwork

-------------- next part --------------
A non-text attachment was scrubbed...
Name: Screenshot from 2021-07-09 15-21-59.png
Type: image/png
Size: 30493 bytes
Desc: not available
URL: <http://lists.ozlabs.org/pipermail/patchwork/attachments/20210709/af7953c9/attachment-0001.png>


More information about the Patchwork mailing list