projects
/
ardour.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
2691209
)
a better, more general fix for the previous Canvas::item_going_away() issue. There...
author
Paul Davis
<paul@linuxaudiosystems.com>
Mon, 20 Jan 2014 15:59:44 +0000
(10:59 -0500)
committer
Paul Davis
<paul@linuxaudiosystems.com>
Mon, 20 Jan 2014 15:59:44 +0000
(10:59 -0500)
libs/canvas/canvas.cc
patch
|
blob
|
history
diff --git
a/libs/canvas/canvas.cc
b/libs/canvas/canvas.cc
index 2cf0a7ea1592860102666a493abe393077455879..8a31d1fa9fede0faddf400d374d05d572f0aec6b 100644
(file)
--- a/
libs/canvas/canvas.cc
+++ b/
libs/canvas/canvas.cc
@@
-558,17
+558,10
@@
GtkCanvas::item_going_away (Item* item, boost::optional<Rect> bounding_box)
queue_draw_item_area (item, bounding_box.get ());
}
queue_draw_item_area (item, bounding_box.get ());
}
- /* no need to send a leave event to this item, since it is going away
- */
-
if (_new_current_item == item) {
_new_current_item = 0;
}
if (_new_current_item == item) {
_new_current_item = 0;
}
- if (_current_item == item) {
- _current_item = 0;
- }
-
if (_grabbed_item == item) {
_grabbed_item = 0;
}
if (_grabbed_item == item) {
_grabbed_item = 0;
}
@@
-577,11
+570,10
@@
GtkCanvas::item_going_away (Item* item, boost::optional<Rect> bounding_box)
_focused_item = 0;
}
_focused_item = 0;
}
- /* an item which ignores events can never be the current item
- so we do not need to repick the current item.
- */
-
- if (!item->ignore_events()) {
+ if (_current_item == item) {
+ /* no need to send a leave event to this item, since it is going away
+ */
+ _current_item = 0;
pick_current_item (0); // no mouse state
}
pick_current_item (0); // no mouse state
}