summaryrefslogtreecommitdiff
path: root/gtk
diff options
context:
space:
mode:
authorChristian Hergert <chergert@redhat.com>2019-06-02 14:07:27 -0700
committerChristian Hergert <chergert@redhat.com>2019-06-02 14:24:51 -0700
commit41e373f10cd727a9d87ca23ee5f72086451074e9 (patch)
tree661274425a52b77454e19ac0b6c8ca36d86d25cf /gtk
parent1a4e360c2c289a4e3cb229310f24817234cd052b (diff)
downloadgtk+-41e373f10cd727a9d87ca23ee5f72086451074e9.tar.gz
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
Diffstat (limited to 'gtk')
-rw-r--r--gtk/gtkactionmuxer.c13
-rw-r--r--gtk/gtkeventcontrollerkey.c21
-rw-r--r--gtk/gtkeventcontrollermotion.c16
-rw-r--r--gtk/gtkgesture.c7
-rw-r--r--gtk/gtkgestureclick.c19
-rw-r--r--gtk/gtkgesturedrag.c19
-rw-r--r--gtk/gtkgesturelongpress.c7
-rw-r--r--gtk/gtkgesturepan.c7
-rw-r--r--gtk/gtkgesturerotate.c6
-rw-r--r--gtk/gtkgesturestylus.c28
-rw-r--r--gtk/gtkgestureswipe.c7
-rw-r--r--gtk/gtkglarea.c12
-rw-r--r--gtk/gtkmarshalers.list13
-rw-r--r--gtk/gtkplacesview.c6
-rw-r--r--gtk/gtkscrolledwindow.c6
-rw-r--r--gtk/gtktextview.c5
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 <string.h>
@@ -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: