cut ops can start with the mouse pointer not over a region
[ardour.git] / libs / canvas / item.cc
index 2d4f03a41fdb5bb997355570c2fca34edd0b35c5..9be1f62d9246f31a36bd4e961749d03894cdef12 100644 (file)
@@ -959,11 +959,14 @@ Item::add_items_at_point (Duple const point, vector<Item const *>& items) const
                return;
        }
 
-       /* recurse and add any items within our group that contain point */
+       /* recurse and add any items within our group that contain point.
+          Our children are only considered visible if we are, and similarly
+          only if we do not ignore events.
+       */
 
        vector<Item*> our_items;
 
-       if (!_items.empty()) {
+       if (!_items.empty() && visible() && !_ignore_events) {
                ensure_lut ();
                our_items = _lut->items_at_point (point);
        }