mirror of
https://gitlab.uni-freiburg.de/opensourcevdi/virt-viewer
synced 2025-12-27 23:00:54 +00:00
Add support to use numpad accelarators for zoom-{in.out,reset}
As virt-viewer uses GtkAccelMap for shortcuts and that GTK only can have one key binding per accelerator (in accel_map_add_entry), let's also add support specificly for the numpad keys in the virt-viewer code https://bugzilla.redhat.com/show_bug.cgi?id=883433
This commit is contained in:
parent
dc3db6302e
commit
3a168815b7
@ -57,6 +57,9 @@ G_BEGIN_DECLS
|
||||
#define GDK_0 GDK_KEY_0
|
||||
#define GDK_plus GDK_KEY_plus
|
||||
#define GDK_minus GDK_KEY_minus
|
||||
#define GDK_KP_Add GDK_KEY_KP_Add
|
||||
#define GDK_KP_Subtract GDK_KEY_KP_Subtract
|
||||
#define GDK_KP_0 GDK_KEY_KP_0
|
||||
#endif
|
||||
|
||||
#if !GTK_CHECK_VERSION(3, 0, 0)
|
||||
|
||||
@ -1801,8 +1801,11 @@ virt_viewer_app_constructor (GType gtype,
|
||||
gtk_accel_map_add_entry("<virt-viewer>/view/toggle-fullscreen", GDK_F11, 0);
|
||||
gtk_accel_map_add_entry("<virt-viewer>/view/release-cursor", GDK_F12, GDK_SHIFT_MASK);
|
||||
gtk_accel_map_add_entry("<virt-viewer>/view/zoom-reset", GDK_0, GDK_CONTROL_MASK);
|
||||
gtk_accel_map_add_entry("<virt-viewer>/view/kp-zoom-reset", GDK_KP_0, GDK_CONTROL_MASK);
|
||||
gtk_accel_map_add_entry("<virt-viewer>/view/zoom-out", GDK_minus, GDK_CONTROL_MASK);
|
||||
gtk_accel_map_add_entry("<virt-viewer>/view/kp-zoom-out", GDK_KP_Subtract, GDK_CONTROL_MASK);
|
||||
gtk_accel_map_add_entry("<virt-viewer>/view/zoom-in", GDK_plus, GDK_CONTROL_MASK);
|
||||
gtk_accel_map_add_entry("<virt-viewer>/view/kp-zoom-in", GDK_KP_Add, GDK_CONTROL_MASK);
|
||||
gtk_accel_map_add_entry("<virt-viewer>/send/secure-attention", GDK_End, GDK_CONTROL_MASK | GDK_MOD1_MASK);
|
||||
|
||||
virt_viewer_app_set_fullscreen(self, opt_fullscreen);
|
||||
@ -1980,8 +1983,11 @@ virt_viewer_app_clear_hotkeys(VirtViewerApp *self)
|
||||
gtk_accel_map_change_entry("<virt-viewer>/view/toggle-fullscreen", 0, 0, TRUE);
|
||||
gtk_accel_map_change_entry("<virt-viewer>/view/release-cursor", 0, 0, TRUE);
|
||||
gtk_accel_map_change_entry("<virt-viewer>/view/zoom-reset", 0, 0, TRUE);
|
||||
gtk_accel_map_change_entry("<virt-viewer>/view/kp-zoom-reset", 0, 0, TRUE);
|
||||
gtk_accel_map_change_entry("<virt-viewer>/view/zoom-in", 0, 0, TRUE);
|
||||
gtk_accel_map_change_entry("<virt-viewer>/view/kp-zoom-in", 0, 0, TRUE);
|
||||
gtk_accel_map_change_entry("<virt-viewer>/view/zoom-out", 0, 0, TRUE);
|
||||
gtk_accel_map_change_entry("<virt-viewer>/view/kp-zoom-out", 0, 0, TRUE);
|
||||
gtk_accel_map_change_entry("<virt-viewer>/send/secure-attention", 0, 0, TRUE);
|
||||
virt_viewer_set_insert_smartcard_accel(self, 0, 0);
|
||||
virt_viewer_set_remove_smartcard_accel(self, 0, 0);
|
||||
|
||||
@ -137,6 +137,18 @@
|
||||
<signal name="activate" handler="virt_viewer_window_menu_view_zoom_in" swapped="no"/>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkImageMenuItem" id="menu-view-kp-zoom-in">
|
||||
<property name="accel_path"><virt-viewer>/view/kp-zoom-in</property>
|
||||
<property name="label">gtk-zoom-in</property>
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="use_action_appearance">False</property>
|
||||
<property name="use_underline">True</property>
|
||||
<property name="use_stock">True</property>
|
||||
<signal name="activate" handler="virt_viewer_window_menu_view_zoom_in" swapped="no"/>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkImageMenuItem" id="menu-view-zoom-out">
|
||||
<property name="accel_path"><virt-viewer>/view/zoom-out</property>
|
||||
@ -149,6 +161,18 @@
|
||||
<signal name="activate" handler="virt_viewer_window_menu_view_zoom_out" swapped="no"/>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkImageMenuItem" id="menu-view-kp-zoom-out">
|
||||
<property name="accel_path"><virt-viewer>/view/kp-zoom-out</property>
|
||||
<property name="label">gtk-zoom-out</property>
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="use_action_appearance">False</property>
|
||||
<property name="use_underline">True</property>
|
||||
<property name="use_stock">True</property>
|
||||
<signal name="activate" handler="virt_viewer_window_menu_view_zoom_out" swapped="no"/>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkSeparatorMenuItem" id="separatormenuitem4">
|
||||
<property name="visible">True</property>
|
||||
@ -167,6 +191,18 @@
|
||||
<signal name="activate" handler="virt_viewer_window_menu_view_zoom_reset" swapped="no"/>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkImageMenuItem" id="menu-view-kp-zoom-reset">
|
||||
<property name="accel_path"><virt-viewer>/view/kp-zoom-reset</property>
|
||||
<property name="label">gtk-zoom-100</property>
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="use_action_appearance">False</property>
|
||||
<property name="use_underline">True</property>
|
||||
<property name="use_stock">True</property>
|
||||
<signal name="activate" handler="virt_viewer_window_menu_view_zoom_reset" swapped="no"/>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
|
||||
Loading…
Reference in New Issue
Block a user