diff options
Diffstat (limited to 'dw/layout.cc')
-rw-r--r-- | dw/layout.cc | 12 |
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); |