summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBill Haneman <billh@src.gnome.org>2004-02-24 19:13:07 +0000
committerBill Haneman <billh@src.gnome.org>2004-02-24 19:13:07 +0000
commit15bf6ab472db0e45ea9b763b8d428a83a88d0364 (patch)
treefeef69bf56cbd14cb240fc027f075d3c7e1d473b
parent595d71ee557647581462a963f7b8f029e13ddb1c (diff)
Fix for occlusion issues with other windows. Revved to 0.10.7.GNOME_MAG_0_10_7
-rw-r--r--ChangeLog12
-rw-r--r--configure.in2
-rw-r--r--magnifier/magnifier.c12
3 files changed, 19 insertions, 7 deletions
diff --git a/ChangeLog b/ChangeLog
index dda0167..cd8ac6e 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,13 @@
+2004-02-24 Bill Haneman <billh@gnome.org>
+
+ * configure.in:
+ Revved to 0.10.7.
+
+ * magnifier/magnifier.c:
+ (magnifier_init_window): Make the toplevel magnifier window
+ GTK_TYPE_POPUP as it should be override-redirect and should never
+ be occluded or decorated.
+
2004-02-10 Tomasz Kłoczko <kloczek@pld.org.pl>
* magnifier/Makefile.am: fix for paralel build (make -j<N>).
@@ -7,7 +17,7 @@
2004-02-09 Bill Haneman <billh@gnome.org>
- * configure.in: Revved to 0.10.9.
+ * configure.in: Revved to 0.10.6.
Re-dist to fix libtool problem.
diff --git a/configure.in b/configure.in
index c33c0f7..0554be9 100644
--- a/configure.in
+++ b/configure.in
@@ -12,7 +12,7 @@ GNOME_MAG_CURRENT=`expr $GNOME_MAG_MINOR_VERSION - $GNOME_MAG_INTERFACE_AGE`
dnl increment any time the source you release changes; set to
dnl 0 if you uncrement CURRENT
-GNOME_MAG_REVISION=5
+GNOME_MAG_REVISION=7
GNOME_MAG_MICRO_VERSION=$GNOME_MAG_REVISION
dnl increment if any interfaces have been added; set to 0
diff --git a/magnifier/magnifier.c b/magnifier/magnifier.c
index 7d7716a..a97cd99 100644
--- a/magnifier/magnifier.c
+++ b/magnifier/magnifier.c
@@ -35,6 +35,8 @@
#include "zoom-region-private.h"
#include "GNOME_Magnifier.h"
+#define MAG_WINDOW_OVERRIDE_REDIRECT
+
static GObjectClass *parent_class = NULL;
enum {
@@ -131,7 +133,8 @@ magnifier_realize (GtkWidget *widget)
GdkDisplay *target_display = gdk_drawable_get_display (widget->window);
static gboolean initialized = FALSE;
-
+
+#ifdef MAG_WINDOW_OVERRIDE_REDIRECT
if (!initialized) {
wm_window_protocols[0] = gdk_x11_get_xatom_by_name_for_display (target_display,
"WM_DELETE_WINDOW");
@@ -161,14 +164,14 @@ magnifier_realize (GtkWidget *widget)
XA_ATOM, 32, PropModeReplace,
(guchar *)wm_type_atoms,
1);
-
+#else
+#endif
/* TODO: make sure this works/is reset if the DISPLAY
* (as well as the SCREEN) changes.
*/
XSetErrorHandler (magnifier_x_error_handler);
- fprintf (stderr, "Realize complete.\n");
}
GdkWindow*
@@ -934,7 +937,7 @@ magnifier_init_window (Magnifier *magnifier)
g_object_connect (gtk_widget_new (gtk_window_get_type (),
"user_data", NULL,
"can_focus", FALSE,
- "type", GTK_WINDOW_TOPLEVEL,
+ "type", GTK_WINDOW_POPUP,
"title", "magnifier",
"allow_grow", TRUE,
"allow_shrink", TRUE,
@@ -943,7 +946,6 @@ magnifier_init_window (Magnifier *magnifier)
"signal::realize", magnifier_realize, NULL,
"signal::destroy", magnifier_exit, NULL,
NULL);
- gtk_window_set_decorated (GTK_WINDOW (magnifier->priv->w), FALSE);
magnifier->priv->canvas = gtk_fixed_new ();
gtk_container_add (GTK_CONTAINER (magnifier->priv->w),
magnifier->priv->canvas);