Ticket #11020 (closed PLIP: duplicate)

Opened 6 years ago

Last modified 6 years ago

Categories MultiSelectionWidget w/scrollbar & checkboxes

Reported by: rmattb Owned by: limi
Priority: minor Milestone: 4.1
Component: User Experience and Interface Version:
Keywords: Cc:

Description

Proposer: Matt Barkau (RMattB)
Seconder: None as yet

Motivation

Plone currently utilizes the MultiSelectionWidget listbox for selecting categories (aka keywords, DC subject) to apply to a content item. However, when users add more categories to an existing item, they often inadvertently remove existing categories, due to not knowing or forgetting to use the control/command key. If a site contains more than 14 categories, users may not even see that other categories are already selected in the list below the box. Further discussion of this usability issue is in the  Plone improvement ideas forum (currently ranked fifth).

Since category lists tend to be long, using MultiSelectionWidget checkboxes (instead of listbox) for this purpose would render pages rather long in that case, impacting usability. HTML 4 offers no widget which combines the best of both approaches: a scrollbar and checkboxes.

Assumptions

Future versions of Plone do not already improve this widget. Plone will continue to include jQuery.

Proposal & Implementation

Since Plone includes jQuery, this PLIP proposes to improve the Categories MultiSelectionWidget by adapting and maintaining a proven, GPL-compatible, accessible, and jQuery-based widget, which includes both a scrollbar and checkboxes.

Further suggestions are welcome, but based on a brief survey,  one project appears to be a good starting point, with some refactoring for speed from  a derivative project. Guidance from the community on implementation is much appreciated.

This PLIP focuses on the implementation of the MultiSelectionWidget for Categories, but this could also be useful for any other areas in Plone using the listbox or checkbox varieties. For flexibility, this new widget could be registered in Plone as a new third type of MultiSelectionWidget.

Deliverables

What code and documentation needs to be produced?

  • A registerable javascript
  • A page template for the new MultiSelectionWidget variety
  • An update to the edit view’s Categorization fieldset template to use this new widget variety

Standard items:

  • Unit tests & buildout.cfg
  • Localization: No text changes to UI should be required.
  • Documentation: Existing UI has no on-page documentation (although maybe it should have). Oddly, the Plone  3 and  4 end-user documentation on this doesn’t mention use of the control/command key for multiselection, but the screenshot would change.

Risks

What are the risks of implementing this proposal? If jQuery Tools later provides a similar widget, this work will not have been needed, although I’m not sure of the likelihood of this due to jQuery Tools’ intentional minimalism.

What incompatibilities can it cause? Non-JavaScript failover would be to existing widget. Please advise of any other areas to consider.

Participants

Who is signed up to do the work? Matt Barkau, RMattB (collaboration welcomed)

Progress

Is any of the work done already? Not specifically implemented in Plone, but two variations on the functionality exist, linked above.

Should there be a proof of concept? A proof of concept will be the first step after discussion of this PLIP has reached consensus.

Change History

comment:1 Changed 6 years ago by esteele

  • Status changed from new to closed
  • Resolution set to duplicate

Duplicate of #11017

Note: See TracTickets for help on using tickets.