diff options
author | Arturo Espinosa <unammx@src.gnome.org> | 1997-12-26 08:54:12 +0000 |
---|---|---|
committer | Arturo Espinosa <unammx@src.gnome.org> | 1997-12-26 08:54:12 +0000 |
commit | 6ceea7e635d92c72d5fed344bd88f66ed6da6142 (patch) | |
tree | f3f22027a8bfd75de508a2852d1d55ac8335c6c7 /gdk/gdk.c | |
parent | ed11431bdbdb493e7559c28113f0ee9b0134ac8d (diff) | |
download | gtk+-6ceea7e635d92c72d5fed344bd88f66ed6da6142.tar.gz |
Added new GDK_NO_EXPOSE and GDK_VISIBILITY_NOTIFY events. They are needed
for the TV widget by Alan Cox and by the GtkXmHTML widget.
Only missing with respect to their Xlib counterparts are the
major_code and minor_code fields in the GdkEventNoExpose structure.
Does anyone need them for their code?
- Federico
Diffstat (limited to 'gdk/gdk.c')
-rw-r--r-- | gdk/gdk.c | 25 |
1 files changed, 23 insertions, 2 deletions
@@ -2285,7 +2285,10 @@ gdk_event_translate (GdkEvent *event, g_print ("no expose:\t\tdrawable: %ld\n", xevent->xnoexpose.drawable - base_id); - /* Not currently handled */ + event->no_expose.type = GDK_NO_EXPOSE; + event->no_expose.window = window; + + return_val = window_private && !window_private->destroyed; break; case VisibilityNotify: @@ -2308,7 +2311,25 @@ gdk_event_translate (GdkEvent *event, break; } - /* Not currently handled */ + event->visibility.type = GDK_VISIBILITY_NOTIFY; + event->visibility.window = window; + + switch (xevent->xvisibility.state) + { + case VisibilityFullyObscured: + event->visibility.state = GDK_VISIBILITY_FULLY_OBSCURED; + break; + + case VisibilityPartiallyObscured: + event->visibility.state = GDK_VISIBILITY_PARTIAL; + break; + + case VisibilityUnobscured: + event->visibility.state = GDK_VISIBILITY_UNOBSCURED; + break; + } + + return_val = window_private && !window_private->destroyed; break; case CreateNotify: |