Commit 85d06da
committed
Coalesce Quick Access resize updates and skip no-op resizes
QuickAccessContents armed a recompute on every shell resize during the
popup's initial layout, and each recompute cancels the in-flight compute
job. On Windows the native search field triggers a burst of initial
layout resizes, so the compute job scheduled for freshly typed text was
repeatedly cancelled and the table was never refreshed. This is the
intermittent failure in
QuickAccessDialogTest.testPreviousChoicesAvailableForExtension.
A resize only changes the results by changing how many rows fit, so
track the row count used for the last compute and skip the
resize-triggered update when it is unchanged. Remaining resizes are
coalesced with a trailing-edge debounce so a burst (for example
scrollbar oscillation during initial layout) collapses into a single
update once the layout settles, instead of cancelling the in-flight
compute job repeatedly.
Also fix an accidental ~83 minute timeout (TIMEOUT * 1000) in that
test's dialog-init wait.
Fixes #40091 parent 4e89c0c commit 85d06da
1 file changed
Lines changed: 31 additions & 15 deletions
File tree
- bundles/org.eclipse.ui.workbench/eclipseui/org/eclipse/ui/internal/quickaccess
Lines changed: 31 additions & 15 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
102 | 102 | | |
103 | 103 | | |
104 | 104 | | |
| 105 | + | |
| 106 | + | |
| 107 | + | |
105 | 108 | | |
106 | 109 | | |
107 | 110 | | |
| |||
123 | 126 | | |
124 | 127 | | |
125 | 128 | | |
126 | | - | |
| 129 | + | |
127 | 130 | | |
128 | 131 | | |
129 | 132 | | |
| |||
164 | 167 | | |
165 | 168 | | |
166 | 169 | | |
| 170 | + | |
167 | 171 | | |
168 | 172 | | |
169 | 173 | | |
| |||
766 | 770 | | |
767 | 771 | | |
768 | 772 | | |
| 773 | + | |
| 774 | + | |
| 775 | + | |
| 776 | + | |
| 777 | + | |
| 778 | + | |
| 779 | + | |
| 780 | + | |
| 781 | + | |
| 782 | + | |
| 783 | + | |
| 784 | + | |
| 785 | + | |
| 786 | + | |
| 787 | + | |
769 | 788 | | |
770 | 789 | | |
771 | 790 | | |
772 | | - | |
773 | | - | |
774 | | - | |
775 | | - | |
776 | | - | |
777 | | - | |
778 | | - | |
779 | | - | |
780 | | - | |
781 | | - | |
782 | | - | |
783 | | - | |
784 | | - | |
785 | | - | |
| 791 | + | |
| 792 | + | |
| 793 | + | |
| 794 | + | |
| 795 | + | |
| 796 | + | |
| 797 | + | |
| 798 | + | |
| 799 | + | |
786 | 800 | | |
| 801 | + | |
| 802 | + | |
787 | 803 | | |
788 | 804 | | |
789 | 805 | | |
| |||
0 commit comments