--- np2/x11/gtk2/gtk_main.c 2004/07/14 16:01:40 1.1 +++ np2/x11/gtk2/gtk_main.c 2007/01/02 16:43:48 1.4 @@ -1,4 +1,4 @@ -/* $Id: gtk_main.c,v 1.1 2004/07/14 16:01:40 monaka Exp $ */ +/* $Id: gtk_main.c,v 1.4 2007/01/02 16:43:48 monaka Exp $ */ /* * Copyright (c) 2004 NONAKA Kimihiro @@ -12,8 +12,6 @@ * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. - * 3. The name of the author may not be used to endorse or promote products - * derived from this software without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES @@ -120,7 +118,9 @@ key_press_evhandler(GtkWidget *w, GdkEve UNUSED(w); UNUSED(p); - if ((ev->keyval == GDK_F12) && (np2oscfg.F12KEY == 0)) + if (ev->keyval == GDK_F11) + xmenu_select_screen(scrnmode ^ SCRNMODE_FULLSCREEN); + else if ((ev->keyval == GDK_F12) && (np2oscfg.F12KEY == 0)) xmenu_toggle_item(NULL, "mousemode", !np2oscfg.MOUSE_SW); else gtkkbd_keydown(ev->keyval); @@ -196,6 +196,23 @@ button_release_evhandler(GtkWidget *w, G return TRUE; } +/* + - Signal: gboolean GtkWidget::window_state_event (GtkWidget *widget, + GdkEventWindowState *event, gpointer user_data) +*/ +static gboolean +window_state_evhandler(GtkWidget *w, GdkEventWindowState *ev, gpointer p) +{ + + UNUSED(w); + UNUSED(p); + + if (ev->new_window_state & GDK_WINDOW_STATE_FULLSCREEN) { + /* Nothing to do. */ + } + return TRUE; +} + /* * misc @@ -319,6 +336,8 @@ gui_gtk_widget_create(void) GTK_SIGNAL_FUNC(button_press_evhandler), NULL); g_signal_connect(GTK_OBJECT(main_window), "button_release_event", GTK_SIGNAL_FUNC(button_release_evhandler), NULL); + g_signal_connect(GTK_OBJECT(main_window), "window_state_event", + GTK_SIGNAL_FUNC(window_state_evhandler), NULL); g_signal_connect(GTK_OBJECT(drawarea), "configure_event", GTK_SIGNAL_FUNC(configure_evhandler), NULL); @@ -344,7 +363,6 @@ void gui_gtk_widget_mainloop(void) { - install_idle_process(); gtk_main(); uninstall_idle_process();