galaxy icon indicating copy to clipboard operation
galaxy copied to clipboard

Improve Form Drilldown UX

Open assuntad23 opened this issue 1 year ago • 2 comments

Describe the bug These bugs were intitially caught in PR #15813 which was vueifying the Form Drilldown component. Form Drilldown does not display recursively selected options and indentation between parent/child options could be improved.
Recursivity changes could look like: Multiple Recursive: (credit @ElectronicBlueberry) image Single Recursive: (credit @ElectronicBlueberry) image

Indentation issues are complicated by +/- button that makes this more than just a simple padding fix. Implementing this will need to take into account that siblings should still try to remain more or less in line with eachother.

Galaxy Version and/or server at which you observed the bug Galaxy Version: 23.1 Commit: 521ccdd1244899f2537bcae235b4857f3d6711a3

To Reproduce Steps to reproduce the behavior:

  1. (locally) set up test tools
  2. Find the drill_down tool
  3. Select a parent option, and note that the children are not checked off
  4. Look at the indentation between parent/children

Expected behavior When parents are selected, there is some indication that their children were also selected. Indentation between parents and children is clear, but does not violate alignment with sibling options.

assuntad23 avatar May 04 '23 19:05 assuntad23

I wonder if the [+] [-] buttons are required at all, since they only make sense with a very large amount of options. It could be helpful to look for tools which are using this. Getting rid of these buttons would make the indentation issue significantly easier.

ElectronicBlueberry avatar May 09 '23 17:05 ElectronicBlueberry

So, I have made some progress but from this ticket and these code comments it is still not fully clear to me what all the feature's "expected"/correct behavior should be for the drill-down feature. Could you help me understand the code comments explaining the difference between hierarchy="exact" and hierarchy="recurse"? Of course, I know what a "node" is, but what specifically is meant by a "leave", "inner", and the statement only "leave" are are selectable? To me, "selectable" (value-based) is not the same as "clickable" (not always value-based) and this comment doesn't make a distinction (I might also update the docs to be more clear later on). So far, here is where I am at: the PR and a demo video.

Cc: @bernt-matthias @ElectronicBlueberry @dannon

hujambo-dunia avatar May 09 '24 11:05 hujambo-dunia