bool
ScrollGroup::covers_canvas (Duple const& d) const
{
- boost::optional<Rect> r = bounding_box ();
+ boost::optional<Rect> r = bounding_box ();
if (!r) {
return false;
}
- return r->contains (d);
+ /* Bounding box is in item coordinates, but we need
+ to consider the position of the bounding box
+ within the canvas.
+ */
+
+ return r->translate (position()).contains (d);
}
bool
return false;
}
- Rect w = r->translate (-_scroll_offset);
-
- return w.contains (d);
+ /* Bounding box is in item coordinates, but we need
+ to consider the position of the bounding box
+ within the canvas.
+ */
+
+ return r->translate (position()).contains (d);
}