serge-web / serge

Serious Gaming, Evolved - web interface
https://sites.google.com/deepbluec.com/serge/
Apache License 2.0
15 stars 4 forks source link

Allow multi-select in filter drop-downs #2889

Closed lebaphi closed 7 months ago

lebaphi commented 8 months ago

Fixes #2874

image

Tristina1788 commented 8 months ago

@IanMayo , @lebaphi Tested on '2874-multiple-select-dropdown' , now properties of dropdown is also selected multiple values

image

And I can select no option for dropdown list.

image

It think multiple values should be apply for 'Filter' panel.

IanMayo commented 8 months ago

Hello @lebaphi , while we need And between the separate filters, we need Or within the dropdown lists.

This setting should filter to include blue OR red. I'm pretty sure it's currently doing AND (which matches none, since it's impossible)

image

Tristina1788 commented 8 months ago

@lebaphi , @IanMayo Tested on '2874-multiple-select-dropdown' branch

Now Properties of dropdown is still enable to select multiple values

image

And the filter is And instead of 'Or'

image

lebaphi commented 8 months ago

This setting should filter to include blue OR red. I'm pretty sure it's currently doing AND (which matches none, since it's impossible)

okay @IanMayo, I will update it

IanMayo commented 8 months ago

@Tristina1788 - could you help us out by re-testing this, please?

Tristina1788 commented 8 months ago

@Tristina1788 - could you help us out by re-testing this, please? @IanMayo , @lebaphi I 've tested on '2874-multiple-select-dropdown' and the issues above https://github.com/serge-web/serge/pull/2889#issuecomment-1965947161 still happened

https://github.com/serge-web/serge/assets/107697044/65461668-c2f6-412f-ab35-19b1d2c5ccb9

IanMayo commented 8 months ago

Ok @lebaphi - we still have to block multi-select in the lower panel.

Tristina1788 commented 8 months ago

@lebaphi , @IanMayo Tested on '2874-multiple-select-dropdown', now the filter is 'OR' and dropdown list in 'Properties' panel only enable to select one.

https://github.com/serge-web/serge/assets/107697044/12cd485f-2ebe-4cbd-8e4a-bd6c5540e9f5

But now the filter for 'Text' input with 'contains' instead of 'include' as before. I have to exactly text to filter properties.

https://github.com/serge-web/serge/assets/107697044/5475c041-8f07-4648-87c0-def196a438cf

lebaphi commented 8 months ago

Thanks @Tristina1788 , I will take a look on the text filter issue

Tristina1788 commented 7 months ago

@IanMayo , @lebaphi Tested on branch '2874-multiple-select-dropdown' , now filter for 'Text' input work with 'include' as expected. And filter for dropdown is also working fine.

image

IanMayo commented 7 months ago

One bit still seems wrong, @lebaphi & @Tristina1788 . For an enum (dropdown) filter, it is showing features that don't have that field.

e.g. important and category. Features that don't have those fields are still included in the list. I'm pretty sure that if we filter for important: yes, then features that don't have the important field should not be shown. We should only show features that have an important field, and that it's value is yes

Tristina1788 commented 7 months ago

One bit still seems wrong, @lebaphi & @Tristina1788 . For an enum (dropdown) filter, it is showing features that don't have that field.

e.g. important and category. Features that don't have those fields are still included in the list. I'm pretty sure that if we filter for important: yes, then features that don't have the important field should not be shown. We should only show features that have an important field, and that it's value is yes

@IanMayo You are right. I can see this issue

image

Tristina1788 commented 7 months ago

@lebaphi , @IanMayo Tested on '2874-multiple-select-dropdown' . Now filter is also works fine on 'Category' and 'Important'

https://github.com/serge-web/serge/assets/107697044/14aec19a-034a-4a5e-8477-6562086c8652

Just one issue is filter gets reset to default filter when I added one more filter. I check on 'develop' branch and it has same issue. So I will create new ticket for it.