Community
Participate
Working Groups
I20070525-0010, was OK in I20070523-0010. The FilteredItemsSelectionDialog flickers when the pattern is changed. E.g. open the Open Type dialog and slowly type "Array" (wait until search is done after every keystroke). => The table always first becomes blank and then the new items are shown.
If the fix for this is low risk we should consider it for RC3. Please start working on a possible solution.
Created attachment 69253 [details] Proposition of modifications 001
Created attachment 69280 [details] My suggested patch This code is pretty ineffecient if (contentProvider.getSortedItems().length > 0) contentProvider.refresh(); Sorting the set is a lot of work when all you are trying to do is determine if there any items
Krzysztof please verify my changes. My initial testing indicates the bug is fixed with this patch.
Created attachment 69305 [details] Patch 003 For me patch looks good. I add some small changes (access modificators and javadoc).
The "Patch 003" looks good.
I've tested the first two patches, and they only work as long as there are no types in the history. Just open type ArrayList and then do comment 0. Patch 003 does not look different implementation-wise.
It seems that for empty or short histories (e.g. one item) two refreshes one by one cause this problem.
Created attachment 69340 [details] Proposition of modifications 004
Wow, version 004 looks good (i.e. I tried hard, but I couldn't make it flicker). However, the implementation is becoming black magic for me. Can you explain why this works?
It's a kind of magic ;-) I'm trying to understand it too :D
I think I understand it but I will let Krzysztof explain it to you. The change is more about how the filters determine when to refresh. FilterHistoryJob#run has this method and needs a good quality comment. Otherwise +1.
The problem was in twice fast refresh one by one (first after history and second after filtering all rest elements). I add if condition on first refresh. Now it could be scheduled only before full filtering (it use fillContentProvider method) and when history is not empty. Problem was during filtering cache. It's very fast and we had a flickering effect. Now we have one refresh after search in cache.
Please verify on Linux and the mac before proceeding
It works on OS X but then I never saw the flashing to begin with.
I tested it on Linux. I saw the flashing in the previous version and everything works ok after applying the patch.
This last patch has been released for build 20070530-0100. McQ has yet to approve it but I wanted to make sure it was in as this is hopefully our last RC3 build.
Fixed for RC3.
Verified in I20070531-0010.