В свое время я долго искал хороший просмотрщик картинок. Под хорошим требовался как-бы юниксвей - т.е. смотреть на картинки, перематывать их и увеличивать. В gpicview меня очень расстроили бинды, а именно то, что чтобы увеличивать картинку нужно было зажимать ctrl. Дело в том, что там для перемотки картинок было 6 биндов: 4 стрелки направлений и скорл мыши. Я поменял скрол на исключительно увеличение картинки. сейчас закину небольшой пример как сделать там удобные бинды:
В main-win.c ищем функцию
gboolean on_scroll_event( GtkWidget* widget, GdkEventScroll* evt, MainWin* mw )
и редактируем по своему желанию.
Для клавиш -
gboolean on_key_press_event(GtkWidget* widget, GdkEventKey * key)
Вот мой вариант первой функции:
gboolean on_scroll_event( GtkWidget* widget, GdkEventScroll* evt, MainWin* mw )
{
    guint modifiers = gtk_accelerator_get_default_mod_mask();
    switch( evt->direction )
    {
    case GDK_SCROLL_UP:
        on_zoom_in( NULL, mw );
        break;
    case GDK_SCROLL_DOWN:
        on_zoom_out( NULL, mw );
        break;
    case GDK_SCROLL_LEFT:
        if( gtk_widget_get_default_direction () == GTK_TEXT_DIR_RTL )
            on_next( NULL, mw );
        else
            on_prev( NULL, mw );
        break;
    case GDK_SCROLL_RIGHT:
        if( gtk_widget_get_default_direction () == GTK_TEXT_DIR_RTL )
            on_prev( NULL, mw );
        else
            on_next( NULL, mw );
        break;
    }
    return TRUE;
}

З.ы. Может не тот раздел - модеры перенесите куда нужно.