From 5e61a16c4ef0c64fd8cdbee2379bcee798dab518 Mon Sep 17 00:00:00 2001 From: Sebastian Geerken Date: Fri, 12 Sep 2014 21:56:11 +0200 Subject: Table gets OOF aware, part 2. (Still crashing.) --- dw/oofawarewidget.cc | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) (limited to 'dw/oofawarewidget.cc') diff --git a/dw/oofawarewidget.cc b/dw/oofawarewidget.cc index a71b3f0d..edecb12f 100644 --- a/dw/oofawarewidget.cc +++ b/dw/oofawarewidget.cc @@ -255,6 +255,29 @@ Widget *OOFAwareWidget::getWidgetOOFAtPoint (int x, int y, int level) return NULL; } + +int OOFAwareWidget::getAvailWidthOfChild (Widget *child, bool forceValue) +{ + if (isWidgetOOF(child)) { + assert (getWidgetOutOfFlowMgr(child) && + getWidgetOutOfFlowMgr(child)->dealingWithSizeOfChild (child)); + return getWidgetOutOfFlowMgr(child)->getAvailWidthOfChild (child, + forceValue); + } else + return Widget::getAvailWidthOfChild (child, forceValue); +} + +int OOFAwareWidget::getAvailHeightOfChild (Widget *child, bool forceValue) +{ + if (isWidgetOOF(child)) { + assert (getWidgetOutOfFlowMgr(child) && + getWidgetOutOfFlowMgr(child)->dealingWithSizeOfChild (child)); + return getWidgetOutOfFlowMgr(child)->getAvailHeightOfChild (child, + forceValue); + } else + return Widget::getAvailWidthOfChild (child, forceValue); +} + void OOFAwareWidget::borderChanged (int y, Widget *vloat) { assertNotReached (); -- cgit v1.2.3