| version 1.9, 2007/02/04 11:51:14 | version 1.11, 2007/02/05 14:35:55 | 
| Line 33 | Line 33 | 
 | #include <stdlib.h> | #include <stdlib.h> | 
 | #include <string.h> | #include <string.h> | 
 | #include <unistd.h> | #include <unistd.h> | 
 |  | #include <signal.h> | 
 |  |  | 
 | #include <X11/Xlib.h> | #include <X11/Xlib.h> | 
 | #include <X11/Xatom.h> | #include <X11/Xatom.h> | 
| Line 42 | Line 43 | 
 | #include <gdk/gdkx.h> | #include <gdk/gdkx.h> | 
 |  |  | 
 | extern int verbose; | extern int verbose; | 
 |  | extern volatile sig_atomic_t np2running; | 
 |  |  | 
 | #ifndef VERBOSE | #ifndef VERBOSE | 
 | #define VERBOSE(s)      if (verbose) printf s | #define VERBOSE(s)      if (verbose) printf s | 
| Line 105  gdk_window_get_pixmap_format(GdkWindow * | Line 107  gdk_window_get_pixmap_format(GdkWindow * | 
 | extern int ignore_fullscreen_mode; | extern int ignore_fullscreen_mode; | 
 | static int use_xvid; | static int use_xvid; | 
 | static int use_netwm; | static int use_netwm; | 
 |  | static int is_fullscreen; | 
 |  |  | 
 | #ifdef HAVE_XF86VIDMODE | #ifdef HAVE_XF86VIDMODE | 
 | #include <X11/extensions/xf86vmode.h> | #include <X11/extensions/xf86vmode.h> | 
| Line 324  gtk_window_fullscreen_mode(GtkWidget *wi | Line 327  gtk_window_fullscreen_mode(GtkWidget *wi | 
 | if (use_netwm) { | if (use_netwm) { | 
 | gtk_window_fullscreen(GTK_WINDOW(widget)); | gtk_window_fullscreen(GTK_WINDOW(widget)); | 
 | } | } | 
 |  | is_fullscreen = 1; | 
 | } | } | 
 |  |  | 
 | void | void | 
| Line 332  gtk_window_restore_mode(GtkWidget *widge | Line 336  gtk_window_restore_mode(GtkWidget *widge | 
 |  |  | 
 | g_return_if_fail(widget != NULL); | g_return_if_fail(widget != NULL); | 
 |  |  | 
 |  | if (!is_fullscreen) | 
 |  | return; | 
 |  |  | 
 | #ifdef HAVE_XF86VIDMODE | #ifdef HAVE_XF86VIDMODE | 
 | if (use_xvid) { | if (use_xvid) { | 
 | GtkWindow *window; |  | 
 | XF86VidModeModeInfo mode; | XF86VidModeModeInfo mode; | 
 | int rv; | int rv; | 
 |  |  | 
 | if ((orig_mode.hdisplay == 0) || (orig_mode.vdisplay == 0)) | if ((orig_mode.hdisplay == 0) || (orig_mode.vdisplay == 0)) | 
 | return; | return; | 
 |  |  | 
 | window = GTK_WINDOW(widget); |  | 
 |  |  | 
 | XLockDisplay(fs_xdisplay); | XLockDisplay(fs_xdisplay); | 
 |  |  | 
 | rv = XF86VidModeGetModeInfo(fs_xdisplay, fs_xscreen, &mode); | rv = XF86VidModeGetModeInfo(fs_xdisplay, fs_xscreen, &mode); | 
| Line 360  gtk_window_restore_mode(GtkWidget *widge | Line 364  gtk_window_restore_mode(GtkWidget *widge | 
 | } | } | 
 | } | } | 
 |  |  | 
| if (window != NULL) { | if (np2running) { | 
| gtk_window_move(window, orig_x, orig_y); | gtk_window_move(GTK_WINDOW(widget), orig_x, orig_y); | 
 | } | } | 
 |  |  | 
 | XUnlockDisplay(fs_xdisplay); | XUnlockDisplay(fs_xdisplay); |