-
Notifications
You must be signed in to change notification settings - Fork 161
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
igxCombo component has to include caseSensitive property in filter search #7282
Comments
@HeliosLive , the feature request is in the list for the current milestone. You could follow the milestone progress on the Roadmap board or in the Roadmap file. |
@radomirchev I will & nice work Thank you all :) |
@kdinev suggests adding a property that will add case sensitive icon that will toggle case sensitive/insensitive functionality. |
@kdinev @Lipata |
@ViktorSlavov I want to be able to change case sensitivity similar to how it's done in search editors in common applications: Case sensitivity in filtering is a parameter that gets passed around regardless of the strategy, and changing sensitivity should not require changing a strategy. Introducing filtering strategies is a bit out of scope for this item and if such a thing is requested, then it would be handled with the existing filtering strategy interfaces exposed for the grid. |
@kdinev There's a slight nuance between exposing Keep in mind the current filter pipe is already case-insensitive. Different issue(s) here. @HeliosLive As far as I understand the main issue is that searching for For the
Turns out it kind of is, but with extra char at the end:
I can only assume that flag is there to allow There's PS: Funnily enough, my browser search will match every single version of the letter (dotted or not) regardless of the search input. TL;DRI see a few issues/enhancements here:
|
@damyanpetev We definitely should provide the UI out of the box, which means that the input would be setting only the initial state of the case-sensitive button. The invariant lower case sounds like the correct approach to me, since the Angular lowercase pipe also behaves this way. Remote filtering is an entirely separate issue. |
@damyanpetev I sure understand what you mean by saying those situation and toLocaleLowerCase property is taking you to completely different position. However my another suggestion is, If you @ALL consider not removing filter input but removing auto filter inside data, I could catch "onSearchInput()" event then I can rewrite filter string changing to toLocaleLowerCase and successfully handle my problem or any locale string problem that anyone is having. P.S. I think adding an icon to input for changing case sensitive option is not looking good and not preferable. |
@HeliosLive I agree, especially if I get correctly you are using remote data as well, you need to be able to ignore the default filter. It should be fairly simple to make |
@damyanpetev yes you are correct I am using remote data so I don't even need filtering but i need that input :) So you will develop this feature soon ? really helpful 👌👍 |
@HeliosLive we have started the implementation of both cancellable onSearchInput and the caseSensitive option and we should be ready with both features for the next milestone. |
@HeliosLive The cancellable output event is already released with the patches for 9.1 and 10.0. Now you can cancel the onSearchInput event and perform your custom filtering as follows:
|
Is your feature request related to a problem? Please describe.
I am using igx-combo component but in search feature filter has not involve case sensitive in Turkish language.
If you can see screenshot we have 4 scenarios in this issue..
scenario 1 : we have a list in combo
scenario 2 : when i type 'ti' letters result appears , perfect!
scenario 3 : But in Turkish alphabet 'i' and 'ı' also 'İ' and 'I' is not the same so when i type 'Tİ' search filter thinks 'İ' is unknown letter so no result appears but last scenario result had to come out again..
scenario 4 : However when I type 'TI' filter thinks 'I' means 'i' but no two different letters literally.
Same result comes out but it shouldn't.
Describe the solution you'd like
suggestion 1 : you can add new property to igxComboComponent API like caseSensitive:boolean so when we set that false component acts 'I' and 'İ' or any other letters are not the same.
suggestion 2 : you can add a new template option inside igxComboComponent as you have created earlier like 'igxComboItem' , 'igxComboHeader' etc. If you create new template 'igxSearchInput' we can change caseSensitive inside this template with igxInput (of course it works only you have property in igx-input for caseSensitive)
Describe alternatives you've considered
alternative 1 : In many projects combo search feature is using with (onSearchInput) event so $event goes to Rest api then calls new list.. but this search keeps searching in list again. we could have cut this filtering away ? I mean when we set <igx-combo [filterable]="false">
search input goes away but we set <igx-combo [filterable]="true"> search input is back also still keeps searching in list. My alternate suggest is we could say filterable=false but filterInput=true.. so caseSenstivie no more needed in API call components.
Furthermore, even if you consider alternative solution without the api calls It is still a big problem with mock data.
I think the strongest solution will be adding a new property that I mentioned "suggestion 1".
The text was updated successfully, but these errors were encountered: