summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOwen Taylor <otaylor@src.gnome.org>2002-02-28 00:26:51 +0000
committerOwen Taylor <otaylor@src.gnome.org>2002-02-28 00:26:51 +0000
commit7ea17ce7fd9c36d0eb02586d119273ed57fb517e (patch)
tree11bb50d2bf78278f5c42872b7dff0afe13c7dd94
parent07bdeb1871182975905fecc87bfa4ccecafbf116 (diff)
downloadgtk+-7ea17ce7fd9c36d0eb02586d119273ed57fb517e.tar.gz
ed Feb 27 19:16:50 2002 Owen Taylor <otaylor@redhat.com>
* gdk/x11/gdkwindow-x11.c (gdk_window_new): * gdk/x11/gdkwindow-x11.c (gdk_window_get_events): * gdk/x11/gdkwindow-x11.c (gdk_window_set_events): * gdk/win32/gdkwindow-win32.c (gdk_window_set_events): * gdk/win32/gdkwindow-win32.c (gdk_window_new): * gdk/gdkwindow.h (struct _GdkWindowObject): * gdk/linux-fb/gdkwindow-fb.c (gdk_window_set_events): Save the window's event mask in window->event_mask. * gdk/gdkwindow.c (gdk_window_process_updates_internal): Only generate expose events if GDK_EXPOSE_MASK is included window->event_mask. (#54506)
-rw-r--r--ChangeLog17
-rw-r--r--ChangeLog.pre-2-017
-rw-r--r--ChangeLog.pre-2-1017
-rw-r--r--ChangeLog.pre-2-217
-rw-r--r--ChangeLog.pre-2-417
-rw-r--r--ChangeLog.pre-2-617
-rw-r--r--ChangeLog.pre-2-817
-rw-r--r--gdk/gdkwindow.c3
-rw-r--r--gdk/gdkwindow.h2
-rw-r--r--gdk/linux-fb/gdkwindow-fb.c2
-rw-r--r--gdk/win32/gdkwindow-win32.c2
-rw-r--r--gdk/x11/gdkwindow-x11.c4
12 files changed, 124 insertions, 8 deletions
diff --git a/ChangeLog b/ChangeLog
index 8903190434..377010e46b 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,9 +1,24 @@
+Wed Feb 27 19:16:50 2002 Owen Taylor <otaylor@redhat.com>
+
+ * gdk/x11/gdkwindow-x11.c (gdk_window_new):
+ * gdk/x11/gdkwindow-x11.c (gdk_window_get_events):
+ * gdk/x11/gdkwindow-x11.c (gdk_window_set_events):
+ * gdk/win32/gdkwindow-win32.c (gdk_window_set_events):
+ * gdk/win32/gdkwindow-win32.c (gdk_window_new):
+ * gdk/gdkwindow.h (struct _GdkWindowObject):
+ * gdk/linux-fb/gdkwindow-fb.c (gdk_window_set_events):
+ Save the window's event mask in window->event_mask.
+
+ * gdk/gdkwindow.c (gdk_window_process_updates_internal): Only
+ generate expose events if GDK_EXPOSE_MASK is included
+ window->event_mask. (#54506)
+
Wed Feb 27 18:50:29 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkwidget.c (gtk_widget_event): Allow focus-change
events to be sent to unrealized widgets; they aren't
really normal events in that they have anything to
- do with widget->window. (#72914)
+ do with widget->window. (#72914, Andreas J. Guelzow)
Wed Feb 27 18:39:25 2002 Owen Taylor <otaylor@redhat.com>
diff --git a/ChangeLog.pre-2-0 b/ChangeLog.pre-2-0
index 8903190434..377010e46b 100644
--- a/ChangeLog.pre-2-0
+++ b/ChangeLog.pre-2-0
@@ -1,9 +1,24 @@
+Wed Feb 27 19:16:50 2002 Owen Taylor <otaylor@redhat.com>
+
+ * gdk/x11/gdkwindow-x11.c (gdk_window_new):
+ * gdk/x11/gdkwindow-x11.c (gdk_window_get_events):
+ * gdk/x11/gdkwindow-x11.c (gdk_window_set_events):
+ * gdk/win32/gdkwindow-win32.c (gdk_window_set_events):
+ * gdk/win32/gdkwindow-win32.c (gdk_window_new):
+ * gdk/gdkwindow.h (struct _GdkWindowObject):
+ * gdk/linux-fb/gdkwindow-fb.c (gdk_window_set_events):
+ Save the window's event mask in window->event_mask.
+
+ * gdk/gdkwindow.c (gdk_window_process_updates_internal): Only
+ generate expose events if GDK_EXPOSE_MASK is included
+ window->event_mask. (#54506)
+
Wed Feb 27 18:50:29 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkwidget.c (gtk_widget_event): Allow focus-change
events to be sent to unrealized widgets; they aren't
really normal events in that they have anything to
- do with widget->window. (#72914)
+ do with widget->window. (#72914, Andreas J. Guelzow)
Wed Feb 27 18:39:25 2002 Owen Taylor <otaylor@redhat.com>
diff --git a/ChangeLog.pre-2-10 b/ChangeLog.pre-2-10
index 8903190434..377010e46b 100644
--- a/ChangeLog.pre-2-10
+++ b/ChangeLog.pre-2-10
@@ -1,9 +1,24 @@
+Wed Feb 27 19:16:50 2002 Owen Taylor <otaylor@redhat.com>
+
+ * gdk/x11/gdkwindow-x11.c (gdk_window_new):
+ * gdk/x11/gdkwindow-x11.c (gdk_window_get_events):
+ * gdk/x11/gdkwindow-x11.c (gdk_window_set_events):
+ * gdk/win32/gdkwindow-win32.c (gdk_window_set_events):
+ * gdk/win32/gdkwindow-win32.c (gdk_window_new):
+ * gdk/gdkwindow.h (struct _GdkWindowObject):
+ * gdk/linux-fb/gdkwindow-fb.c (gdk_window_set_events):
+ Save the window's event mask in window->event_mask.
+
+ * gdk/gdkwindow.c (gdk_window_process_updates_internal): Only
+ generate expose events if GDK_EXPOSE_MASK is included
+ window->event_mask. (#54506)
+
Wed Feb 27 18:50:29 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkwidget.c (gtk_widget_event): Allow focus-change
events to be sent to unrealized widgets; they aren't
really normal events in that they have anything to
- do with widget->window. (#72914)
+ do with widget->window. (#72914, Andreas J. Guelzow)
Wed Feb 27 18:39:25 2002 Owen Taylor <otaylor@redhat.com>
diff --git a/ChangeLog.pre-2-2 b/ChangeLog.pre-2-2
index 8903190434..377010e46b 100644
--- a/ChangeLog.pre-2-2
+++ b/ChangeLog.pre-2-2
@@ -1,9 +1,24 @@
+Wed Feb 27 19:16:50 2002 Owen Taylor <otaylor@redhat.com>
+
+ * gdk/x11/gdkwindow-x11.c (gdk_window_new):
+ * gdk/x11/gdkwindow-x11.c (gdk_window_get_events):
+ * gdk/x11/gdkwindow-x11.c (gdk_window_set_events):
+ * gdk/win32/gdkwindow-win32.c (gdk_window_set_events):
+ * gdk/win32/gdkwindow-win32.c (gdk_window_new):
+ * gdk/gdkwindow.h (struct _GdkWindowObject):
+ * gdk/linux-fb/gdkwindow-fb.c (gdk_window_set_events):
+ Save the window's event mask in window->event_mask.
+
+ * gdk/gdkwindow.c (gdk_window_process_updates_internal): Only
+ generate expose events if GDK_EXPOSE_MASK is included
+ window->event_mask. (#54506)
+
Wed Feb 27 18:50:29 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkwidget.c (gtk_widget_event): Allow focus-change
events to be sent to unrealized widgets; they aren't
really normal events in that they have anything to
- do with widget->window. (#72914)
+ do with widget->window. (#72914, Andreas J. Guelzow)
Wed Feb 27 18:39:25 2002 Owen Taylor <otaylor@redhat.com>
diff --git a/ChangeLog.pre-2-4 b/ChangeLog.pre-2-4
index 8903190434..377010e46b 100644
--- a/ChangeLog.pre-2-4
+++ b/ChangeLog.pre-2-4
@@ -1,9 +1,24 @@
+Wed Feb 27 19:16:50 2002 Owen Taylor <otaylor@redhat.com>
+
+ * gdk/x11/gdkwindow-x11.c (gdk_window_new):
+ * gdk/x11/gdkwindow-x11.c (gdk_window_get_events):
+ * gdk/x11/gdkwindow-x11.c (gdk_window_set_events):
+ * gdk/win32/gdkwindow-win32.c (gdk_window_set_events):
+ * gdk/win32/gdkwindow-win32.c (gdk_window_new):
+ * gdk/gdkwindow.h (struct _GdkWindowObject):
+ * gdk/linux-fb/gdkwindow-fb.c (gdk_window_set_events):
+ Save the window's event mask in window->event_mask.
+
+ * gdk/gdkwindow.c (gdk_window_process_updates_internal): Only
+ generate expose events if GDK_EXPOSE_MASK is included
+ window->event_mask. (#54506)
+
Wed Feb 27 18:50:29 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkwidget.c (gtk_widget_event): Allow focus-change
events to be sent to unrealized widgets; they aren't
really normal events in that they have anything to
- do with widget->window. (#72914)
+ do with widget->window. (#72914, Andreas J. Guelzow)
Wed Feb 27 18:39:25 2002 Owen Taylor <otaylor@redhat.com>
diff --git a/ChangeLog.pre-2-6 b/ChangeLog.pre-2-6
index 8903190434..377010e46b 100644
--- a/ChangeLog.pre-2-6
+++ b/ChangeLog.pre-2-6
@@ -1,9 +1,24 @@
+Wed Feb 27 19:16:50 2002 Owen Taylor <otaylor@redhat.com>
+
+ * gdk/x11/gdkwindow-x11.c (gdk_window_new):
+ * gdk/x11/gdkwindow-x11.c (gdk_window_get_events):
+ * gdk/x11/gdkwindow-x11.c (gdk_window_set_events):
+ * gdk/win32/gdkwindow-win32.c (gdk_window_set_events):
+ * gdk/win32/gdkwindow-win32.c (gdk_window_new):
+ * gdk/gdkwindow.h (struct _GdkWindowObject):
+ * gdk/linux-fb/gdkwindow-fb.c (gdk_window_set_events):
+ Save the window's event mask in window->event_mask.
+
+ * gdk/gdkwindow.c (gdk_window_process_updates_internal): Only
+ generate expose events if GDK_EXPOSE_MASK is included
+ window->event_mask. (#54506)
+
Wed Feb 27 18:50:29 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkwidget.c (gtk_widget_event): Allow focus-change
events to be sent to unrealized widgets; they aren't
really normal events in that they have anything to
- do with widget->window. (#72914)
+ do with widget->window. (#72914, Andreas J. Guelzow)
Wed Feb 27 18:39:25 2002 Owen Taylor <otaylor@redhat.com>
diff --git a/ChangeLog.pre-2-8 b/ChangeLog.pre-2-8
index 8903190434..377010e46b 100644
--- a/ChangeLog.pre-2-8
+++ b/ChangeLog.pre-2-8
@@ -1,9 +1,24 @@
+Wed Feb 27 19:16:50 2002 Owen Taylor <otaylor@redhat.com>
+
+ * gdk/x11/gdkwindow-x11.c (gdk_window_new):
+ * gdk/x11/gdkwindow-x11.c (gdk_window_get_events):
+ * gdk/x11/gdkwindow-x11.c (gdk_window_set_events):
+ * gdk/win32/gdkwindow-win32.c (gdk_window_set_events):
+ * gdk/win32/gdkwindow-win32.c (gdk_window_new):
+ * gdk/gdkwindow.h (struct _GdkWindowObject):
+ * gdk/linux-fb/gdkwindow-fb.c (gdk_window_set_events):
+ Save the window's event mask in window->event_mask.
+
+ * gdk/gdkwindow.c (gdk_window_process_updates_internal): Only
+ generate expose events if GDK_EXPOSE_MASK is included
+ window->event_mask. (#54506)
+
Wed Feb 27 18:50:29 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkwidget.c (gtk_widget_event): Allow focus-change
events to be sent to unrealized widgets; they aren't
really normal events in that they have anything to
- do with widget->window. (#72914)
+ do with widget->window. (#72914, Andreas J. Guelzow)
Wed Feb 27 18:39:25 2002 Owen Taylor <otaylor@redhat.com>
diff --git a/gdk/gdkwindow.c b/gdk/gdkwindow.c
index c79f198089..8199e09bf6 100644
--- a/gdk/gdkwindow.c
+++ b/gdk/gdkwindow.c
@@ -2065,7 +2065,8 @@ gdk_window_process_updates_internal (GdkWindow *window)
GdkRegion *update_area = private->update_area;
private->update_area = NULL;
- if (_gdk_event_func && gdk_window_is_viewable (window))
+ if (_gdk_event_func && gdk_window_is_viewable (window) &&
+ (private->event_mask & GDK_EXPOSURE_MASK))
{
GdkEvent event;
GdkRectangle window_rect;
diff --git a/gdk/gdkwindow.h b/gdk/gdkwindow.h
index b1e42ce2dc..7235ce2e36 100644
--- a/gdk/gdkwindow.h
+++ b/gdk/gdkwindow.h
@@ -260,6 +260,8 @@ struct _GdkWindowObject
guint modal_hint : 1;
guint destroyed : 2;
+
+ GdkEventMask event_mask;
};
struct _GdkWindowObjectClass
diff --git a/gdk/linux-fb/gdkwindow-fb.c b/gdk/linux-fb/gdkwindow-fb.c
index 13244b7647..44a674cf6e 100644
--- a/gdk/linux-fb/gdkwindow-fb.c
+++ b/gdk/linux-fb/gdkwindow-fb.c
@@ -1751,6 +1751,8 @@ gdk_window_set_events (GdkWindow *window,
if (!GDK_WINDOW_DESTROYED (window))
GDK_WINDOW_IMPL_FBDATA (window)->event_mask = event_mask;
+
+ GDK_WINDOW_OBJECT (window)->event_mask = event_mask;
}
void
diff --git a/gdk/win32/gdkwindow-win32.c b/gdk/win32/gdkwindow-win32.c
index a0d8d55826..91221942ec 100644
--- a/gdk/win32/gdkwindow-win32.c
+++ b/gdk/win32/gdkwindow-win32.c
@@ -487,6 +487,7 @@ gdk_window_new (GdkWindow *parent,
title = "GDK client window";
impl->event_mask = GDK_STRUCTURE_MASK | attributes->event_mask;
+ private->event_mask = impl->event_mask;
if (private->parent && private->parent->guffaw_gravity)
{
@@ -1941,6 +1942,7 @@ gdk_window_set_events (GdkWindow *window,
if (GDK_WINDOW_DESTROYED (window))
return;
+ GDK_WINDOW_OBJECT (window)->event_mask = event_mask;
GDK_WINDOW_IMPL_WIN32 (GDK_WINDOW_OBJECT (window)->impl)->event_mask = event_mask;
}
diff --git a/gdk/x11/gdkwindow-x11.c b/gdk/x11/gdkwindow-x11.c
index 37de3ff28a..21bcc8b0a9 100644
--- a/gdk/x11/gdkwindow-x11.c
+++ b/gdk/x11/gdkwindow-x11.c
@@ -414,6 +414,7 @@ gdk_window_new (GdkWindow *parent,
if (attributes->event_mask & (1 << (i + 1)))
xattributes.event_mask |= _gdk_event_mask_table[i];
}
+ private->event_mask = attributes->event_mask;
if (xattributes.event_mask)
xattributes_mask |= CWEventMask;
@@ -2466,6 +2467,8 @@ gdk_window_get_events (GdkWindow *window)
if (attrs.your_event_mask & _gdk_event_mask_table[i])
event_mask |= 1 << (i + 1);
}
+
+ GDK_WINDOW_OBJECT (window)->event_mask = event_mask;
return event_mask;
}
@@ -2494,6 +2497,7 @@ gdk_window_set_events (GdkWindow *window,
if (!GDK_WINDOW_DESTROYED (window))
{
+ GDK_WINDOW_OBJECT (window)->event_mask = event_mask;
xevent_mask = StructureNotifyMask;
for (i = 0; i < _gdk_nenvent_masks; i++)
{