From 41e373f10cd727a9d87ca23ee5f72086451074e9 Mon Sep 17 00:00:00 2001 From: Christian Hergert Date: Sun, 2 Jun 2019 14:07:27 -0700 Subject: [PATCH] gtk: fix all uses of g_cclosure_marshal_generic This adds specific marshallers for all of the locations where a generic marshaller is being used. It also provides va_marshallers to reduce the chances that we get stack traces from perf going through ffi_call_unix64. This is forward ported from gtk-3-24. # Conflicts: # gtk/gtkeventcontrollerkey.c # gtk/gtkeventcontrollermotion.c # gtk/gtkgesture.c # gtk/gtkgesturemultipress.c --- gtk/gtkactionmuxer.c | 13 +++++++++++-- gtk/gtkeventcontrollerkey.c | 21 +++++++++++++++++---- gtk/gtkeventcontrollermotion.c | 16 +++++++++++++--- gtk/gtkgesture.c | 7 ++++++- gtk/gtkgestureclick.c | 19 ++++++++++++++++--- gtk/gtkgesturedrag.c | 19 ++++++++++++++++--- gtk/gtkgesturelongpress.c | 7 ++++++- gtk/gtkgesturepan.c | 7 ++++++- gtk/gtkgesturerotate.c | 6 +++++- gtk/gtkgesturestylus.c | 28 ++++++++++++++++++++++++---- gtk/gtkgestureswipe.c | 7 ++++++- gtk/gtkglarea.c | 12 +++++++++++- gtk/gtkmarshalers.list | 13 +++++++++++-- gtk/gtkplacesview.c | 6 +++++- gtk/gtkscrolledwindow.c | 6 ++---- gtk/gtktextview.c | 5 ++++- 16 files changed, 159 insertions(+), 33 deletions(-) diff --git a/gtk/gtkactionmuxer.c b/gtk/gtkactionmuxer.c index 06fe0ed0cf..126c94aa80 100644 --- a/gtk/gtkactionmuxer.c +++ b/gtk/gtkactionmuxer.c @@ -24,6 +24,7 @@ #include "gtkactionobservable.h" #include "gtkactionobserver.h" #include "gtkintl.h" +#include "gtkmarshalers.h" #include @@ -633,8 +634,16 @@ gtk_action_muxer_class_init (GObjectClass *class) class->finalize = gtk_action_muxer_finalize; class->dispose = gtk_action_muxer_dispose; - accel_signal = g_signal_new (I_("primary-accel-changed"), GTK_TYPE_ACTION_MUXER, G_SIGNAL_RUN_LAST, - 0, NULL, NULL, NULL, G_TYPE_NONE, 2, G_TYPE_STRING, G_TYPE_STRING); + accel_signal = g_signal_new (I_("primary-accel-changed"), + GTK_TYPE_ACTION_MUXER, + G_SIGNAL_RUN_LAST, + 0, + NULL, NULL, + _gtk_marshal_VOID__STRING_STRING, + G_TYPE_NONE, 2, G_TYPE_STRING, G_TYPE_STRING); + g_signal_set_va_marshaller (accel_signal, + G_TYPE_FROM_CLASS (class), + _gtk_marshal_VOID__STRING_STRINGv); properties[PROP_PARENT] = g_param_spec_object ("parent", "Parent", "The parent muxer", diff --git a/gtk/gtkeventcontrollerkey.c b/gtk/gtkeventcontrollerkey.c index 0ffb4f3eba..fd209ea1df 100644 --- a/gtk/gtkeventcontrollerkey.c +++ b/gtk/gtkeventcontrollerkey.c @@ -30,6 +30,7 @@ #include "config.h" #include "gtkintl.h" +#include "gtkmarshalers.h" #include "gtkprivate.h" #include "gtkwidgetprivate.h" #include "gtkeventcontrollerprivate.h" @@ -304,8 +305,12 @@ gtk_event_controller_key_class_init (GtkEventControllerKeyClass *klass) g_signal_new (I_("key-pressed"), GTK_TYPE_EVENT_CONTROLLER_KEY, G_SIGNAL_RUN_LAST, - 0, _gtk_boolean_handled_accumulator, NULL, NULL, + 0, _gtk_boolean_handled_accumulator, NULL, + _gtk_marshal_BOOLEAN__UINT_UINT_FLAGS, G_TYPE_BOOLEAN, 3, G_TYPE_UINT, G_TYPE_UINT, GDK_TYPE_MODIFIER_TYPE); + g_signal_set_va_marshaller (signals[KEY_PRESSED], + G_TYPE_FROM_CLASS (klass), + _gtk_marshal_BOOLEAN__UINT_UINT_FLAGSv); /** * GtkEventControllerKey::key-released: @@ -320,8 +325,12 @@ gtk_event_controller_key_class_init (GtkEventControllerKeyClass *klass) g_signal_new (I_("key-released"), GTK_TYPE_EVENT_CONTROLLER_KEY, G_SIGNAL_RUN_LAST, - 0, NULL, NULL, NULL, + 0, NULL, NULL, + _gtk_marshal_VOID__UINT_UINT_FLAGS, G_TYPE_NONE, 3, G_TYPE_UINT, G_TYPE_UINT, GDK_TYPE_MODIFIER_TYPE); + g_signal_set_va_marshaller (signals[KEY_RELEASED], + G_TYPE_FROM_CLASS (klass), + _gtk_marshal_VOID__UINT_UINT_FLAGSv); /** * GtkEventControllerKey::modifiers: @@ -337,9 +346,13 @@ gtk_event_controller_key_class_init (GtkEventControllerKeyClass *klass) g_signal_new (I_("modifiers"), GTK_TYPE_EVENT_CONTROLLER_KEY, G_SIGNAL_RUN_LAST, - 0, NULL, NULL, - g_cclosure_marshal_BOOLEAN__FLAGS, + 0, NULL, + NULL, + _gtk_marshal_BOOLEAN__FLAGS, G_TYPE_BOOLEAN, 1, GDK_TYPE_MODIFIER_TYPE); + g_signal_set_va_marshaller (signals[MODIFIERS], + G_TYPE_FROM_CLASS (klass), + _gtk_marshal_BOOLEAN__FLAGSv); /** * GtkEventControllerKey::im-update: diff --git a/gtk/gtkeventcontrollermotion.c b/gtk/gtkeventcontrollermotion.c index dcf419c337..9ba9bdd627 100644 --- a/gtk/gtkeventcontrollermotion.c +++ b/gtk/gtkeventcontrollermotion.c @@ -31,6 +31,7 @@ #include "gtkintl.h" #include "gtkprivate.h" #include "gtkwidgetprivate.h" +#include "gtkmarshalers.h" #include "gtkeventcontrollerprivate.h" #include "gtkeventcontrollermotion.h" #include "gtktypebuiltins.h" @@ -256,13 +257,16 @@ gtk_event_controller_motion_class_init (GtkEventControllerMotionClass *klass) GTK_TYPE_EVENT_CONTROLLER_MOTION, G_SIGNAL_RUN_FIRST, 0, NULL, NULL, - NULL, + _gtk_marshal_VOID__DOUBLE_DOUBLE_ENUM_ENUM, G_TYPE_NONE, 4, G_TYPE_DOUBLE, G_TYPE_DOUBLE, GDK_TYPE_CROSSING_MODE, GDK_TYPE_NOTIFY_TYPE); + g_signal_set_va_marshaller (signals[ENTER], + G_TYPE_FROM_CLASS (klass), + _gtk_marshal_VOID__DOUBLE_DOUBLE_ENUM_ENUMv); /** * GtkEventControllerMotion::leave: @@ -277,11 +281,14 @@ gtk_event_controller_motion_class_init (GtkEventControllerMotionClass *klass) GTK_TYPE_EVENT_CONTROLLER_MOTION, G_SIGNAL_RUN_FIRST, 0, NULL, NULL, - NULL, + _gtk_marshal_VOID__ENUM_ENUM, G_TYPE_NONE, 2, GDK_TYPE_CROSSING_MODE, GDK_TYPE_NOTIFY_TYPE); + g_signal_set_va_marshaller (signals[LEAVE], + G_TYPE_FROM_CLASS (klass), + _gtk_marshal_VOID__ENUM_ENUMv); /** * GtkEventControllerMotion::motion: @@ -296,8 +303,11 @@ gtk_event_controller_motion_class_init (GtkEventControllerMotionClass *klass) GTK_TYPE_EVENT_CONTROLLER_MOTION, G_SIGNAL_RUN_FIRST, 0, NULL, NULL, - NULL, + _gtk_marshal_VOID__DOUBLE_DOUBLE, G_TYPE_NONE, 2, G_TYPE_DOUBLE, G_TYPE_DOUBLE); + g_signal_set_va_marshaller (signals[MOTION], + G_TYPE_FROM_CLASS (klass), + _gtk_marshal_VOID__DOUBLE_DOUBLEv); } static void diff --git a/gtk/gtkgesture.c b/gtk/gtkgesture.c index 466a097a86..165936d7c7 100644 --- a/gtk/gtkgesture.c +++ b/gtk/gtkgesture.c @@ -123,6 +123,7 @@ #include "gtkprivate.h" #include "gtkmain.h" #include "gtkintl.h" +#include "gtkmarshalers.h" #include "gtknative.h" typedef struct _GtkGesturePrivate GtkGesturePrivate; @@ -880,9 +881,13 @@ gtk_gesture_class_init (GtkGestureClass *klass) G_TYPE_FROM_CLASS (klass), G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET (GtkGestureClass, sequence_state_changed), - NULL, NULL, NULL, + NULL, NULL, + _gtk_marshal_VOID__BOXED_ENUM, G_TYPE_NONE, 2, GDK_TYPE_EVENT_SEQUENCE, GTK_TYPE_EVENT_SEQUENCE_STATE); + g_signal_set_va_marshaller (signals[SEQUENCE_STATE_CHANGED], + G_TYPE_FROM_CLASS (klass), + _gtk_marshal_VOID__BOXED_ENUMv); } static void diff --git a/gtk/gtkgestureclick.c b/gtk/gtkgestureclick.c index 4fa713109a..8814540b18 100644 --- a/gtk/gtkgestureclick.c +++ b/gtk/gtkgestureclick.c @@ -40,6 +40,7 @@ #include "gtkgestureclickprivate.h" #include "gtkprivate.h" #include "gtkintl.h" +#include "gtkmarshalers.h" typedef struct _GtkGestureClickPrivate GtkGestureClickPrivate; @@ -365,9 +366,13 @@ gtk_gesture_click_class_init (GtkGestureClickClass *klass) G_TYPE_FROM_CLASS (klass), G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET (GtkGestureClickClass, pressed), - NULL, NULL, NULL, + NULL, NULL, + _gtk_marshal_VOID__INT_DOUBLE_DOUBLE, G_TYPE_NONE, 3, G_TYPE_INT, G_TYPE_DOUBLE, G_TYPE_DOUBLE); + g_signal_set_va_marshaller (signals[PRESSED], + G_TYPE_FROM_CLASS (klass), + _gtk_marshal_VOID__INT_DOUBLE_DOUBLEv); /** * GtkGestureClick::released: @@ -386,9 +391,13 @@ gtk_gesture_click_class_init (GtkGestureClickClass *klass) G_TYPE_FROM_CLASS (klass), G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET (GtkGestureClickClass, released), - NULL, NULL, NULL, + NULL, NULL, + _gtk_marshal_VOID__INT_DOUBLE_DOUBLE, G_TYPE_NONE, 3, G_TYPE_INT, G_TYPE_DOUBLE, G_TYPE_DOUBLE); + g_signal_set_va_marshaller (signals[RELEASED], + G_TYPE_FROM_CLASS (klass), + _gtk_marshal_VOID__INT_DOUBLE_DOUBLEv); /** * GtkGestureClick::stopped: * @gesture: the object which received the signal @@ -422,10 +431,14 @@ gtk_gesture_click_class_init (GtkGestureClickClass *klass) g_signal_new (I_("unpaired-release"), G_TYPE_FROM_CLASS (klass), G_SIGNAL_RUN_LAST, - 0, NULL, NULL, NULL, + 0, NULL, NULL, + _gtk_marshal_VOID__DOUBLE_DOUBLE_UINT_BOXED, G_TYPE_NONE, 4, G_TYPE_DOUBLE, G_TYPE_DOUBLE, G_TYPE_UINT, GDK_TYPE_EVENT_SEQUENCE); + g_signal_set_va_marshaller (signals[UNPAIRED_RELEASE], + G_TYPE_FROM_CLASS (klass), + _gtk_marshal_VOID__DOUBLE_DOUBLE_UINT_BOXEDv); } static void diff --git a/gtk/gtkgesturedrag.c b/gtk/gtkgesturedrag.c index baccf2f2df..54cdacb683 100644 --- a/gtk/gtkgesturedrag.c +++ b/gtk/gtkgesturedrag.c @@ -34,6 +34,7 @@ #include "gtkgesturedrag.h" #include "gtkgesturedragprivate.h" #include "gtkintl.h" +#include "gtkmarshalers.h" typedef struct _GtkGestureDragPrivate GtkGestureDragPrivate; typedef struct _EventData EventData; @@ -154,8 +155,12 @@ gtk_gesture_drag_class_init (GtkGestureDragClass *klass) G_TYPE_FROM_CLASS (klass), G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET (GtkGestureDragClass, drag_begin), - NULL, NULL, NULL, + NULL, NULL, + _gtk_marshal_VOID__DOUBLE_DOUBLE, G_TYPE_NONE, 2, G_TYPE_DOUBLE, G_TYPE_DOUBLE); + g_signal_set_va_marshaller (signals[DRAG_BEGIN], + G_TYPE_FROM_CLASS (klass), + _gtk_marshal_VOID__DOUBLE_DOUBLEv); /** * GtkGestureDrag::drag-update: * @gesture: the object which received the signal @@ -169,8 +174,12 @@ gtk_gesture_drag_class_init (GtkGestureDragClass *klass) G_TYPE_FROM_CLASS (klass), G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET (GtkGestureDragClass, drag_update), - NULL, NULL, NULL, + NULL, NULL, + _gtk_marshal_VOID__DOUBLE_DOUBLE, G_TYPE_NONE, 2, G_TYPE_DOUBLE, G_TYPE_DOUBLE); + g_signal_set_va_marshaller (signals[DRAG_UPDATE], + G_TYPE_FROM_CLASS (klass), + _gtk_marshal_VOID__DOUBLE_DOUBLEv); /** * GtkGestureDrag::drag-end: * @gesture: the object which received the signal @@ -184,8 +193,12 @@ gtk_gesture_drag_class_init (GtkGestureDragClass *klass) G_TYPE_FROM_CLASS (klass), G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET (GtkGestureDragClass, drag_end), - NULL, NULL, NULL, + NULL, NULL, + _gtk_marshal_VOID__DOUBLE_DOUBLE, G_TYPE_NONE, 2, G_TYPE_DOUBLE, G_TYPE_DOUBLE); + g_signal_set_va_marshaller (signals[DRAG_END], + G_TYPE_FROM_CLASS (klass), + _gtk_marshal_VOID__DOUBLE_DOUBLEv); } static void diff --git a/gtk/gtkgesturelongpress.c b/gtk/gtkgesturelongpress.c index 073a7b6d09..6b5632d15f 100644 --- a/gtk/gtkgesturelongpress.c +++ b/gtk/gtkgesturelongpress.c @@ -40,6 +40,7 @@ #include "gtkdnd.h" #include "gtkprivate.h" #include "gtkintl.h" +#include "gtkmarshalers.h" typedef struct _GtkGestureLongPressPrivate GtkGestureLongPressPrivate; @@ -303,8 +304,12 @@ gtk_gesture_long_press_class_init (GtkGestureLongPressClass *klass) G_TYPE_FROM_CLASS (klass), G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET (GtkGestureLongPressClass, pressed), - NULL, NULL, NULL, + NULL, NULL, + _gtk_marshal_VOID__DOUBLE_DOUBLE, G_TYPE_NONE, 2, G_TYPE_DOUBLE, G_TYPE_DOUBLE); + g_signal_set_va_marshaller (signals[PRESSED], + G_TYPE_FROM_CLASS (klass), + _gtk_marshal_VOID__DOUBLE_DOUBLEv); /** * GtkGestureLongPress::cancelled: * @gesture: the object which received the signal diff --git a/gtk/gtkgesturepan.c b/gtk/gtkgesturepan.c index cfd5eeb8c0..fa656084c1 100644 --- a/gtk/gtkgesturepan.c +++ b/gtk/gtkgesturepan.c @@ -44,6 +44,7 @@ #include "gtktypebuiltins.h" #include "gtkprivate.h" #include "gtkintl.h" +#include "gtkmarshalers.h" typedef struct _GtkGesturePanPrivate GtkGesturePanPrivate; @@ -252,9 +253,13 @@ gtk_gesture_pan_class_init (GtkGesturePanClass *klass) G_TYPE_FROM_CLASS (klass), G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET (GtkGesturePanClass, pan), - NULL, NULL, NULL, + NULL, NULL, + _gtk_marshal_VOID__ENUM_DOUBLE, G_TYPE_NONE, 2, GTK_TYPE_PAN_DIRECTION, G_TYPE_DOUBLE); + g_signal_set_va_marshaller (signals[PAN], + G_TYPE_FROM_CLASS (klass), + _gtk_marshal_VOID__ENUM_DOUBLEv); } static void diff --git a/gtk/gtkgesturerotate.c b/gtk/gtkgesturerotate.c index dfa6f597ed..687589e571 100644 --- a/gtk/gtkgesturerotate.c +++ b/gtk/gtkgesturerotate.c @@ -242,8 +242,12 @@ gtk_gesture_rotate_class_init (GtkGestureRotateClass *klass) GTK_TYPE_GESTURE_ROTATE, G_SIGNAL_RUN_FIRST, G_STRUCT_OFFSET (GtkGestureRotateClass, angle_changed), - NULL, NULL, NULL, + NULL, NULL, + _gtk_marshal_VOID__DOUBLE_DOUBLE, G_TYPE_NONE, 2, G_TYPE_DOUBLE, G_TYPE_DOUBLE); + g_signal_set_va_marshaller (signals[ANGLE_CHANGED], + G_TYPE_FROM_CLASS (klass), + _gtk_marshal_VOID__DOUBLE_DOUBLEv); } /** diff --git a/gtk/gtkgesturestylus.c b/gtk/gtkgesturestylus.c index 2122f08e09..e5742d523b 100644 --- a/gtk/gtkgesturestylus.c +++ b/gtk/gtkgesturestylus.c @@ -32,6 +32,7 @@ #include "gtkgesturestylusprivate.h" #include "gtkprivate.h" #include "gtkintl.h" +#include "gtkmarshalers.h" #include "gtkmain.h" G_DEFINE_TYPE (GtkGestureStylus, gtk_gesture_stylus, GTK_TYPE_GESTURE_SINGLE) @@ -99,29 +100,48 @@ gtk_gesture_stylus_class_init (GtkGestureStylusClass *klass) G_TYPE_FROM_CLASS (klass), G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET (GtkGestureStylusClass, proximity), - NULL, NULL, NULL, + NULL, NULL, + _gtk_marshal_VOID__DOUBLE_DOUBLE, G_TYPE_NONE, 2, G_TYPE_DOUBLE, G_TYPE_DOUBLE); + g_signal_set_va_marshaller (signals[PROXIMITY], + G_TYPE_FROM_CLASS (klass), + _gtk_marshal_VOID__DOUBLE_DOUBLEv); + signals[DOWN] = g_signal_new (I_("down"), G_TYPE_FROM_CLASS (klass), G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET (GtkGestureStylusClass, down), - NULL, NULL, NULL, + NULL, NULL, + _gtk_marshal_VOID__DOUBLE_DOUBLE, G_TYPE_NONE, 2, G_TYPE_DOUBLE, G_TYPE_DOUBLE); + g_signal_set_va_marshaller (signals[DOWN], + G_TYPE_FROM_CLASS (klass), + _gtk_marshal_VOID__DOUBLE_DOUBLEv); + signals[MOTION] = g_signal_new (I_("motion"), G_TYPE_FROM_CLASS (klass), G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET (GtkGestureStylusClass, motion), - NULL, NULL, NULL, + NULL, NULL, + _gtk_marshal_VOID__DOUBLE_DOUBLE, G_TYPE_NONE, 2, G_TYPE_DOUBLE, G_TYPE_DOUBLE); + g_signal_set_va_marshaller (signals[MOTION], + G_TYPE_FROM_CLASS (klass), + _gtk_marshal_VOID__DOUBLE_DOUBLEv); + signals[UP] = g_signal_new (I_("up"), G_TYPE_FROM_CLASS (klass), G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET (GtkGestureStylusClass, up), - NULL, NULL, NULL, + NULL, NULL, + _gtk_marshal_VOID__DOUBLE_DOUBLE, G_TYPE_NONE, 2, G_TYPE_DOUBLE, G_TYPE_DOUBLE); + g_signal_set_va_marshaller (signals[UP], + G_TYPE_FROM_CLASS (klass), + _gtk_marshal_VOID__DOUBLE_DOUBLEv); } static void diff --git a/gtk/gtkgestureswipe.c b/gtk/gtkgestureswipe.c index 83bc65653e..2ff8678c7f 100644 --- a/gtk/gtkgestureswipe.c +++ b/gtk/gtkgestureswipe.c @@ -41,6 +41,7 @@ #include "gtkgestureprivate.h" #include "gtkmarshalers.h" #include "gtkintl.h" +#include "gtkmarshalers.h" #define CAPTURE_THRESHOLD_MS 150 @@ -237,8 +238,12 @@ gtk_gesture_swipe_class_init (GtkGestureSwipeClass *klass) G_TYPE_FROM_CLASS (klass), G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET (GtkGestureSwipeClass, swipe), - NULL, NULL, NULL, + NULL, NULL, + _gtk_marshal_VOID__DOUBLE_DOUBLE, G_TYPE_NONE, 2, G_TYPE_DOUBLE, G_TYPE_DOUBLE); + g_signal_set_va_marshaller (signals[SWIPE], + G_TYPE_FROM_CLASS (klass), + _gtk_marshal_VOID__DOUBLE_DOUBLEv); } static void diff --git a/gtk/gtkglarea.c b/gtk/gtkglarea.c index 5f91f32fef..5ee6eb4d0b 100644 --- a/gtk/gtkglarea.c +++ b/gtk/gtkglarea.c @@ -23,6 +23,7 @@ #include "config.h" #include "gtkglarea.h" #include "gtkintl.h" +#include "gtkmarshalers.h" #include "gtkstylecontext.h" #include "gtkmarshalers.h" #include "gtkprivate.h" @@ -896,9 +897,12 @@ gtk_gl_area_class_init (GtkGLAreaClass *klass) G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET (GtkGLAreaClass, render), _gtk_boolean_handled_accumulator, NULL, - NULL, + _gtk_marshal_BOOLEAN__OBJECT, G_TYPE_BOOLEAN, 1, GDK_TYPE_GL_CONTEXT); + g_signal_set_va_marshaller (area_signals[RENDER], + G_TYPE_FROM_CLASS (klass), + _gtk_marshal_BOOLEAN__OBJECTv); /** * GtkGLArea::resize: @@ -924,6 +928,9 @@ gtk_gl_area_class_init (GtkGLAreaClass *klass) NULL, NULL, _gtk_marshal_VOID__INT_INT, G_TYPE_NONE, 2, G_TYPE_INT, G_TYPE_INT); + g_signal_set_va_marshaller (area_signals[RESIZE], + G_TYPE_FROM_CLASS (klass), + _gtk_marshal_VOID__INT_INTv); /** * GtkGLArea::create-context: @@ -951,6 +958,9 @@ gtk_gl_area_class_init (GtkGLAreaClass *klass) create_context_accumulator, NULL, _gtk_marshal_OBJECT__VOID, GDK_TYPE_GL_CONTEXT, 0); + g_signal_set_va_marshaller (area_signals[CREATE_CONTEXT], + G_TYPE_FROM_CLASS (klass), + _gtk_marshal_OBJECT__VOIDv); } static void diff --git a/gtk/gtkmarshalers.list b/gtk/gtkmarshalers.list index 322428e76d..aa5b662996 100644 --- a/gtk/gtkmarshalers.list +++ b/gtk/gtkmarshalers.list @@ -26,8 +26,10 @@ BOOLEAN:BOXED,BOXED BOOLEAN:DOUBLE,DOUBLE BOOLEAN:ENUM BOOLEAN:ENUM,BOOLEAN +BOOLEAN:ENUM,BOXED,BOXED,BOXED BOOLEAN:ENUM,DOUBLE BOOLEAN:ENUM,INT +BOOLEAN:FLAGS BOOLEAN:OBJECT BOOLEAN:OBJECT,UINT,FLAGS BOOLEAN:OBJECT,INT,INT @@ -42,6 +44,7 @@ BOOLEAN:INT,INT BOOLEAN:INT,INT,INT BOOLEAN:INT,INT,BOOLEAN,OBJECT BOOLEAN:UINT +BOOLEAN:UINT,UINT,FLAGS BOOLEAN:VOID BOOLEAN:BOOLEAN BOOLEAN:BOOLEAN,BOOLEAN,BOOLEAN @@ -49,18 +52,23 @@ BOOLEAN:STRING ENUM:ENUM ENUM:VOID INT:POINTER +INT:DOUBLE,DOUBLE OBJECT:VOID STRING:DOUBLE STRING:STRING -VOID:DOUBLE,DOUBLE VOID:BOOLEAN,BOOLEAN,BOOLEAN VOID:BOXED,BOXED VOID:BOXED,BOXED,POINTER +VOID:BOXED,ENUM VOID:BOXED,OBJECT VOID:BOXED,STRING,INT VOID:BOXED,UINT VOID:BOXED,UINT,FLAGS +VOID:DOUBLE,DOUBLE +VOID:DOUBLE,DOUBLE,ENUM,ENUM +VOID:DOUBLE,DOUBLE,UINT,BOXED VOID:ENUM,BOOLEAN +VOID:ENUM,DOUBLE VOID:ENUM,ENUM VOID:ENUM,FLOAT VOID:ENUM,FLOAT,BOOLEAN @@ -70,6 +78,7 @@ VOID:ENUM,INT,INT VOID:ENUM,OBJECT VOID:ENUM,STRING VOID:INT,BOOLEAN +VOID:INT,DOUBLE,DOUBLE VOID:INT,INT VOID:INT,INT,BOXED VOID:INT,INT,INT @@ -107,12 +116,12 @@ VOID:STRING,INT,POINTER VOID:STRING,UINT,FLAGS VOID:STRING,UINT,FLAGS,UINT VOID:UINT,FLAGS,BOXED -VOID:UINT,UINT VOID:UINT,STRING VOID:UINT,BOXED,UINT,FLAGS,FLAGS VOID:UINT,OBJECT,UINT,FLAGS,FLAGS VOID:UINT,STRING,UINT VOID:UINT,UINT +VOID:UINT,UINT,FLAGS OBJECT:OBJECT,INT,INT VOID:OBJECT,STRING,POINTER,POINTER INT:INT diff --git a/gtk/gtkplacesview.c b/gtk/gtkplacesview.c index 356bf18aa5..75c4af2372 100644 --- a/gtk/gtkplacesview.c +++ b/gtk/gtkplacesview.c @@ -2234,10 +2234,14 @@ gtk_places_view_class_init (GtkPlacesViewClass *klass) G_OBJECT_CLASS_TYPE (object_class), G_SIGNAL_RUN_FIRST, G_STRUCT_OFFSET (GtkPlacesViewClass, open_location), - NULL, NULL, NULL, + NULL, NULL, + _gtk_marshal_VOID__OBJECT_FLAGS, G_TYPE_NONE, 2, G_TYPE_OBJECT, GTK_TYPE_PLACES_OPEN_FLAGS); + g_signal_set_va_marshaller (places_view_signals [OPEN_LOCATION], + G_TYPE_FROM_CLASS (object_class), + _gtk_marshal_VOID__OBJECT_FLAGSv); /* * GtkPlacesView::show-error-message: diff --git a/gtk/gtkscrolledwindow.c b/gtk/gtkscrolledwindow.c index 7e33a3a7c5..1937a7ea5c 100644 --- a/gtk/gtkscrolledwindow.c +++ b/gtk/gtkscrolledwindow.c @@ -771,8 +771,7 @@ gtk_scrolled_window_class_init (GtkScrolledWindowClass *class) g_signal_new (I_("edge-overshot"), G_TYPE_FROM_CLASS (gobject_class), G_SIGNAL_RUN_LAST, 0, - NULL, NULL, - g_cclosure_marshal_generic, + NULL, NULL, NULL, G_TYPE_NONE, 1, GTK_TYPE_POSITION_TYPE); /** @@ -794,8 +793,7 @@ gtk_scrolled_window_class_init (GtkScrolledWindowClass *class) g_signal_new (I_("edge-reached"), G_TYPE_FROM_CLASS (gobject_class), G_SIGNAL_RUN_LAST, 0, - NULL, NULL, - g_cclosure_marshal_generic, + NULL, NULL, NULL, G_TYPE_NONE, 1, GTK_TYPE_POSITION_TYPE); binding_set = gtk_binding_set_by_class (class); diff --git a/gtk/gtktextview.c b/gtk/gtktextview.c index a824dc80d6..5dc3766037 100644 --- a/gtk/gtktextview.c +++ b/gtk/gtktextview.c @@ -1349,12 +1349,15 @@ gtk_text_view_class_init (GtkTextViewClass *klass) G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET (GtkTextViewClass, extend_selection), _gtk_boolean_handled_accumulator, NULL, - NULL, /* generic marshaller */ + _gtk_marshal_BOOLEAN__ENUM_BOXED_BOXED_BOXED, G_TYPE_BOOLEAN, 4, GTK_TYPE_TEXT_EXTEND_SELECTION, GTK_TYPE_TEXT_ITER | G_SIGNAL_TYPE_STATIC_SCOPE, GTK_TYPE_TEXT_ITER | G_SIGNAL_TYPE_STATIC_SCOPE, GTK_TYPE_TEXT_ITER | G_SIGNAL_TYPE_STATIC_SCOPE); + g_signal_set_va_marshaller (signals[EXTEND_SELECTION], + G_TYPE_FROM_CLASS (klass), + _gtk_marshal_BOOLEAN__ENUM_BOXED_BOXED_BOXEDv); /** * GtkTextView::insert-emoji: