ome / omero-parade

OMERO.web plugin for displaying Dataset thumbnails or Plates in webclient center panel
GNU Affero General Public License v3.0
1 stars 12 forks source link

Removing filters re-loads other filters #38

Open will-moore opened 6 years ago

will-moore commented 6 years ago

From https://github.com/ome/omero-parade/pull/27#issuecomment-388823185 Each time a filter is removed the key_value pairs are reloaded and UI regenerated Example:

will-moore commented 6 years ago

This bug is not just for map_annotations, but will show up anytime you remove a filter (except for removing the last filter in the list). This is because the key that tells React whether each filter is a new vv existing component is based on the name and Index.

<ParadeFilter
    key={fname + idx}

So, React will re-load filters if the index changes, which includes re-loading the filter and data from OMERO.

Kinda tricky to think how to fix that since you may have several filters with the same name e.g. Tag and a different Tag selected in each. If you remove one of them, we want React to remove just that one and not change the others. But it's hard to see how we can define a key for each filter based on the current state of each filter.