Description

The color choice for the remove buttons for FilteredSelectMultiple is unfortunate. Multiple times when looking at someone doing a demo of a site that used this control I see them hesitate before clicking the button, even though they have used it multiple times before. The reason is that the gray color when viewed in opposition to the blue looks like it's disabled.

Change History (23)

I agree that this is not ideal. Also, the fact that "Select your choice(s) and click" appears on the right hand side isn't particularly great either. I definitely think there's room for improvement -- needs some more design discussion.

I forgot to mention another important improvement: the icons appear active (i.e. blue) only if some items are selected in the boxes, respectively only if the boxes aren't empty for the "Add all" and "Remove all" links.

I think your dynamic button color solution is nice. I guess the gray "remove" button was originally designed that way to indicate "removal"; not sure whether it matters that this visual cue would be removed. Gray was never a good idea, but red/green would potentially be ugly. I'm happy enough with blue myself, but a UI expert might say otherwise.

I've only got Chrome handy for testing, but would be interested to see if the inline-block rules hold up in IE.

I think the "To add ..., select some choice(s) below and click the "Add" button" tips are useful, but I don't like how much space they take up; I wonder if they could be hidden in "help/?" buttons or tooltips or something?

Thanks for your feedback, Simon. I've made the help texts available as tooltips to avoid clutter (see attached screenshot).

I'm now planning to put all those arrow icons into a single sprite file to save bandwidth and to display faster. In the process I'd also like to delete the original individual icon files -- it is possible that people already use them to customise their admin, so we'd have to mention it in the release notes so that they get replacement files and serve them separately outside the default admin media.

I also need to add the new translation strings for the new help texts.

Thanks for the review, Idan! I too have been wondering about the absence of a filterbox on the right hand side. It is less than ideal especially since there could easily be dozens of selected items on the right as well as on the left. The main explanation I could come up with is that it may be confusing for some users to have some data saved in the database but visually hidden in the widget. Imagine: there's a bunch of items selected on the right for an existing object, you filter it (and therefore some items get hidden), you press save, and all the items reappear there on the right.

Anyway, I agree that it's best to opt for the status quo for this particular filterbox question, and perhaps tackle it in a separate ticket with other related redesign questions. I'll continue doing some testing and minor refinements with this patch and will commit it if it can reach a stable and solid state. Anyone please still feel free to jump in with ideas.

OK, this patch is now candidate for checkin. I've already successfully tested it with multiple browsers. I'll continue doing some more testing and will eventually check it in. In the meantime feel free to give it a whirl.

Fixed #16059 -- Improved the usability of the admin's vertical and horizontal "filter" widgets, in particular by providing a better visual representation of the buttons' enabled and disabled states, and by providing more elaborate, yet less cluttered, help texts.

Note that this commit is an exception to the current tacit rule that javascript code changes should be avoided until a proper javascript testing framework for Django core is in place. This exception is commanded by the fact that it is to fix a recognized usability issue and that the patch has been (manually) extensively tested in IE6+, Chrome, Safari, Firefox and Opera.