13
0

Make primary-modifier+scroll wheel zoom respect zoom focus setting. Fixes #2515.

git-svn-id: svn://localhost/ardour2/branches/3.0@7023 d708f5d6-7413-0410-9779-e7cbd77b26cf
This commit is contained in:
Carl Hetherington 2010-04-29 23:15:09 +00:00
parent d57a472c16
commit 73b67f16d4

View File

@ -77,22 +77,7 @@ Editor::track_canvas_scroll (GdkEventScroll* ev)
switch (direction) {
case GDK_SCROLL_UP:
if (Keyboard::modifier_state_equals (ev->state, Keyboard::PrimaryModifier)) {
//if (ev->state == GDK_CONTROL_MASK) {
/* XXX
the ev->x will be out of step with the canvas
if we're in mid zoom, so we have to get the damn mouse
pointer again
*/
track_canvas->get_pointer (x, y);
track_canvas->window_to_world (x, y, wx, wy);
GdkEvent event;
event.type = GDK_BUTTON_RELEASE;
event.button.x = wx;
event.button.y = wy;
nframes64_t where = event_frame (&event, 0, 0);
temporal_zoom_to_frame (false, where);
temporal_zoom_step (false);
return true;
} else if (Keyboard::modifier_state_equals (ev->state, Keyboard::SecondaryModifier)) {
direction = GDK_SCROLL_LEFT;
@ -117,17 +102,7 @@ Editor::track_canvas_scroll (GdkEventScroll* ev)
case GDK_SCROLL_DOWN:
if (Keyboard::modifier_state_equals (ev->state, Keyboard::PrimaryModifier)) {
//if (ev->state == GDK_CONTROL_MASK) {
track_canvas->get_pointer (x, y);
track_canvas->window_to_world (x, y, wx, wy);
GdkEvent event;
event.type = GDK_BUTTON_RELEASE;
event.button.x = wx;
event.button.y = wy;
nframes64_t where = event_frame (&event, 0, 0);
temporal_zoom_to_frame (true, where);
temporal_zoom_step (true);
return true;
} else if (Keyboard::modifier_state_equals (ev->state, Keyboard::SecondaryModifier)) {
direction = GDK_SCROLL_RIGHT;