Back in 2017 in T117794, Special:RevisionDelete was converted to OOUI. It introduced an inconsistency in UI between handling single and multiple revisions:
Single revision | Multiple revisions |
---|---|
When setting visibility for multiple revisions, the user is presented with a triple value radio button option for each flag, of which the first is "do not change". This is because the controls have a one-to-many relationship with the revisions being affected and can't represent a mixture of different states, in contrast to the one-to-one relationship of the flag checkboxes in the UI for affecting single revisions.
As a result, the user needs to visually inspect the state of all the revisions, hold that information in their head, and then set the radio buttons accordingly. This is poor UX - I've certainly made mistakes using it myself on a number of occasions over the years. It also creates the potential for a state setting action to fail entirely, because the user's choice of Unset or Set on one or more revisions represents the current value of that flag. (This is arguably a bug which should be addressed separately in the meantime.)
The list of revisions and their associated visibility controls should be integrated into a one-to-one relationship, something like this:
Timestamp | User | Edit summary | Hide text | Hide summary | Hide user/IP |
---|---|---|---|---|---|
12:01, 1 April 2024 (diff) | Regular user | Revert vandalism | 🟩 | 🟩 | 🟩 |
12:00, 1 April 2024 (diff) | Vandal | This wiki has shut down, goodbye!!! | ✅ | ✅ | 🟩 |
11:55, 1 April 2024 (diff) | Regular user | Update | 🟩 | 🟩 | 🟩 |
I'm using regular checkboxes in this mockup, but a modern UI would make them larger to be easier click targets. The user should be able to click single states to toggle them, or drag across the table to change multiple states in a single motion.
This UI should be used consistently whether modifying multiple or single revisions.