aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--dw/outofflowmgr.cc9
-rw-r--r--dw/outofflowmgr.hh2
2 files changed, 9 insertions, 2 deletions
diff --git a/dw/outofflowmgr.cc b/dw/outofflowmgr.cc
index b866ec50..519cf8b0 100644
--- a/dw/outofflowmgr.cc
+++ b/dw/outofflowmgr.cc
@@ -606,8 +606,13 @@ void OutOfFlowMgr::tellPositionOrNot (Widget *widget, int y, bool positioned)
listSame->change (vloat);
- // Only this float has been changed (see above), so only this float
- // has to be tested against all textblocks.
+ checkCoverage (vloat, oldPositioned, oldY);
+}
+
+void OutOfFlowMgr::checkCoverage (Float *vloat, bool oldPositioned, int oldY)
+{
+ // Only this float has been changed (see tellPositionOrNot), so
+ // only this float has to be tested against all textblocks.
if (vloat->generatingBlock->wasAllocated () &&
// A change from "no position" to "no position" is uninteresting.
!(oldPositioned && !vloat->positioned)) {
diff --git a/dw/outofflowmgr.hh b/dw/outofflowmgr.hh
index 1d78a94e..6dc12279 100644
--- a/dw/outofflowmgr.hh
+++ b/dw/outofflowmgr.hh
@@ -110,6 +110,8 @@ private:
core::Widget *getWidgetAtPoint (SortedFloatsVector *list, int x, int y,
int level);
void tellPositionOrNot (core::Widget *widget, int y, bool positioned);
+ void checkCoverage (Float *vloat, bool oldPositioned, int oldY);
+
void getFloatsLists (Float *vloat, SortedFloatsVector **listSame,
SortedFloatsVector **listOpp);