SF.net SVN: geany:[3754] trunk
eht16 at users.sourceforge.net
eht16 at xxxxx
Thu Apr 30 17:17:13 UTC 2009
Revision: 3754
http://geany.svn.sourceforge.net/geany/?rev=3754&view=rev
Author: eht16
Date: 2009-04-30 17:17:13 +0000 (Thu, 30 Apr 2009)
Log Message:
-----------
Update the View->Fullscreen menu item when fullscreen state is changed externally (e.g. by the window manager).
Modified Paths:
--------------
trunk/ChangeLog
trunk/src/callbacks.c
trunk/src/callbacks.h
trunk/src/main.c
Modified: trunk/ChangeLog
===================================================================
--- trunk/ChangeLog 2009-04-30 13:58:29 UTC (rev 3753)
+++ trunk/ChangeLog 2009-04-30 17:17:13 UTC (rev 3754)
@@ -1,3 +1,10 @@
+2009-04-30 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
+
+ * src/callbacks.c, src/callbacks.h, src/main.c:
+ Update the View->Fullscreen menu item when fullscreen state is
+ changed externally (e.g. by the window manager).
+
+
2009-04-27 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/callbacks.c, src/keyfile.c, src/main.c, src/ui_utils.c,
Modified: trunk/src/callbacks.c
===================================================================
--- trunk/src/callbacks.c 2009-04-30 13:58:29 UTC (rev 3753)
+++ trunk/src/callbacks.c 2009-04-30 17:17:13 UTC (rev 3754)
@@ -946,6 +946,9 @@
on_fullscreen1_toggled (GtkCheckMenuItem *checkmenuitem,
gpointer user_data)
{
+ if (ignore_callback)
+ return;
+
ui_prefs.fullscreen = (ui_prefs.fullscreen) ? FALSE : TRUE;
ui_set_fullscreen();
}
@@ -2239,3 +2242,25 @@
#endif
}
+gboolean on_window_state_event (GtkWidget *widget,
+ GdkEventWindowState *event,
+ gpointer user_data)
+{
+
+ if (event->changed_mask & GDK_WINDOW_STATE_FULLSCREEN)
+ {
+ static GtkWidget *menuitem = NULL;
+
+ if (menuitem == NULL)
+ menuitem = ui_lookup_widget(widget, "menu_fullscreen1");
+
+ ignore_callback = TRUE;
+
+ ui_prefs.fullscreen = (event->new_window_state & GDK_WINDOW_STATE_FULLSCREEN) ? TRUE : FALSE;
+ gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(menuitem), ui_prefs.fullscreen);
+
+ ignore_callback = FALSE;
+ }
+ return FALSE;
+}
+
Modified: trunk/src/callbacks.h
===================================================================
--- trunk/src/callbacks.h 2009-04-30 13:58:29 UTC (rev 3753)
+++ trunk/src/callbacks.h 2009-04-30 17:17:13 UTC (rev 3754)
@@ -602,3 +602,7 @@
void
on_very_small_icons1_activate (GtkCheckMenuItem *menuitem,
gpointer user_data);
+
+gboolean on_window_state_event (GtkWidget *widget,
+ GdkEventWindowState *event,
+ gpointer user_data);
Modified: trunk/src/main.c
===================================================================
--- trunk/src/main.c 2009-04-30 13:58:29 UTC (rev 3753)
+++ trunk/src/main.c 2009-04-30 17:17:13 UTC (rev 3754)
@@ -1019,6 +1019,7 @@
GtkWidget *entry;
g_signal_connect(main_widgets.window, "delete-event", G_CALLBACK(on_exit_clicked), NULL);
+ g_signal_connect(main_widgets.window, "window-state-event", G_CALLBACK(on_window_state_event), NULL);
g_signal_connect(main_widgets.toolbar, "button-press-event", G_CALLBACK(toolbar_popup_menu), NULL);
g_signal_connect(ui_lookup_widget(main_widgets.window, "textview_scribble"),
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
More information about the Commits
mailing list