[MGNLUI-26] Refine implementation of hybrid selection in lists and trees Created: 09/Oct/12 Updated: 11/Sep/15 Resolved: 27/Jun/13 |
|
| Status: | Closed |
| Project: | Magnolia UI |
| Component/s: | tree/list, user interaction |
| Affects Version/s: | None |
| Fix Version/s: | None |
| Type: | Improvement | Priority: | Major |
| Reporter: | Andreas Weder | Assignee: | Unassigned |
| Resolution: | Outdated | Votes: | 0 |
| Labels: | ux | ||
| Σ Remaining Estimate: | Not Specified | Remaining Estimate: | Not Specified |
| Σ Time Spent: | Not Specified | Time Spent: | Not Specified |
| Σ Original Estimate: | Not Specified | Original Estimate: | Not Specified |
| Issue Links: |
|
||||||||||||
| Sub-Tasks: |
|
||||||||||||
| Template: |
|
||||||||||||
| Acceptance criteria: |
Empty
|
||||||||||||
| Task DoD: |
[ ]*
Doc/release notes changes? Comment present?
[ ]*
Downstream builds green?
[ ]*
Solution information and context easily available?
[ ]*
Tests
[ ]*
FixVersion filled and not yet released
[ ] 
Architecture Decision Record (ADR)
|
||||||||||||
| Description |
|
I'd like to refine our current implementation of hybrid selection in lists and trees first of all to complete the picture. I'd also like to address the issue of always ticking the check box. Some of what I'm describing here, has already been implemented. Please read and verify it all to ensure we get the concept right. Especially important now are the behavior when multi-selecting items using a modifier key, the behavior when starting a drag and the fact that we only toggle-select an item, once another one has been toggle-selected as well (see explanations below). Hybrid selection is intuitive to use, if done right, but unfortunately is very hard and tedious to describe. Please make sure you understand all of the following, before trying to implement any changes. Should this not be clear enough, please get back to me. To begin with, here's the two terms I use frequently below:
Here's how I suggest we implement hybrid selection in our case:
To take into account the results of some of the discussion we had, I'd also like to make the following change:
The last step is important to keep the interface consistent. To de-select an item:
So far so good. Things get hairy, since we can also multi-select items using a modifier key:
And they get even hairier, if we also include drag and drop. This is difficult, since the last item you mouse-down or touch-start on when you start the drag looks like it's being object-selected, but as a matter of fact, it is not:
I'm not making this up, by the way. This is pretty much how things are described in UI design books such as the famous Designing Web Interfaces by Bill Scott and Theresa Neil. |
| Comments |
| Comment by Andreas Weder [ 09/Oct/12 ] |
|
Changed the issue do only implement the new variant of hybrid selection to reduce its complexity. |
| Comment by Andreas Weder [ 09/Oct/12 ] |
|
I've moved a previous SCRUM issue to this issue, converting it to a sub task while doing so. Please note that I've not created sub tasks for ALL changes mentioned in this issue, though. |