diff options
author | Owen Taylor <otaylor@redhat.com> | 2000-02-18 20:02:24 +0000 |
---|---|---|
committer | Owen Taylor <otaylor@src.gnome.org> | 2000-02-18 20:02:24 +0000 |
commit | c8a2382b65120b32277f84394c55c7b51383523b (patch) | |
tree | 5fa6f133218b9f19106fb6720f1a7f6258f44476 /gtk/gtkwidget.c | |
parent | ab1deac87fa395332b73daf8e2e4c893e23be3e4 (diff) | |
download | gtk+-c8a2382b65120b32277f84394c55c7b51383523b.tar.gz |
Remove OwnerGrabButtonMask from button entries for GDK_BUTTON_PRESS /
Fri Feb 18 14:37:29 2000 Owen Taylor <otaylor@redhat.com>
* gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
OwnerGrabButtonMask from button entries for
GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
* gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
to the event mask (which will result in button/press release
being added to the event mask on Unix) so scrolling works
for layouts in scroll windows.
* gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
Patch from Anders Carlsson <andersca@picard.andersnet> to add
a scroll event.
* gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
scrolling to the "Test Scrolling" part of testgtk.
* gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
* gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
it against GDK_SCROLL.
* gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
way of mouse wheel scrolling.
* gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
* gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
* gtk/gtkmain.c: Removed previous mouse wheel hack.
* gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
gdk_event_mask_table.
* gdk/x11/gdkevents-x11.c (gdk_event_translate): Added
GdkEventScroll handler.
* gdk/gdkevents.h: Added GdkEventScroll structure.
Diffstat (limited to 'gtk/gtkwidget.c')
-rw-r--r-- | gtk/gtkwidget.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/gtk/gtkwidget.c b/gtk/gtkwidget.c index d8b35ccb31..28dbaa2b6f 100644 --- a/gtk/gtkwidget.c +++ b/gtk/gtkwidget.c @@ -64,6 +64,7 @@ enum { EVENT, BUTTON_PRESS_EVENT, BUTTON_RELEASE_EVENT, + SCROLL_EVENT, MOTION_NOTIFY_EVENT, DELETE_EVENT, DESTROY_EVENT, @@ -434,6 +435,14 @@ gtk_widget_class_init (GtkWidgetClass *klass) gtk_marshal_BOOL__POINTER, GTK_TYPE_BOOL, 1, GTK_TYPE_GDK_EVENT); + widget_signals[SCROLL_EVENT] = + gtk_signal_new ("scroll_event", + GTK_RUN_LAST, + object_class->type, + GTK_SIGNAL_OFFSET (GtkWidgetClass, scroll_event), + gtk_marshal_BOOL__POINTER, + GTK_TYPE_BOOL, 1, + GTK_TYPE_GDK_EVENT); widget_signals[MOTION_NOTIFY_EVENT] = gtk_signal_new ("motion_notify_event", GTK_RUN_LAST, @@ -2728,6 +2737,9 @@ gtk_widget_event (GtkWidget *widget, case GDK_3BUTTON_PRESS: signal_num = BUTTON_PRESS_EVENT; break; + case GDK_SCROLL: + signal_num = SCROLL_EVENT; + break; case GDK_BUTTON_RELEASE: signal_num = BUTTON_RELEASE_EVENT; break; |