aboutsummaryrefslogtreecommitdiff
path: root/dw/layout.cc
diff options
context:
space:
mode:
Diffstat (limited to 'dw/layout.cc')
-rw-r--r--dw/layout.cc12
1 files changed, 8 insertions, 4 deletions
diff --git a/dw/layout.cc b/dw/layout.cc
index 9e667cff..c26ae57b 100644
--- a/dw/layout.cc
+++ b/dw/layout.cc
@@ -674,11 +674,15 @@ void Layout::resizeIdle ()
// widget->parent ? "non-" : "", widget->getClassName(), widget,
// widget->extremesQueued () ? "yes" : "no");
- widget->setFlags (Widget::NEEDS_RESIZE);
- widget->unsetFlags (Widget::RESIZE_QUEUED);
+ if (widget->resizeQueued ()) {
+ widget->setFlags (Widget::NEEDS_RESIZE);
+ widget->unsetFlags (Widget::RESIZE_QUEUED);
+ }
- widget->setFlags (Widget::NEEDS_ALLOCATE);
- widget->unsetFlags (Widget::ALLOCATE_QUEUED);
+ if (widget->allocateQueued ()) {
+ widget->setFlags (Widget::NEEDS_ALLOCATE);
+ widget->unsetFlags (Widget::ALLOCATE_QUEUED);
+ }
if (widget->extremesQueued ()) {
widget->setFlags (Widget::EXTREMES_CHANGED);