diff options
author | Lukas Venhoda <lvenhoda@redhat.com> | 2015-04-22 10:51:09 +0200 |
---|---|---|
committer | Fabiano FidĂȘncio <fidencio@redhat.com> | 2015-04-22 11:03:13 +0200 |
commit | 82d6280e5c60b70c69dbeb055af55acd51fe61c5 (patch) | |
tree | 4309f867687111fb72563eea98fdb7a4feb31d5e /src/virt-viewer-window.c | |
parent | 2b7d8717f9417511f9e12947d76e518149248d09 (diff) | |
download | virt-viewer-82d6280e5c60b70c69dbeb055af55acd51fe61c5.tar.gz virt-viewer-82d6280e5c60b70c69dbeb055af55acd51fe61c5.tar.xz virt-viewer-82d6280e5c60b70c69dbeb055af55acd51fe61c5.zip |
virt-viewer: Set toolbar buttons not sensitive when needed
File->Screenshot, File->Preferences, View->Zoom and Send keys are now
sensitive only while quest is connected.
Changed behaviour of zoom:
Previously, zoom could be set while quest wasn't connected. The zoom
would then be set on connection. There was no indication of current zoom
level while not connected to guest.
Now, the menu is not sensitive while not connected to guest. Zoom can
now be only modified while connected to guest, or from the command line.
Diffstat (limited to 'src/virt-viewer-window.c')
-rw-r--r-- | src/virt-viewer-window.c | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/src/virt-viewer-window.c b/src/virt-viewer-window.c index a1eceb5..29567c4 100644 --- a/src/virt-viewer-window.c +++ b/src/virt-viewer-window.c @@ -306,7 +306,9 @@ virt_viewer_window_init (VirtViewerWindow *self) priv->builder = virt_viewer_util_load_ui("virt-viewer.xml"); gtk_widget_set_sensitive(GTK_WIDGET(gtk_builder_get_object(self->priv->builder, "menu-send")), FALSE); + gtk_widget_set_sensitive(GTK_WIDGET(gtk_builder_get_object(self->priv->builder, "menu-view-zoom")), FALSE); gtk_widget_set_sensitive(GTK_WIDGET(gtk_builder_get_object(self->priv->builder, "menu-file-screenshot")), FALSE); + gtk_widget_set_sensitive(GTK_WIDGET(gtk_builder_get_object(self->priv->builder, "menu-preferences")), FALSE); gtk_builder_connect_signals(priv->builder, self); @@ -1283,6 +1285,29 @@ virt_viewer_window_set_usb_options_sensitive(VirtViewerWindow *self, gboolean se gtk_widget_set_visible(priv->toolbar_usb_device_selection, sensitive); } +void +virt_viewer_window_set_menus_sensitive(VirtViewerWindow *self, gboolean sensitive) +{ + VirtViewerWindowPrivate *priv; + GtkWidget *menu; + + g_return_if_fail(VIRT_VIEWER_IS_WINDOW(self)); + + priv = self->priv; + + menu = GTK_WIDGET(gtk_builder_get_object(priv->builder, "menu-preferences")); + gtk_widget_set_sensitive(menu, sensitive); + + menu = GTK_WIDGET(gtk_builder_get_object(priv->builder, "menu-file-screenshot")); + gtk_widget_set_sensitive(menu, sensitive); + + menu = GTK_WIDGET(gtk_builder_get_object(priv->builder, "menu-view-zoom")); + gtk_widget_set_sensitive(menu, sensitive); + + menu = GTK_WIDGET(gtk_builder_get_object(priv->builder, "menu-send")); + gtk_widget_set_sensitive(menu, sensitive); +} + static void display_show_hint(VirtViewerDisplay *display, GParamSpec *pspec G_GNUC_UNUSED, @@ -1360,6 +1385,8 @@ virt_viewer_window_set_display(VirtViewerWindow *self, VirtViewerDisplay *displa if (virt_viewer_display_get_enabled(display)) virt_viewer_window_desktop_resize(display, self); + gtk_widget_set_sensitive(GTK_WIDGET(gtk_builder_get_object(self->priv->builder, "menu-preferences")), TRUE); + gtk_widget_set_sensitive(GTK_WIDGET(gtk_builder_get_object(self->priv->builder, "menu-view-zoom")), TRUE); gtk_widget_set_sensitive(GTK_WIDGET(gtk_builder_get_object(self->priv->builder, "menu-send")), TRUE); gtk_widget_set_sensitive(self->priv->toolbar_send_key, TRUE); } |