Made relayouts on Windows faster by preventing an accidental requeue of a window that's being processed in the event that a layout change changes the minimum size (such as switching tabs).

This commit is contained in:
Pietro Gagliardi 2015-12-04 19:34:51 -05:00
parent fc241bca61
commit d1c93a9956
1 changed files with 2 additions and 1 deletions

View File

@ -43,9 +43,10 @@ void doResizes(void)
while (resizes->len != 0) {
w = ptrArrayIndex(resizes, uiWindowsControl *, 0);
ptrArrayDelete(resizes, 0);
// don't clip content if content dynamically changed (tab page changed, etc.)
// do this BEFORE removing w from the queue list to avoid double queueing
ensureMinimumWindowSize(uiWindow(w));
ptrArrayDelete(resizes, 0);
hwnd = (HWND) uiControlHandle(uiControl(w));
if (GetClientRect(hwnd, &r) == 0)
logLastError("error getting uiWindow client rect in doResizes()");