From: Vladimir Nadvornik Date: Wed, 10 Sep 2008 20:37:30 +0000 (+0000) Subject: use SHIFT for connected scroll and zoom X-Git-Tag: v1.0.0~756 X-Git-Url: http://geeqie.org/cgi-bin/gitweb.cgi?p=geeqie.git;a=commitdiff_plain;h=d4bc6c7e66a32bb0cc5a3e889ce8bef9b1374908 use SHIFT for connected scroll and zoom SHIFT + keys or mouse: affects all split windows keys or mouse: affects only active window CONTROL + mouse: moves fast (originally it was SHIFT + mouse) --- diff --git a/src/layout_image.c b/src/layout_image.c index 0b1f70fc..1273ed7c 100644 --- a/src/layout_image.c +++ b/src/layout_image.c @@ -283,27 +283,27 @@ static void li_pop_menu_zoom_in_cb(GtkWidget *widget, gpointer data) { LayoutWindow *lw = data; - layout_image_zoom_adjust(lw, get_zoom_increment()); + layout_image_zoom_adjust(lw, get_zoom_increment(), FALSE); } static void li_pop_menu_zoom_out_cb(GtkWidget *widget, gpointer data) { LayoutWindow *lw = data; - layout_image_zoom_adjust(lw, -get_zoom_increment()); + layout_image_zoom_adjust(lw, -get_zoom_increment(), FALSE); } static void li_pop_menu_zoom_1_1_cb(GtkWidget *widget, gpointer data) { LayoutWindow *lw = data; - layout_image_zoom_set(lw, 1.0); + layout_image_zoom_set(lw, 1.0, FALSE); } static void li_pop_menu_zoom_fit_cb(GtkWidget *widget, gpointer data) { LayoutWindow *lw = data; - layout_image_zoom_set(lw, 0.0); + layout_image_zoom_set(lw, 0.0, FALSE); } static void li_pop_menu_edit_cb(GtkWidget *widget, gpointer data) @@ -788,7 +788,7 @@ void layout_image_to_root(LayoutWindow *lw) *---------------------------------------------------------------------------- */ -void layout_image_scroll(LayoutWindow *lw, gint x, gint y) +void layout_image_scroll(LayoutWindow *lw, gint x, gint y, gboolean connect_scroll) { gdouble dx, dy; gint width, height, i; @@ -796,7 +796,7 @@ void layout_image_scroll(LayoutWindow *lw, gint x, gint y) image_scroll(lw->image, x, y); - if (!lw->connect_scroll) return; + if (!connect_scroll) return; image_get_image_size(lw->image, &width, &height); dx = (gdouble) x / width; @@ -816,14 +816,14 @@ void layout_image_scroll(LayoutWindow *lw, gint x, gint y) } -void layout_image_zoom_adjust(LayoutWindow *lw, gdouble increment) +void layout_image_zoom_adjust(LayoutWindow *lw, gdouble increment, gboolean connect_zoom) { gint i; if (!layout_valid(&lw)) return; image_zoom_adjust(lw->image, increment); - if (!lw->connect_zoom) return; + if (!connect_zoom) return; for (i = 0; i < MAX_SPLIT_IMAGES; i++) { @@ -832,14 +832,14 @@ void layout_image_zoom_adjust(LayoutWindow *lw, gdouble increment) } } -void layout_image_zoom_adjust_at_point(LayoutWindow *lw, gdouble increment, gint x, gint y) +void layout_image_zoom_adjust_at_point(LayoutWindow *lw, gdouble increment, gint x, gint y, gboolean connect_zoom) { gint i; if (!layout_valid(&lw)) return; image_zoom_adjust_at_point(lw->image, increment, x, y); - if (!lw->connect_zoom) return; + if (!connect_zoom) return; for (i = 0; i < MAX_SPLIT_IMAGES; i++) { @@ -848,14 +848,14 @@ void layout_image_zoom_adjust_at_point(LayoutWindow *lw, gdouble increment, gint } } -void layout_image_zoom_set(LayoutWindow *lw, gdouble zoom) +void layout_image_zoom_set(LayoutWindow *lw, gdouble zoom, gboolean connect_zoom) { gint i; if (!layout_valid(&lw)) return; image_zoom_set(lw->image, zoom); - if (!lw->connect_zoom) return; + if (!connect_zoom) return; for (i = 0; i < MAX_SPLIT_IMAGES; i++) { @@ -864,11 +864,20 @@ void layout_image_zoom_set(LayoutWindow *lw, gdouble zoom) } } -void layout_image_zoom_set_fill_geometry(LayoutWindow *lw, gint vertical) +void layout_image_zoom_set_fill_geometry(LayoutWindow *lw, gint vertical, gboolean connect_zoom) { + gint i; if (!layout_valid(&lw)) return; image_zoom_set_fill_geometry(lw->image, vertical); + + if (!connect_zoom) return; + + for (i = 0; i < MAX_SPLIT_IMAGES; i++) + { + if (lw->split_images[i] && lw->split_images[i] != lw->image) + image_zoom_set_fill_geometry(lw->split_images[i], vertical); + } } void layout_image_alter(LayoutWindow *lw, AlterType type) @@ -1360,16 +1369,16 @@ static void layout_image_scroll_cb(ImageWindow *imd, GdkEventScroll *event, gpoi switch (event->direction) { case GDK_SCROLL_UP: - layout_image_zoom_adjust_at_point(lw, get_zoom_increment(), event->x, event->y); + layout_image_zoom_adjust_at_point(lw, get_zoom_increment(), event->x, event->y, event->state & GDK_SHIFT_MASK); break; case GDK_SCROLL_DOWN: - layout_image_zoom_adjust_at_point(lw, -get_zoom_increment(), event->x, event->y); + layout_image_zoom_adjust_at_point(lw, -get_zoom_increment(), event->x, event->y, event->state & GDK_SHIFT_MASK); break; default: break; } } - else if ( (event->state & GDK_SHIFT_MASK) != (guint) (options->mousewheel_scrolls)) + else if (options->mousewheel_scrolls) { switch (event->direction) { @@ -1410,7 +1419,7 @@ static void layout_image_drag_cb(ImageWindow *imd, GdkEventButton *event, gdoubl gint i; LayoutWindow *lw = data; - if (!lw->connect_scroll) return; + if (!(event->state & GDK_SHIFT_MASK)) return; for (i = 0; i < MAX_SPLIT_IMAGES; i++) { diff --git a/src/layout_image.h b/src/layout_image.h index 9c96916f..d1212caf 100644 --- a/src/layout_image.h +++ b/src/layout_image.h @@ -46,11 +46,11 @@ CollectionData *layout_image_get_collection(LayoutWindow *lw, CollectInfo **info gint layout_image_get_index(LayoutWindow *lw); -void layout_image_scroll(LayoutWindow *lw, gint x, gint y); -void layout_image_zoom_adjust(LayoutWindow *lw, gdouble increment); -void layout_image_zoom_adjust_at_point(LayoutWindow *lw, gdouble increment, gint x, gint y); -void layout_image_zoom_set(LayoutWindow *lw, gdouble zoom); -void layout_image_zoom_set_fill_geometry(LayoutWindow *lw, gint vertical); +void layout_image_scroll(LayoutWindow *lw, gint x, gint y, gboolean connect_scroll); +void layout_image_zoom_adjust(LayoutWindow *lw, gdouble increment, gboolean connect_zoom); +void layout_image_zoom_adjust_at_point(LayoutWindow *lw, gdouble increment, gint x, gint y, gboolean connect_zoom); +void layout_image_zoom_set(LayoutWindow *lw, gdouble zoom, gboolean connect_zoom); +void layout_image_zoom_set_fill_geometry(LayoutWindow *lw, gint vertical, gboolean connect_zoom); void layout_image_alter(LayoutWindow *lw, AlterType type); void layout_image_next(LayoutWindow *lw); diff --git a/src/layout_util.c b/src/layout_util.c index 787b17fe..75662c6c 100644 --- a/src/layout_util.c +++ b/src/layout_util.c @@ -156,14 +156,8 @@ gint layout_key_press_cb(GtkWidget *widget, GdkEventKey *event, gpointer data) if (x != 0 || y!= 0) { - if (event->state & GDK_SHIFT_MASK) - { - x *= 3; - y *= 3; - } - keyboard_scroll_calc(&x, &y, event); - layout_image_scroll(lw, x, y); + layout_image_scroll(lw, x, y, (event->state & GDK_SHIFT_MASK)); } return stop_signal; @@ -392,113 +386,186 @@ static void layout_menu_wallpaper_cb(GtkAction *action, gpointer data) layout_image_to_root(lw); } +/* single window zoom */ static void layout_menu_zoom_in_cb(GtkAction *action, gpointer data) { LayoutWindow *lw = data; - layout_image_zoom_adjust(lw, get_zoom_increment()); + layout_image_zoom_adjust(lw, get_zoom_increment(), FALSE); } static void layout_menu_zoom_out_cb(GtkAction *action, gpointer data) { LayoutWindow *lw = data; - layout_image_zoom_adjust(lw, -get_zoom_increment()); + layout_image_zoom_adjust(lw, -get_zoom_increment(), FALSE); } static void layout_menu_zoom_1_1_cb(GtkAction *action, gpointer data) { LayoutWindow *lw = data; - layout_image_zoom_set(lw, 1.0); + layout_image_zoom_set(lw, 1.0, FALSE); } static void layout_menu_zoom_fit_cb(GtkAction *action, gpointer data) { LayoutWindow *lw = data; - layout_image_zoom_set(lw, 0.0); + layout_image_zoom_set(lw, 0.0, FALSE); } static void layout_menu_zoom_fit_hor_cb(GtkAction *action, gpointer data) { LayoutWindow *lw = data; - layout_image_zoom_set_fill_geometry(lw, TRUE); + layout_image_zoom_set_fill_geometry(lw, TRUE, FALSE); } static void layout_menu_zoom_fit_vert_cb(GtkAction *action, gpointer data) { LayoutWindow *lw = data; - layout_image_zoom_set_fill_geometry(lw, FALSE); + layout_image_zoom_set_fill_geometry(lw, FALSE, FALSE); } static void layout_menu_zoom_2_1_cb(GtkAction *action, gpointer data) { LayoutWindow *lw = data; - layout_image_zoom_set(lw, 2.0); + layout_image_zoom_set(lw, 2.0, FALSE); } static void layout_menu_zoom_3_1_cb(GtkAction *action, gpointer data) { LayoutWindow *lw = data; - layout_image_zoom_set(lw, 3.0); + layout_image_zoom_set(lw, 3.0, FALSE); } static void layout_menu_zoom_4_1_cb(GtkAction *action, gpointer data) { LayoutWindow *lw = data; - layout_image_zoom_set(lw, 4.0); + layout_image_zoom_set(lw, 4.0, FALSE); } static void layout_menu_zoom_1_2_cb(GtkAction *action, gpointer data) { LayoutWindow *lw = data; - layout_image_zoom_set(lw, -2.0); + layout_image_zoom_set(lw, -2.0, FALSE); } static void layout_menu_zoom_1_3_cb(GtkAction *action, gpointer data) { LayoutWindow *lw = data; - layout_image_zoom_set(lw, -3.0); + layout_image_zoom_set(lw, -3.0, FALSE); } static void layout_menu_zoom_1_4_cb(GtkAction *action, gpointer data) { LayoutWindow *lw = data; - layout_image_zoom_set(lw, -4.0); + layout_image_zoom_set(lw, -4.0, FALSE); } +/* connected zoom */ +static void layout_menu_connect_zoom_in_cb(GtkAction *action, gpointer data) +{ + LayoutWindow *lw = data; + + layout_image_zoom_adjust(lw, get_zoom_increment(), TRUE); +} -static void layout_menu_split_cb(GtkRadioAction *action, GtkRadioAction *current, gpointer data) +static void layout_menu_connect_zoom_out_cb(GtkAction *action, gpointer data) { LayoutWindow *lw = data; - ImageSplitMode mode; - layout_exit_fullscreen(lw); + layout_image_zoom_adjust(lw, -get_zoom_increment(), TRUE); +} - mode = gtk_radio_action_get_current_value(action); - if (mode == lw->split_mode) mode = 0; /* toggle back */ +static void layout_menu_connect_zoom_1_1_cb(GtkAction *action, gpointer data) +{ + LayoutWindow *lw = data; - layout_split_change(lw, mode); + layout_image_zoom_set(lw, 1.0, TRUE); +} + +static void layout_menu_connect_zoom_fit_cb(GtkAction *action, gpointer data) +{ + LayoutWindow *lw = data; + + layout_image_zoom_set(lw, 0.0, TRUE); +} + +static void layout_menu_connect_zoom_fit_hor_cb(GtkAction *action, gpointer data) +{ + LayoutWindow *lw = data; + + layout_image_zoom_set_fill_geometry(lw, TRUE, TRUE); +} + +static void layout_menu_connect_zoom_fit_vert_cb(GtkAction *action, gpointer data) +{ + LayoutWindow *lw = data; + + layout_image_zoom_set_fill_geometry(lw, FALSE, TRUE); +} + +static void layout_menu_connect_zoom_2_1_cb(GtkAction *action, gpointer data) +{ + LayoutWindow *lw = data; + + layout_image_zoom_set(lw, 2.0, TRUE); +} + +static void layout_menu_connect_zoom_3_1_cb(GtkAction *action, gpointer data) +{ + LayoutWindow *lw = data; + + layout_image_zoom_set(lw, 3.0, TRUE); +} +static void layout_menu_connect_zoom_4_1_cb(GtkAction *action, gpointer data) +{ + LayoutWindow *lw = data; + + layout_image_zoom_set(lw, 4.0, TRUE); +} + +static void layout_menu_connect_zoom_1_2_cb(GtkAction *action, gpointer data) +{ + LayoutWindow *lw = data; + + layout_image_zoom_set(lw, -2.0, TRUE); } -static void layout_menu_connect_scroll_cb(GtkToggleAction *action, gpointer data) +static void layout_menu_connect_zoom_1_3_cb(GtkAction *action, gpointer data) { LayoutWindow *lw = data; - lw->connect_scroll = gtk_toggle_action_get_active(action); + + layout_image_zoom_set(lw, -3.0, TRUE); } -static void layout_menu_connect_zoom_cb(GtkToggleAction *action, gpointer data) +static void layout_menu_connect_zoom_1_4_cb(GtkAction *action, gpointer data) { LayoutWindow *lw = data; - lw->connect_zoom = gtk_toggle_action_get_active(action); + + layout_image_zoom_set(lw, -4.0, TRUE); +} + + +static void layout_menu_split_cb(GtkRadioAction *action, GtkRadioAction *current, gpointer data) +{ + LayoutWindow *lw = data; + ImageSplitMode mode; + + layout_exit_fullscreen(lw); + + mode = gtk_radio_action_get_current_value(action); + if (mode == lw->split_mode) mode = 0; /* toggle back */ + + layout_split_change(lw, mode); } @@ -1030,6 +1097,7 @@ static GtkActionEntry menu_entries[] = { { "ViewMenu", NULL, N_("_View"), NULL, NULL, NULL }, { "DirMenu", NULL, N_("_View Directory as"), NULL, NULL, NULL }, { "ZoomMenu", NULL, N_("_Zoom"), NULL, NULL, NULL }, + { "ConnectZoomMenu", NULL, N_("_Connected Zoom"), NULL, NULL, NULL }, { "SplitMenu", NULL, N_("_Split"), NULL, NULL, NULL }, { "HelpMenu", NULL, N_("_Help"), NULL, NULL, NULL }, @@ -1091,8 +1159,7 @@ static GtkActionEntry menu_entries[] = { { "Wallpaper", NULL, N_("Set as _wallpaper"),NULL, NULL, CB(layout_menu_wallpaper_cb) }, { "ZoomIn", GTK_STOCK_ZOOM_IN, N_("Zoom _in"), "equal", NULL, CB(layout_menu_zoom_in_cb) }, - { "ZoomInAlt1",GTK_STOCK_ZOOM_IN, N_("Zoom _in"), "plus", NULL, CB(layout_menu_zoom_in_cb) }, - { "ZoomInAlt2",GTK_STOCK_ZOOM_IN, N_("Zoom _in"), "KP_Add", NULL, CB(layout_menu_zoom_in_cb) }, + { "ZoomInAlt1",GTK_STOCK_ZOOM_IN, N_("Zoom _in"), "KP_Add", NULL, CB(layout_menu_zoom_in_cb) }, { "ZoomOut", GTK_STOCK_ZOOM_OUT, N_("Zoom _out"), "minus", NULL, CB(layout_menu_zoom_out_cb) }, { "ZoomOutAlt1",GTK_STOCK_ZOOM_OUT, N_("Zoom _out"), "KP_Subtract", NULL, CB(layout_menu_zoom_out_cb) }, { "Zoom100", GTK_STOCK_ZOOM_100, N_("Zoom _1:1"), "Z", NULL, CB(layout_menu_zoom_1_1_cb) }, @@ -1100,7 +1167,7 @@ static GtkActionEntry menu_entries[] = { { "ZoomFit", GTK_STOCK_ZOOM_FIT, N_("_Zoom to fit"), "X", NULL, CB(layout_menu_zoom_fit_cb) }, { "ZoomFitAlt1",GTK_STOCK_ZOOM_FIT, N_("_Zoom to fit"), "KP_Multiply", NULL, CB(layout_menu_zoom_fit_cb) }, { "ZoomFillHor", NULL, N_("Fit _Horizontally"),"H", NULL, CB(layout_menu_zoom_fit_hor_cb) }, - { "ZoomFillVert", NULL, N_("Fit _Vorizontally"),"W", NULL, CB(layout_menu_zoom_fit_vert_cb) }, + { "ZoomFillVert", NULL, N_("Fit _Vertically"), "W", NULL, CB(layout_menu_zoom_fit_vert_cb) }, { "Zoom200", NULL, N_("Zoom _2:1"), NULL, NULL, CB(layout_menu_zoom_2_1_cb) }, { "Zoom300", NULL, N_("Zoom _3:1"), NULL, NULL, CB(layout_menu_zoom_3_1_cb) }, { "Zoom400", NULL, N_("Zoom _4:1"), NULL, NULL, CB(layout_menu_zoom_4_1_cb) }, @@ -1108,6 +1175,23 @@ static GtkActionEntry menu_entries[] = { { "Zoom33", NULL, N_("Zoom 1:3"), NULL, NULL, CB(layout_menu_zoom_1_3_cb) }, { "Zoom25", NULL, N_("Zoom 1:4"), NULL, NULL, CB(layout_menu_zoom_1_4_cb) }, + { "ConnectZoomIn", GTK_STOCK_ZOOM_IN, N_("Zoom _in"), "plus", NULL, CB(layout_menu_connect_zoom_in_cb) }, + { "ConnectZoomInAlt1",GTK_STOCK_ZOOM_IN, N_("Zoom _in"), "KP_Add", NULL, CB(layout_menu_connect_zoom_in_cb) }, + { "ConnectZoomOut", GTK_STOCK_ZOOM_OUT, N_("Zoom _out"), "underscore", NULL, CB(layout_menu_connect_zoom_out_cb) }, + { "ConnectZoomOutAlt1",GTK_STOCK_ZOOM_OUT, N_("Zoom _out"), "KP_Subtract", NULL, CB(layout_menu_connect_zoom_out_cb) }, + { "ConnectZoom100", GTK_STOCK_ZOOM_100, N_("Zoom _1:1"), "Z", NULL, CB(layout_menu_connect_zoom_1_1_cb) }, + { "ConnectZoom100Alt1",GTK_STOCK_ZOOM_100, N_("Zoom _1:1"), "KP_Divide", NULL, CB(layout_menu_connect_zoom_1_1_cb) }, + { "ConnectZoomFit", GTK_STOCK_ZOOM_FIT, N_("_Zoom to fit"), "X", NULL, CB(layout_menu_connect_zoom_fit_cb) }, + { "ConnectZoomFitAlt1",GTK_STOCK_ZOOM_FIT, N_("_Zoom to fit"), "KP_Multiply", NULL, CB(layout_menu_connect_zoom_fit_cb) }, + { "ConnectZoomFillHor", NULL, N_("Fit _Horizontally"),"H", NULL, CB(layout_menu_connect_zoom_fit_hor_cb) }, + { "ConnectZoomFillVert", NULL, N_("Fit _Vertically"), "W", NULL, CB(layout_menu_connect_zoom_fit_vert_cb) }, + { "ConnectZoom200", NULL, N_("Zoom _2:1"), NULL, NULL, CB(layout_menu_connect_zoom_2_1_cb) }, + { "ConnectZoom300", NULL, N_("Zoom _3:1"), NULL, NULL, CB(layout_menu_connect_zoom_3_1_cb) }, + { "ConnectZoom400", NULL, N_("Zoom _4:1"), NULL, NULL, CB(layout_menu_connect_zoom_4_1_cb) }, + { "ConnectZoom50", NULL, N_("Zoom 1:2"), NULL, NULL, CB(layout_menu_connect_zoom_1_2_cb) }, + { "ConnectZoom33", NULL, N_("Zoom 1:3"), NULL, NULL, CB(layout_menu_connect_zoom_1_3_cb) }, + { "ConnectZoom25", NULL, N_("Zoom 1:4"), NULL, NULL, CB(layout_menu_connect_zoom_1_4_cb) }, + { "ViewInNewWindow", NULL, N_("_View in new window"), "V", NULL, CB(layout_menu_view_in_new_window_cb) }, @@ -1138,8 +1222,6 @@ static GtkToggleActionEntry menu_toggle_entries[] = { { "SBarKeywords", NULL, N_("_Keywords"), "K", NULL, CB(layout_menu_bar_info_cb), FALSE }, { "SBarExif", NULL, N_("E_xif data"), "E", NULL, CB(layout_menu_bar_exif_cb), FALSE }, { "SBarSort", NULL, N_("Sort _manager"), "S", NULL, CB(layout_menu_bar_sort_cb), FALSE }, - { "ConnectScroll", NULL, N_("Co_nnected scroll"),"U", NULL, CB(layout_menu_connect_scroll_cb), FALSE }, - { "ConnectZoom", NULL, N_("C_onnected zoom"), "Y", NULL, CB(layout_menu_connect_zoom_cb), FALSE }, { "SlideShow", NULL, N_("Toggle _slideshow"),"S", NULL, CB(layout_menu_slideshow_cb), FALSE }, }; @@ -1242,6 +1324,20 @@ static const gchar *menu_ui_description = " " " " " " +" " +" " +" " +" " +" " +" " +" " +" " +" " +" " +" " +" " +" " +" " " " " " " " @@ -1249,8 +1345,6 @@ static const gchar *menu_ui_description = " " " " " " -" " -" " " " " " " " @@ -1295,15 +1389,20 @@ static const gchar *menu_ui_description = "" "" "" -"" -"" -"" -"" -"" "" "" "" "" + +"" +"" +"" +"" + +"" +"" +"" +"" ""; @@ -1486,28 +1585,28 @@ static void layout_button_zoom_in_cb(GtkWidget *widget, gpointer data) { LayoutWindow *lw = data; - layout_image_zoom_adjust(lw, get_zoom_increment()); + layout_image_zoom_adjust(lw, get_zoom_increment(), TRUE); } static void layout_button_zoom_out_cb(GtkWidget *widget, gpointer data) { LayoutWindow *lw = data; - layout_image_zoom_adjust(lw, -get_zoom_increment()); + layout_image_zoom_adjust(lw, -get_zoom_increment(), TRUE); } static void layout_button_zoom_fit_cb(GtkWidget *widget, gpointer data) { LayoutWindow *lw = data; - layout_image_zoom_set(lw, 0.0); + layout_image_zoom_set(lw, 0.0, TRUE); } static void layout_button_zoom_1_1_cb(GtkWidget *widget, gpointer data) { LayoutWindow *lw = data; - layout_image_zoom_set(lw, 1.0); + layout_image_zoom_set(lw, 1.0, TRUE); } static void layout_button_config_cb(GtkWidget *widget, gpointer data) diff --git a/src/lirc.c b/src/lirc.c index 9053f83b..ef576329 100644 --- a/src/lirc.c +++ b/src/lirc.c @@ -109,7 +109,7 @@ static gboolean lirc_input_callback(GIOChannel *source, GIOCondition condition, fl_parm = atoi(ptr) / 10.0; if (fl_parm <= 0.01) fl_parm = get_zoom_increment(); - layout_image_zoom_adjust(lw, fl_parm); + layout_image_zoom_adjust(lw, fl_parm, FALSE); } else if (g_ascii_strncasecmp("ZOOM_OUT", cmd, 8) == 0) { @@ -118,11 +118,11 @@ static gboolean lirc_input_callback(GIOChannel *source, GIOCondition condition, fl_parm = atoi(ptr) / 10.0; if (fl_parm <= 0.01) fl_parm = get_zoom_increment(); - layout_image_zoom_adjust(lw, -fl_parm); + layout_image_zoom_adjust(lw, -fl_parm, FALSE); } else if (g_ascii_strcasecmp("ZOOM_MAX", cmd) == 0) { - layout_image_zoom_set(lw, 0.0); + layout_image_zoom_set(lw, 0.0, FALSE); } else if (g_ascii_strncasecmp("SET_ZOOM", cmd, 8) == 0) { @@ -131,7 +131,7 @@ static gboolean lirc_input_callback(GIOChannel *source, GIOCondition condition, i_parm = atoi(ptr); if (i_parm <= 0) i_parm = 1; - layout_image_zoom_set(lw, 1.0); + layout_image_zoom_set(lw, 1.0, FALSE); } else if (g_ascii_strncasecmp("SET_INV_ZOOM", cmd, 12) == 0) { @@ -140,7 +140,7 @@ static gboolean lirc_input_callback(GIOChannel *source, GIOCondition condition, i_parm = atoi(ptr); if (i_parm <= 0) i_parm = 1; - layout_image_zoom_set(lw, -i_parm); + layout_image_zoom_set(lw, -i_parm, FALSE); } else if (g_ascii_strcasecmp("FIRST", cmd) == 0) { diff --git a/src/pixbuf-renderer.c b/src/pixbuf-renderer.c index 7143bcfd..e62443a7 100644 --- a/src/pixbuf-renderer.c +++ b/src/pixbuf-renderer.c @@ -3666,7 +3666,7 @@ static gint pr_mouse_motion_cb(GtkWidget *widget, GdkEventButton *bevent, gpoint widget_set_cursor(widget, GDK_FLEUR); } - if (bevent->state & GDK_SHIFT_MASK) + if (bevent->state & GDK_CONTROL_MASK) { accel = PR_PAN_SHIFT_MULTIPLIER; } @@ -3748,7 +3748,7 @@ static gint pr_mouse_release_cb(GtkWidget *widget, GdkEventButton *bevent, gpoin if (pr->drag_moved < PR_DRAG_SCROLL_THRESHHOLD) { - if (bevent->button == MOUSE_BUTTON_LEFT && (bevent->state & GDK_SHIFT_MASK)) + if (bevent->button == MOUSE_BUTTON_LEFT && (bevent->state & GDK_CONTROL_MASK)) { pr_scroller_start(pr, bevent->x, bevent->y); } diff --git a/src/typedefs.h b/src/typedefs.h index e63d3d93..def6a646 100644 --- a/src/typedefs.h +++ b/src/typedefs.h @@ -476,8 +476,6 @@ struct _LayoutWindow GtkWidget *split_image_widget; GtkSizeGroup *split_image_sizegroup; - gint connect_zoom, connect_scroll; - /* tools window (float) */ GtkWidget *tools;