[totem/gnome-2-28] Fix state of the button popup when popup is dismissed



commit b09344f5a381581822fd162cd439ba1c300f318c
Author: Bastien Nocera <hadess hadess net>
Date:   Thu Jan 14 15:30:30 2010 +0000

    Fix state of the button popup when popup is dismissed

 browser-plugin/totem-plugin-viewer.c |   14 ++++++++++++++
 1 files changed, 14 insertions(+), 0 deletions(-)
---
diff --git a/browser-plugin/totem-plugin-viewer.c b/browser-plugin/totem-plugin-viewer.c
index 392f3d7..b56dc50 100644
--- a/browser-plugin/totem-plugin-viewer.c
+++ b/browser-plugin/totem-plugin-viewer.c
@@ -1261,6 +1261,16 @@ on_popup_button_button_pressed (GtkToggleButton *button,
 	return FALSE;
 }
 
+static void
+on_popup_menu_unmap (GtkWidget *menu,
+		     TotemEmbedded *emb)
+{
+	GtkWidget *button;
+
+	button = GTK_WIDGET (gtk_builder_get_object (emb->xml, "popup_button"));
+	gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (button), FALSE);
+}
+
 static char *
 resolve_redirect (const char *old_mrl, const char *mrl)
 {
@@ -1704,6 +1714,7 @@ totem_embedded_construct (TotemEmbedded *emb,
 {
 	GtkWidget *child, *container, *image;
 	GtkWidget *popup_button;
+	GtkWidget *menu;
 	BvwUseType type;
 	GError *err = NULL;
 	GConfClient *gc;
@@ -1837,6 +1848,9 @@ totem_embedded_construct (TotemEmbedded *emb,
 			  G_CALLBACK (on_popup_button_toggled), emb);
 	g_signal_connect (G_OBJECT (popup_button), "button-press-event",
 			  G_CALLBACK (on_popup_button_button_pressed), emb);
+	menu = GTK_WIDGET (gtk_builder_get_object (emb->menuxml, "menu"));
+	g_signal_connect (G_OBJECT (menu), "unmap",
+			  G_CALLBACK (on_popup_menu_unmap), emb);
 
 	gc = gconf_client_get_default ();
 	volume = ((double) gconf_client_get_int (gc, GCONF_PREFIX"/volume", NULL)) / 100.0;



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]