aboutsummaryrefslogtreecommitdiff
path: root/dw
diff options
context:
space:
mode:
Diffstat (limited to 'dw')
-rw-r--r--dw/stackingcontextmgr.cc13
1 files changed, 11 insertions, 2 deletions
diff --git a/dw/stackingcontextmgr.cc b/dw/stackingcontextmgr.cc
index cbdef129..e7a53fe3 100644
--- a/dw/stackingcontextmgr.cc
+++ b/dw/stackingcontextmgr.cc
@@ -38,6 +38,8 @@ StackingContextMgr::StackingContextMgr (Widget *widget)
DBG_OBJ_SET_NUM ("childSCWidgets.size", childSCWidgets->size());
minZIndex = maxZIndex = 0; // Just to have some defined values.
+ DBG_OBJ_SET_NUM ("minZIndex", minZIndex);
+ DBG_OBJ_SET_NUM ("maxZIndex", maxZIndex);
}
StackingContextMgr::~StackingContextMgr ()
@@ -55,6 +57,9 @@ void StackingContextMgr::addChildSCWidget (Widget *widget)
maxZIndex = max (maxZIndex, widget->getStyle()->zIndex);
}
+ DBG_OBJ_SET_NUM ("minZIndex", minZIndex);
+ DBG_OBJ_SET_NUM ("maxZIndex", maxZIndex);
+
childSCWidgets->put (widget);
DBG_OBJ_SET_NUM ("childSCWidgets.size", childSCWidgets->size());
DBG_OBJ_ARRSET_PTR ("childSCWidgets", childSCWidgets->size() - 1, widget);
@@ -123,8 +128,10 @@ void StackingContextMgr::draw (View *view, Rectangle *area,
(*index)++;
}
- if (*interruptedWidget == NULL)
+ if (*interruptedWidget == NULL) {
(*zIndexOffset)++;
+ *index = 0;
+ }
DBG_OBJ_MSG_END ();
}
@@ -199,8 +206,10 @@ Widget *StackingContextMgr::getWidgetAtPoint (int x, int y,
(*index)--;
}
- if (*interruptedWidget == NULL)
+ if (*interruptedWidget == NULL) {
(*zIndexOffset)--;
+ *index = childSCWidgets->size () - 1;
+ }
DBG_OBJ_MSG_END ();
}