Filtered list doesn't reflect changes

Steps to reproduce

  1. Make a list of several lines
  2. Add tag #todo to some of them (but not to all)
  3. Type in filter next query: -#todo
  4. Those we will see lines which don’t consist #todo tag
  5. Now add #todo tag to one of filtered lines

Expected result

I expect the line with just typed #todo tag disappears after I remove focus from it

Actual result

Line still presented (after I remove focus from it), despite the fact that filter excludes lines with #todo. In order to trigger filter I must focus filter input, type e.g. space character and remove it. Then filtered list will hide all lines with #todo tag

Environment

Ubuntu 16.04, Chrome 67, Desktop

1 Like

Able to replicate.

A tricky usability one. Updating the filter as soon as you type something can easily remove items where you used a partial tag.

I kind of like this, that it stays in view, but can see the upside of refiltering too

Agree, that updating filter during typing is not very suitable. But what do you think about updating it after loosing focus from the edited line?

Could actually be a good idea. On the other hand I kind of like the idea I can change my mind, and go back to that line, edit it.

It makes sense…

So the idea is to somehow provide ability to reload filter naturally, without typing something into it and then remove.

Tricky indeed.

Also, if things update as you type in search mode, it’s taxing on the performance as well. Search is not cheap – even when you type in the search box, it gets debounced so a search is performed for every few characters you type, rather than every single character.

Honestly, I don’t consider this a bug. I think the best we can do is to redo search as soon as you re-focus on the search bar with Ctrl+F, so that you don’t need to add and then delete a character just to activate search.