wingpanel/SOURCES/434.patch

1994 lines
75 KiB
Diff

From 3cb4daa89a04f0f134679229d9dc4c9b1638a12f Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Corentin=20No=C3=ABl?= <corentin@elementary.io>
Date: Tue, 18 Jan 2022 19:45:40 +0100
Subject: [PATCH] Add support for Mutter 42
---
vapi/Clutter-10-custom.vala | 53 +++++++++
vapi/Clutter-10.metadata | 192 ++++++++++++++++++++++++++++++++
vapi/Clutter-9-custom.vala | 23 ++++
vapi/Clutter-9.metadata | 19 +++-
vapi/Cogl-10-custom.vala | 161 ++++++++++++++++++++++++++
vapi/Cogl-10.metadata | 68 +++++++++++
vapi/Meta-10.metadata | 181 ++++++++++++++++++++++++++++++
vapi/config.vapi | 2 +
vapi/libmutter-10.deps | 1 +
vapi/libmutter-10.vapi | 1 +
vapi/libmutter.vapi | 46 +++++++-
vapi/libsystemd.vapi | 18 +++
vapi/meson.build | 69 ++++++++++++
vapi/mutter-clutter-10.deps | 6 +
vapi/mutter-clutter-10.vapi | 1 +
vapi/mutter-clutter-9.deps | 2 +-
vapi/mutter-clutter.vapi | 184 +++++++++++++++++++++++++-----
vapi/mutter-cogl-10.deps | 1 +
vapi/mutter-cogl-10.vapi | 1 +
vapi/mutter-cogl-6.vapi | 77 ++++++++++++-
vapi/mutter-cogl-pango-10.vapi | 1 +
wingpanel-interface/meson.build | 11 ++
22 files changed, 1080 insertions(+), 38 deletions(-)
create mode 100644 vapi/Clutter-10-custom.vala
create mode 100644 vapi/Clutter-10.metadata
create mode 100644 vapi/Cogl-10-custom.vala
create mode 100644 vapi/Cogl-10.metadata
create mode 100644 vapi/Meta-10.metadata
create mode 120000 vapi/libmutter-10.deps
create mode 120000 vapi/libmutter-10.vapi
create mode 100644 vapi/libsystemd.vapi
create mode 100644 vapi/mutter-clutter-10.deps
create mode 120000 vapi/mutter-clutter-10.vapi
create mode 120000 vapi/mutter-cogl-10.deps
create mode 120000 vapi/mutter-cogl-10.vapi
create mode 120000 vapi/mutter-cogl-pango-10.vapi
diff --git a/vapi/Clutter-10-custom.vala b/vapi/Clutter-10-custom.vala
new file mode 100644
index 00000000..e5c71c2d
--- /dev/null
+++ b/vapi/Clutter-10-custom.vala
@@ -0,0 +1,53 @@
+namespace Clutter {
+ public struct Color {
+ [CCode (cname = "_vala_clutter_color_from_hls")]
+ public static Clutter.Color? from_hls (float hue, float luminance, float saturation) {
+ var color = Clutter.Color.alloc ();
+ color.init_from_hls (hue, luminance, saturation);
+ return color;
+ }
+ [CCode (cname = "_vala_clutter_color_from_pixel")]
+ public static Clutter.Color? from_pixel (uint32 pixel) {
+ var color = Clutter.Color.alloc ();
+ color.init_from_pixel (pixel);
+ return color;
+ }
+ [CCode (cname = "_vala_clutter_color_from_string")]
+ public static Clutter.Color? from_string (string str) {
+ var color = Clutter.Color.alloc ();
+ color.init_from_string (str);
+ return color;
+ }
+ [CCode (cname = "clutter_color_from_string")]
+ public bool parse_string (string str);
+ }
+
+ public interface Container : GLib.Object {
+ public void add (params Clutter.Actor[] actors);
+ [CCode (cname = "clutter_container_class_find_child_property")]
+ public class unowned GLib.ParamSpec find_child_property (string property_name);
+ [CCode (cname = "clutter_container_class_list_child_properties")]
+ public class unowned GLib.ParamSpec[] list_child_properties ();
+ }
+
+ public struct Units {
+ [CCode (cname = "clutter_units_from_cm")]
+ public Units.from_cm (float cm);
+ [CCode (cname = "clutter_units_from_em")]
+ public Units.from_em (float em);
+ [CCode (cname = "clutter_units_from_em_for_font")]
+ public Units.from_em_for_font (string font_name, float em);
+ [CCode (cname = "clutter_units_from_mm")]
+ public Units.from_mm (float mm);
+ [CCode (cname = "clutter_units_from_pixels")]
+ public Units.from_pixels (int px);
+ [CCode (cname = "clutter_units_from_pt")]
+ public Units.from_pt (float pt);
+ [CCode (cname = "clutter_units_from_string")]
+ public Units.from_string (string str);
+ }
+
+ [CCode (cheader_filename = "clutter/clutter.h", has_copy_function = false, has_destroy_function = false, has_type_id = false)]
+ public struct Capture {
+ }
+}
diff --git a/vapi/Clutter-10.metadata b/vapi/Clutter-10.metadata
new file mode 100644
index 00000000..5b69ae58
--- /dev/null
+++ b/vapi/Clutter-10.metadata
@@ -0,0 +1,192 @@
+// Non mini-object
+ActorBox struct
+Color struct
+Knot struct
+Margin struct
+PaintVolume struct
+PathNode struct
+Perspective struct
+Units struct
+
+*.ref unowned
+
+Actor
+ .apply_transform.matrix ref
+ .get_abs_allocation_vertices.verts out=false
+Canvas
+ .new symbol_type="constructor"
+Event.type#method name="get_type"
+Image
+ .new symbol_type="constructor"
+
+// ???
+Actor.has_pointer#method name="get_has_pointer"
+ScriptError errordomain
+ImageError errordomain
+
+// Not all backing symbols are deprecated
+Actor.pick deprecated=false
+
+// Nullable return values
+Actor
+ .get_parent nullable
+value_get_color nullable
+
+// method/virtual-method/signal don't match
+Actor
+ .event#method name="emit_event"
+ .get_paint_volume#virtual_method name="get_paint_volume_vfunc"
+ .get_paint_volume#virtual_method.volume out
+Container
+ .add_actor skip=false
+ .class_* skip
+Text
+ .activate#method name="try_activate"
+ .insert_text#signal skip
+TextBuffer.get_text#virtual_method name="get_text_with_length"
+
+// virtual/abstract distinction
+Container
+ .*_child_meta#virtual_method virtual
+
+// Default values
+Stage.read_pixels
+ .width default=-1
+ .height default=-1
+Stage.paint_to_buffer
+ .data type="uint8[]"
+Text
+ .position_to_coords.line_height default=null
+
+// Reparented funcs methods can't be instance methods
+feature_available skip
+feature_get_all skip
+
+// Skipped by g-i for unknown reasons
+LayoutManager
+ .create_child_meta skip=false
+
+// Variadic arguments
+Backend
+ .get_cogl_context skip=false
+Container
+ .child_get skip=false
+ .child_set skip=false
+ .remove skip=false
+Interval
+ .new skip=false
+ .get_interval skip=false
+ .set_final skip=false
+ .set_initial skip=false
+ .set_interval skip=false
+LayoutManager
+ .child_get skip=false
+ .child_set skip=false
+Script
+ .get_objects skip=false
+
+// Skipped upstream for unknown reasons
+Interval.register_progress_func skip=false
+threads_add_idle skip=false
+threads_add_idle_full skip=false
+threads_add_timeout skip=false
+threads_add_timeout_full skip=false
+
+// struct/class confusion
+ActorBox
+ .new skip
+ .from_vertices skip
+Units.from_* skip
+Margin
+ .new skip
+
+// Class methods
+container_class_find_child_property skip
+container_class_list_child_properties skip
+
+// Move symbols
+units_from_* skip
+
+// Struct return values
+color_get_static nullable
+
+// Upstream
+Event
+ .get_position.position out
+
+FrameListenerIface skip
+FrameClock.new skip
+
+// Remove for clutter-2.0
+/////////////////////////
+
+StageView.layout skip
+
+Stage
+ .event name="emit_event"
+ .paint_view.redraw_clip type="Cairo.Region"
+
+Capture
+ .image type="Cairo.ImageSurface"
+
+// *Event should be compact classes derived from Clutter.Event
+Event.type skip=false
+AnyEvent struct=false base_type="Clutter.Event"
+ButtonEvent struct=false base_type="Clutter.Event"
+CrossingEvent struct=false base_type="Clutter.Event"
+DeviceEvent struct=false base_type="Clutter.Event"
+IMEvent struct=false base_type="Clutter.Event"
+KeyEvent struct=false base_type="Clutter.Event"
+MotionEvent struct=false base_type="Clutter.Event"
+PadButtonEvent struct=false base_type="Clutter.Event"
+PadRingEvent struct=false base_type="Clutter.Event"
+PadStripEvent struct=false base_type="Clutter.Event"
+ProximityEvent struct=false base_type="Clutter.Event"
+ScrollEvent struct=false base_type="Clutter.Event"
+TouchEvent struct=false base_type="Clutter.Event"
+TouchpadHoldEvent struct=false base_type="Clutter.Event"
+TouchpadPinchEvent struct=false base_type="Clutter.Event"
+TouchpadSwipeEvent struct=false base_type="Clutter.Event"
+
+// Keysyms used to be CLUTTER_X instead of CLUTTER_KEY_X
+*#constant skip
+COGL skip=false
+CURRENT_TIME skip=false
+FLAVOUR skip=false
+PATH_RELATIVE skip=false
+PRIORITY_REDRAW skip=false
+
+// Clutter devs don't like us creating nested namespaces
+value_* name="value_(.+)" parent="Clutter.Value"
+threads_* name="threads_(.+)" parent="Clutter.Threads"
+threads_add_idle name="add" parent="Clutter.Threads.Idle"
+threads_add_idle_full name="add_full" parent="Clutter.Threads.Idle"
+threads_add_timeout name="add" parent="Clutter.Threads.Timeout"
+threads_add_timeout_full name="add_full" parent="Clutter.Threads.Timeout"
+
+// Backwards compatibility
+Color.alloc symbol_type="function"
+
+Color.from_hls name="init_from_hls"
+Color.from_pixel name="init_from_pixel"
+Color.from_string name="init_from_string"
+
+Color.new name="from_rgba" symbol_type="function"
+ .alpha default=0
+ .blue default=0
+ .green default=0
+ .red default=0
+
+Color.init
+ .alpha default=0
+ .blue default=0
+ .green default=0
+ .red default=0
+
+BinAlignment deprecated=false deprecated_since=null
+BinAlignment.* deprecated
+BinAlignment.start deprecated=false
+BinLayout.new.*_align default=Clutter.BinAlignment.START
+
+// Possibly keep
+KEY_* skip=false name="KEY_(.+)" type="uint" parent="Clutter.Key"
diff --git a/vapi/Clutter-9-custom.vala b/vapi/Clutter-9-custom.vala
index abc9b22d..e5c71c2d 100644
--- a/vapi/Clutter-9-custom.vala
+++ b/vapi/Clutter-9-custom.vala
@@ -1,4 +1,27 @@
namespace Clutter {
+ public struct Color {
+ [CCode (cname = "_vala_clutter_color_from_hls")]
+ public static Clutter.Color? from_hls (float hue, float luminance, float saturation) {
+ var color = Clutter.Color.alloc ();
+ color.init_from_hls (hue, luminance, saturation);
+ return color;
+ }
+ [CCode (cname = "_vala_clutter_color_from_pixel")]
+ public static Clutter.Color? from_pixel (uint32 pixel) {
+ var color = Clutter.Color.alloc ();
+ color.init_from_pixel (pixel);
+ return color;
+ }
+ [CCode (cname = "_vala_clutter_color_from_string")]
+ public static Clutter.Color? from_string (string str) {
+ var color = Clutter.Color.alloc ();
+ color.init_from_string (str);
+ return color;
+ }
+ [CCode (cname = "clutter_color_from_string")]
+ public bool parse_string (string str);
+ }
+
public interface Container : GLib.Object {
public void add (params Clutter.Actor[] actors);
[CCode (cname = "clutter_container_class_find_child_property")]
diff --git a/vapi/Clutter-9.metadata b/vapi/Clutter-9.metadata
index 7955ad82..0750e787 100644
--- a/vapi/Clutter-9.metadata
+++ b/vapi/Clutter-9.metadata
@@ -106,8 +106,6 @@ ActorBox
.new skip
.from_vertices skip
Units.from_* skip
-Color
- .new skip
Margin
.new skip
@@ -116,7 +114,6 @@ container_class_find_child_property skip
container_class_list_child_properties skip
// Move symbols
-color_from_* skip
units_from_* skip
// Struct return values
@@ -178,6 +175,22 @@ threads_add_timeout_full name="add_full" parent="Clutter.Threads.Timeout"
// Backwards compatibility
Color.alloc symbol_type="function"
+Color.from_hls name="init_from_hls"
+Color.from_pixel name="init_from_pixel"
+Color.from_string name="init_from_string"
+
+Color.new name="from_rgba" symbol_type="function"
+ .alpha default=0
+ .blue default=0
+ .green default=0
+ .red default=0
+
+Color.init
+ .alpha default=0
+ .blue default=0
+ .green default=0
+ .red default=0
+
BinAlignment deprecated=false deprecated_since=null
BinAlignment.* deprecated
BinAlignment.start deprecated=false
diff --git a/vapi/Cogl-10-custom.vala b/vapi/Cogl-10-custom.vala
new file mode 100644
index 00000000..f6034717
--- /dev/null
+++ b/vapi/Cogl-10-custom.vala
@@ -0,0 +1,161 @@
+namespace Cogl {
+ public struct Color {
+ [Version (since = "1.4")]
+ [CCode (cname="cogl_color_init_from_4f")]
+ public Color.from_4f (float red, float green, float blue, float alpha);
+ [Version (since = "1.4")]
+ [CCode (cname="cogl_color_init_from_4fv")]
+ public Color.from_4fv (float color_array);
+ [Version (since = "1.4")]
+ [CCode (cname="cogl_color_init_from_4ub")]
+ public Color.from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
+ [Version (since = "1.16")]
+ [CCode (cname="cogl_color_init_from_hsl")]
+ public Color.from_hsl (float hue, float saturation, float luminance);
+ }
+
+ [Compact]
+ [CCode (cname = "CoglHandle", cheader_filename = "cogl/cogl.h", type_id = "cogl_handle_get_gtype ()", ref_function = "cogl_object_ref", unref_function = "cogl_object_unref")]
+ public class Shader : Cogl.Handle {
+ }
+
+ [CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_primitive_get_gtype ()")]
+ public class Primitive : Cogl.Object {
+ [CCode (has_construct_function = false)]
+ protected Primitive ();
+ [Version (since = "1.10")]
+ public Cogl.Primitive copy ();
+ [Version (since = "1.16")]
+ public void draw (Cogl.Framebuffer framebuffer, Cogl.Pipeline pipeline);
+ public int get_first_vertex ();
+ public Cogl.VerticesMode get_mode ();
+ [Version (since = "1.8")]
+ public int get_n_vertices ();
+ [CCode (has_construct_function = false)]
+ [Version (since = "1.6")]
+ public Primitive.p2 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP2[] data);
+ [CCode (has_construct_function = false)]
+ [Version (since = "1.6")]
+ public Primitive.p2c4 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP2C4[] data);
+ [CCode (has_construct_function = false)]
+ [Version (since = "1.6")]
+ public Primitive.p2t2 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP2T2[] data);
+ [CCode (has_construct_function = false)]
+ [Version (since = "1.6")]
+ public Primitive.p2t2c4 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP2T2C4[] data);
+ [CCode (has_construct_function = false)]
+ [Version (since = "1.6")]
+ public Primitive.p3 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP3[] data);
+ [CCode (has_construct_function = false)]
+ [Version (since = "1.6")]
+ public Primitive.p3c4 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP3C4[] data);
+ [CCode (has_construct_function = false)]
+ [Version (since = "1.6")]
+ public Primitive.p3t2 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP3T2[] data);
+ [CCode (has_construct_function = false)]
+ [Version (since = "1.6")]
+ public Primitive.p3t2c4 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP3T2C4[] data);
+ public void set_first_vertex (int first_vertex);
+ public void set_mode (Cogl.VerticesMode mode);
+ [Version (since = "1.8")]
+ public void set_n_vertices (int n_vertices);
+ }
+
+ [Compact]
+ [CCode (cname = "CoglHandle", cheader_filename = "cogl/cogl.h", type_id = "cogl_handle_get_gtype ()", ref_function = "cogl_object_ref", unref_function = "cogl_object_unref")]
+ public class Program : Cogl.Handle {
+ }
+
+ [Compact]
+ [CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_handle_get_gtype ()", ref_function = "cogl_object_ref", unref_function = "cogl_object_unref")]
+ public class Handle {
+ [CCode (cheader_filename = "cogl/cogl.h", cname="cogl_is_material")]
+ [Version (deprecated = true, deprecated_since = "1.16")]
+ public bool is_material ();
+ [CCode (cheader_filename = "cogl/cogl.h", cname="cogl_is_program")]
+ [Version (deprecated = true, deprecated_since = "1.16")]
+ public bool is_program (Cogl.Handle handle);
+ [CCode (cheader_filename = "cogl/cogl.h", cname="cogl_is_shader")]
+ [Version (deprecated = true, deprecated_since = "1.16")]
+ public bool is_shader ();
+ [CCode (cheader_filename = "cogl/cogl.h", cname="cogl_is_texture")]
+ public bool is_texture ();
+ }
+
+ [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
+ [Version (since = "1.6")]
+ public struct VertexP2 {
+ public float x;
+ public float y;
+ }
+ [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
+ [Version (since = "1.6")]
+ public struct VertexP2C4 {
+ public float x;
+ public float y;
+ public uint8 r;
+ public uint8 g;
+ public uint8 b;
+ public uint8 a;
+ }
+ [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
+ [Version (since = "1.6")]
+ public struct VertexP2T2 {
+ public float x;
+ public float y;
+ public float s;
+ public float t;
+ }
+ [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
+ [Version (since = "1.6")]
+ public struct VertexP2T2C4 {
+ public float x;
+ public float y;
+ public float s;
+ public float t;
+ public uint8 r;
+ public uint8 g;
+ public uint8 b;
+ public uint8 a;
+ }
+ [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
+ [Version (since = "1.6")]
+ public struct VertexP3 {
+ public float x;
+ public float y;
+ public float z;
+ }
+ [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
+ [Version (since = "1.6")]
+ public struct VertexP3C4 {
+ public float x;
+ public float y;
+ public float z;
+ public uint8 r;
+ public uint8 g;
+ public uint8 b;
+ public uint8 a;
+ }
+ [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
+ [Version (since = "1.6")]
+ public struct VertexP3T2 {
+ public float x;
+ public float y;
+ public float z;
+ public float s;
+ public float t;
+ }
+ [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
+ [Version (since = "1.6")]
+ public struct VertexP3T2C4 {
+ public float x;
+ public float y;
+ public float z;
+ public float s;
+ public float t;
+ public uint8 r;
+ public uint8 g;
+ public uint8 b;
+ public uint8 a;
+ }
+}
diff --git a/vapi/Cogl-10.metadata b/vapi/Cogl-10.metadata
new file mode 100644
index 00000000..06197be7
--- /dev/null
+++ b/vapi/Cogl-10.metadata
@@ -0,0 +1,68 @@
+* cheader_filename="cogl/cogl.h"
+
+Color struct
+
+_ColorSizeCheck skip
+_TextureVertexSizeCheck skip
+
+Color.equal.v1 type="Cogl.Color"
+Color.equal.v2 type="Cogl.Color"
+color_equal skip
+
+Context.free_timestamp_query.query owned
+
+texture_new_* name="texture_new_(.+)" parent="Cogl.Texture"
+Texture
+ .get_data.data type="uint8[]"
+ .new_from_data.data type="uint8[]"
+ .set_data.data type="uint8[]"
+ .set_region.data type="uint8[]"
+
+Texture2D
+ .new_from_data skip=false
+ .new_from_data.data array=true
+
+shader_* name="shader_(.+)" parent="Cogl.Shader"
+shader_* symbol_type="method" instance_idx=0
+
+program_* name="program_(.+)" parent="Cogl.Program"
+program_attach_shader symbol_type="method" instance_idx=0
+program_get_uniform_location symbol_type="method" instance_idx=0
+program_link symbol_type="method" instance_idx=0
+program_set_uniform_1f symbol_type="method" instance_idx=0
+program_set_uniform_1i symbol_type="method" instance_idx=0
+program_set_uniform_float symbol_type="method" instance_idx=0
+program_set_uniform_int symbol_type="method" instance_idx=0
+program_set_uniform_matrix symbol_type="method" instance_idx=0
+
+is_bitmap parent="Cogl.Object" symbol_type="method" instance_idx=0
+is_program parent="Cogl.Handle"
+is_shader parent="Cogl.Handle"
+is_texture parent="Cogl.Object" symbol_type="method" instance_idx=0
+is_context parent="Cogl.Object" symbol_type="method" instance_idx=0
+is_framebuffer parent="Cogl.Object" symbol_type="method" instance_idx=0
+is_frame_info parent="Cogl.Object" symbol_type="method" instance_idx=0
+is_pipeline parent="Cogl.Object" symbol_type="method" instance_idx=0
+is_texture_2d parent="Cogl.Object" symbol_type="method" instance_idx=0
+is_texture_2d_sliced parent="Cogl.Object" symbol_type="method" instance_idx=0
+
+create_program type="unowned Cogl.Program" name="create" parent="Cogl.Program"
+create_shader type="unowned Cogl.Shader" name="create" parent="Cogl.Shader"
+
+foreach_feature parent="Cogl.Context" symbol_type="method" instance_idx=0
+get_graphics_reset_status parent="Cogl.Context" symbol_type="method" instance_idx=0
+has_feature parent="Cogl.Context" symbol_type="method" instance_idx=0
+
+Bitmap.error_quark parent="Cogl.BitmapError" name="quark"
+Texture.error_quark parent="Cogl.TextureError" name="quark"
+texture_error_quark skip
+Scanout.error_quark parent="Cogl.ScanoutError" name="quark"
+scanout_error_quark skip
+
+BitmapError errordomain
+BlendStringError errordomain
+RendererError errordomain
+SystemError errordomain
+TextureError errordomain
+FramebufferError errordomain
+ScanoutError errordomain
diff --git a/vapi/Meta-10.metadata b/vapi/Meta-10.metadata
new file mode 100644
index 00000000..eaefc051
--- /dev/null
+++ b/vapi/Meta-10.metadata
@@ -0,0 +1,181 @@
+* skip=false
+*.* skip=false
+* cheader_filename="meta/main.h"
+
+Backend cheader_filename="meta/meta-backend.h"
+Backend.gpu_added skip
+get_backend parent="Meta.Backend" cheader_filename="meta/meta-backend.h"
+Background cheader_filename="meta/meta-background.h"
+Background.set_file.file nullable
+BackgroundContent.new symbol_type="constructor"
+BackgroundActor cheader_filename="meta/meta-background-actor.h"
+BackgroundContent cheader_filename="meta/meta-background-content.h"
+BackgroundGroup cheader_filename="meta/meta-background-group.h"
+BackgroundImage cheader_filename="meta/meta-background-image.h"
+BackgroundImageCache cheader_filename="meta/meta-background-image.h"
+Barrier cheader_filename="meta/barrier.h"
+BarrierDirection cheader_filename="meta/barrier.h"
+BarrierEvent cheader_filename="meta/barrier.h"
+ButtonFunction cheader_filename="meta/common.h"
+ButtonLayout cheader_filename="meta/common.h"
+Compositor cheader_filename="meta/compositor.h"
+Compositor.sync_stack.stack type_arguments="Meta.Window"
+get_feedback_group_for_display parent="Meta.Display" symbol_type="method" name="get_feedback_group" instance_idx=0 cheader_filename="meta/compositor-mutter.h"
+get_stage_for_display parent="Meta.Display" symbol_type="method" name="get_stage" instance_idx=0 cheader_filename="meta/compositor-mutter.h"
+get_top_window_group_for_display parent="Meta.Display" symbol_type="method" name="get_top_window_group" instance_idx=0 cheader_filename="meta/compositor-mutter.h"
+get_window_group_for_display parent="Meta.Display" symbol_type="method" name="get_window_group" instance_idx=0 cheader_filename="meta/compositor-mutter.h"
+disable_unredirect_for_display parent="Meta.Display" symbol_type="method" name="disable_unredirect" instance_idx=0 cheader_filename="meta/compositor-mutter.h"
+enable_unredirect_for_display parent="Meta.Display" symbol_type="method" name="enable_unredirect" instance_idx=0 cheader_filename="meta/compositor-mutter.h"
+
+get_window_actors parent="Meta.Display" symbol_type="method" instance_idx=0 cheader_filename="meta/compositor-mutter.h" type_arguments="Meta.WindowActor"
+focus_stage_window parent="Meta.Display" symbol_type="method" instance_idx=0 cheader_filename="meta/compositor-mutter.h"
+
+CompEffect cheader_filename="meta/compositor.h"
+CloseDialog cheader_filename="meta/meta-close-dialog.h"
+CloseDialogResponse cheader_filename="meta/meta-close-dialog.h"
+Context cheader_filename="meta/meta-context.h"
+Cursor cheader_filename="meta/common.h"
+CursorTracker cheader_filename="meta/meta-cursor-tracker.h"
+CursorTracker.get_for_display parent="Meta.Display" symbol_type="method" instance_idx=0 name="get_cursor_tracker"
+CursorTracker.get_pointer.mods out
+DebugTopic cheader_filename="meta/util.h"
+Direction cheader_filename="meta/common.h"
+Display cheader_filename="meta/display.h"
+DisplayCorner cheader_filename="meta/display.h"
+DisplayDirection cheader_filename="meta/display.h"
+Dnd cheader_filename="meta/meta-dnd.h"
+EdgeType cheader_filename="meta/boxes.h"
+Edge cheader_filename="meta/boxes.h"
+Frame cheader_filename="meta/types.h"
+FrameBorders cheader_filename="meta/common.h"
+FrameFlags cheader_filename="meta/common.h"
+FrameType cheader_filename="meta/common.h"
+GrabOp cheader_filename="meta/common.h"
+Group cheader_filename="meta/group.h"
+Group.property_notify.event type="X.Event" ref
+IdleMonitor cheader_filename="meta/meta-idle-monitor.h"
+IdleMonitorWatchFunc cheader_filename="meta/meta-idle-monitor.h"
+InhibitShortcutsDialog cheader_filename="meta/meta-inhibit-shortcuts-dialog.h"
+InhibitShortcutsDialogResponse cheader_filename="meta/meta-inhibit-shortcuts-dialog.h"
+KeyBinding cheader_filename="meta/keybindings.h"
+keybindings_set_custom_handler parent="Meta.KeyBinding" name="set_custom_handler" cheader_filename="meta/keybindings.h"
+KeyBindingAction cheader_filename="meta/prefs.h"
+KeyBindingFlags cheader_filename="meta/prefs.h"
+KeyHandlerFunc cheader_filename="meta/prefs.h"
+KeyHandlerFunc.event type="Clutter.KeyEvent?"
+KeyHandlerFunc.window nullable
+LaunchContext cheader_filename="meta/meta-launch-context.h"
+LaterType cheader_filename="meta/util.h"
+LocaleDirection cheader_filename="meta/util.h"
+MaximizeFlags cheader_filename="meta/window.h"
+ModalOptions cheader_filename="meta/meta-plugin.h"
+MonitorManager cheader_filename="meta/meta-monitor-manager.h"
+MonitorSwitchConfigType cheader_filename="meta/meta-monitor-manager.h"
+MotionDirection cheader_filename="meta/common.h"
+PadActionType cheader_filename="meta/display.h"
+Plugin cheader_filename="meta/meta-plugin.h"
+Plugin.xevent_filter.event type="X.Event" ref
+PluginInfo cheader_filename="meta/meta-plugin.h"
+Preference cheader_filename="meta/prefs.h"
+PrefsChangedFunc cheader_filename="meta/prefs.h"
+Rectangle cheader_filename="meta/boxes.h" struct
+RemoteAccessController cheader_filename="meta/meta-remote-access-controller.h"
+RemoteAccessHandle cheader_filename="meta/meta-remote-access-controller.h"
+Selection cheader_filename="meta/meta-selection.h"
+SelectionSource cheader_filename="meta/meta-selection-source.h"
+SelectionSourceMemory cheader_filename="meta/meta-selection-source-memory.h"
+SelectionType cheader_filename="meta/meta-selection-source.h"
+Settings cheader_filename="meta/meta-settings.h"
+Shadow cheader_filename="meta/meta-shadow-factory.h"
+ShadowFactory cheader_filename="meta/meta-shadow-factory.h"
+ShadowMode cheader_filename="meta/meta-window-actor.h"
+ShadowParams cheader_filename="meta/meta-shadow-factory.h"
+ShapedTexture cheader_filename="meta/meta-shaped-texture.h"
+Side cheader_filename="meta/common.h"
+SizeChange cheader_filename="meta/compositor.h"
+SoundPlayer cheader_filename="meta/meta-sound-player.h"
+StartupNotification cheader_filename="meta/meta-startup-notification.h"
+StartupNotification.changed.object type="Meta.StartupSequence"
+StartupNotification.get_sequences type_arguments="Meta.StartupSequence"
+StartupSequence cheader_filename="meta/meta-startup-notification.h"
+StackLayer cheader_filename="meta/common.h"
+Stage cheader_filename="meta/meta-stage.h"
+Stage.is_focused parent="Meta.Display" symbol_type="method" name="stage_is_focused" instance_idx=0 cheader_filename="meta/compositor-mutter.h"
+Strut cheader_filename="meta/boxes.h"
+TabList cheader_filename="meta/display.h"
+TabShowType cheader_filename="meta/display.h"
+Theme cheader_filename="meta/theme.h"
+theme_get_default cheader_filename="meta/theme.h"
+theme_new cheader_filename="meta/theme.h"
+VirtualModifier cheader_filename="meta/common.h"
+Workspace cheader_filename="meta/workspace.h"
+WorkspaceManager cheader_filename="meta/meta-workspace-manager.h"
+Window cheader_filename="meta/window.h"
+Window.focus#signal name="focused"
+Window.icon type="Cairo.Surface"
+Window.mini_icon type="Cairo.Surface"
+WindowActor cheader_filename="meta/meta-window-actor.h"
+WindowClientType cheader_filename="meta/window.h"
+WindowForeachFunc cheader_filename="meta/window.h"
+WindowGroup cheader_filename="meta/meta-window-group.h"
+WindowMenuType cheader_filename="meta/compositor.h"
+WindowShape cheader_filename="meta/meta-window-shape.h"
+WindowType cheader_filename="meta/window.h"
+X11Display cheader_filename="meta/meta-x11-display.h"
+
+rect skip
+prefs_* parent="Meta.Prefs" name="prefs_(.+)" cheader_filename="meta/prefs.h"
+
+g_utf8_strndup skip
+
+preference_to_string cheader_filename="meta/prefs.h"
+frame_type_to_string cheader_filename="meta/util.h"
+topic_to_string parent="Meta.DebugTopic" name="to_string"
+
+CURRENT_TIME cheader_filename="meta/common.h"
+ICON_WIDTH cheader_filename="meta/common.h"
+ICON_HEIGHT cheader_filename="meta/common.h"
+MINI_ICON_WIDTH cheader_filename="meta/common.h"
+MINI_ICON_HEIGHT cheader_filename="meta/common.h"
+DEFAULT_ICON_NAME cheader_filename="meta/common.h"
+PRIORITY_RESIZE cheader_filename="meta/common.h"
+PRIORITY_BEFORE_REDRAW cheader_filename="meta/common.h"
+PRIORITY_REDRAW cheader_filename="meta/common.h"
+PRIORITY_PREFS_NOTIFY cheader_filename="meta/common.h"
+VIRTUAL_CORE_POINTER_ID cheader_filename="meta/common.h"
+VIRTUAL_CORE_KEYBOARD_ID cheader_filename="meta/common.h"
+
+add_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h"
+bug parent="Meta.Util" cheader_filename="meta/util.h"
+external_binding_name_for_action parent="Meta.Util" cheader_filename="meta/util.h"
+fatal parent="Meta.Util" cheader_filename="meta/util.h"
+get_locale_direction parent="Meta.Util" cheader_filename="meta/util.h"
+is_syncing parent="Meta.Util" cheader_filename="meta/util.h"
+is_verbose parent="Meta.Util" cheader_filename="meta/util.h"
+is_wayland_compositor parent="Meta.Util" cheader_filename="meta/util.h"
+later_add parent="Meta.Util" cheader_filename="meta/util.h"
+later_remove parent="Meta.Util" cheader_filename="meta/util.h"
+pop_no_msg_prefix parent="Meta.Util" cheader_filename="meta/util.h"
+push_no_msg_prefix parent="Meta.Util" cheader_filename="meta/util.h"
+remove_verbose_topic parent="Meta.Util" cheader_filename="meta/util.h"
+show_dialog parent="Meta.Util" cheader_filename="meta/util.h"
+show_dialog.columns type_arguments="string" nullable default=null
+show_dialog.entries type_arguments="string" nullable default=null
+show_dialog.transient_for default=0
+show_dialog.icon_name nullable default=null
+show_dialog.cancel_text nullable default=null
+show_dialog.ok_text nullable default=null
+show_dialog.display nullable default=null
+show_dialog.timeout nullable default=null
+unsigned_long_equal parent="Meta.Util" name="ulong_equal" cheader_filename="meta/util.h"
+unsigned_long_equal.v1 type="ulong?"
+unsigned_long_equal.v2 type="ulong?"
+unsigned_long_hash parent="Meta.Util" name="ulong_hash" cheader_filename="meta/util.h"
+unsigned_long_hash.v type="ulong?"
+warning parent="Meta.Util" cheader_filename="meta/util.h"
+create_context parent="Meta.Context" name="new" symbol_type="constructor" cheader_filename="meta/meta-context.h"
+
+x11_error_trap_pop parent="Meta.X11Display" symbol_type="method" name="error_trap_pop" instance_idx=0 cheader_filename="meta/meta-x11-errors.h"
+x11_error_trap_pop_with_return parent="Meta.X11Display" symbol_type="method" name="error_trap_pop_with_return" instance_idx=0 cheader_filename="meta/meta-x11-errors.h"
+x11_error_trap_push parent="Meta.X11Display" symbol_type="method" name="error_trap_push" instance_idx=0 cheader_filename="meta/meta-x11-errors.h"
+x11_init_gdk_display parent="Meta.X11Display" cheader_filename="meta/meta-x11-display.h"
diff --git a/vapi/config.vapi b/vapi/config.vapi
index c2c3a35b..35abae73 100644
--- a/vapi/config.vapi
+++ b/vapi/config.vapi
@@ -18,6 +18,8 @@
[CCode (cprefix = "", lower_case_cprefix = "", cheader_filename = "config.h")]
namespace Config
{
+ public const string GETTEXT_PACKAGE;
+ public const string LOCALEDIR;
public const string DATADIR;
public const string PKGDATADIR;
public const string VERSION;
diff --git a/vapi/libmutter-10.deps b/vapi/libmutter-10.deps
new file mode 120000
index 00000000..cdf92777
--- /dev/null
+++ b/vapi/libmutter-10.deps
@@ -0,0 +1 @@
+libmutter-9.deps
\ No newline at end of file
diff --git a/vapi/libmutter-10.vapi b/vapi/libmutter-10.vapi
new file mode 120000
index 00000000..3d8073f5
--- /dev/null
+++ b/vapi/libmutter-10.vapi
@@ -0,0 +1 @@
+libmutter-9.vapi
\ No newline at end of file
diff --git a/vapi/libmutter.vapi b/vapi/libmutter.vapi
index baba792d..5dacb629 100644
--- a/vapi/libmutter.vapi
+++ b/vapi/libmutter.vapi
@@ -137,14 +137,18 @@ namespace Meta {
#endif
[CCode (cheader_filename = "meta/util.h", cname = "meta_show_dialog")]
public static GLib.Pid show_dialog (string type, string message, string? timeout = null, string? display = null, string? ok_text = null, string? cancel_text = null, string? icon_name = null, int transient_for = 0, GLib.SList<string>? columns = null, GLib.SList<string>? entries = null);
+#if !HAS_MUTTER42
[CCode (cheader_filename = "meta/util.h", cname = "meta_topic_real")]
public static void topic_real (Meta.DebugTopic topic, string format, ...);
+#endif
[CCode (cheader_filename = "meta/util.h", cname = "meta_unsigned_long_equal")]
public static int ulong_equal ([CCode (type = "gconstpointer")] ulong? v1, [CCode (type = "gconstpointer")] ulong? v2);
[CCode (cheader_filename = "meta/util.h", cname = "meta_unsigned_long_hash")]
public static uint ulong_hash ([CCode (type = "gconstpointer")] ulong? v);
+#if !HAS_MUTTER42
[CCode (cheader_filename = "meta/util.h", cname = "meta_verbose_real")]
public static void verbose_real (string format, ...);
+#endif
[CCode (cheader_filename = "meta/util.h", cname = "meta_warning")]
public static void warning (string format, ...);
}
@@ -159,16 +163,24 @@ namespace Meta {
public unowned Meta.IdleMonitor get_core_idle_monitor ();
#endif
public unowned Meta.Dnd get_dnd ();
+#if HAS_MUTTER42
+ public unowned Meta.MonitorManager get_monitor_manager ();
+#endif
public unowned Meta.RemoteAccessController get_remote_access_controller ();
public unowned Meta.Settings get_settings ();
public unowned Clutter.Actor get_stage ();
+#if HAS_MUTTER42
+ public bool is_headless ();
+#endif
public bool is_rendering_hardware_accelerated ();
public void lock_layout_group (uint idx);
public void set_keymap (string layouts, string variants, string options);
#if HAS_MUTTER41
public Meta.Context context { get; construct; }
#endif
+#if !HAS_MUTTER42
public void set_numlock (bool numlock_state);
+#endif
public signal void keymap_changed ();
public signal void keymap_layout_group_changed (uint object);
public signal void last_device_changed (Clutter.InputDevice object);
@@ -352,6 +364,10 @@ namespace Meta {
public void terminate_with_error (GLib.Error error);
[NoAccessorMethod]
public string name { owned get; construct; }
+#if HAS_MUTTER42
+ [NoAccessorMethod]
+ public bool unsafe_mode { get; set; }
+#endif
}
#endif
[CCode (cheader_filename = "meta/meta-cursor-tracker.h", type_id = "meta_cursor_tracker_get_type ()")]
@@ -365,6 +381,9 @@ namespace Meta {
public void get_pointer (out int x, out int y, out Clutter.ModifierType mods);
#endif
public bool get_pointer_visible ();
+#if HAS_MUTTER42
+ public float get_scale ();
+#endif
public unowned Cogl.Texture get_sprite ();
public void set_pointer_visible (bool visible);
#if HAS_MUTTER338
@@ -444,6 +463,9 @@ namespace Meta {
public unowned Meta.X11Display get_x11_display ();
public uint grab_accelerator (string accelerator, Meta.KeyBindingFlags flags);
public bool is_pointer_emulating_sequence (Clutter.EventSequence? sequence);
+#if HAS_MUTTER42
+ public GLib.List<weak Meta.Window> list_all_windows ();
+#endif
public bool remove_keybinding (string name);
public void request_pad_osd (Clutter.InputDevice pad, bool edition_mode);
public void set_cursor (Meta.Cursor cursor);
@@ -569,6 +591,10 @@ namespace Meta {
public void switch_config (Meta.MonitorSwitchConfigType config_type);
[NoAccessorMethod]
public Meta.Backend backend { owned get; construct; }
+#if HAS_MUTTER42
+ [NoAccessorMethod]
+ public bool has_builtin_panel { get; }
+#endif
#if HAS_MUTTER338
public bool panel_orientation_managed { get; }
#endif
@@ -855,6 +881,9 @@ namespace Meta {
public unowned Meta.Workspace get_workspace ();
public X.Window get_xwindow ();
public void group_leader_changed ();
+#if HAS_MUTTER42
+ public bool has_attached_dialogs ();
+#endif
public bool has_focus ();
public bool is_above ();
public bool is_always_on_all_workspaces ();
@@ -923,6 +952,10 @@ namespace Meta {
public string gtk_window_object_path { get; }
[NoAccessorMethod]
public Cairo.Surface icon { owned get; }
+#if HAS_MUTTER42
+ [NoAccessorMethod]
+ public bool is_alive { get; }
+#endif
[NoAccessorMethod]
public bool maximized_horizontally { get; }
[NoAccessorMethod]
@@ -968,6 +1001,9 @@ namespace Meta {
public unowned Meta.Window get_meta_window ();
public unowned Meta.ShapedTexture get_texture ();
public bool is_destroyed ();
+#if HAS_MUTTER42
+ public Clutter.Content? paint_to_content (Meta.Rectangle? clip) throws GLib.Error;
+#endif
public void sync_visibility ();
#if HAS_MUTTER338
public void thaw ();
@@ -1277,6 +1313,10 @@ namespace Meta {
KMS,
SCREEN_CAST,
REMOTE_DESKTOP,
+#endif
+#if HAS_MUTTER42
+ BACKEND,
+ RENDER,
#endif
DBUS
}
@@ -1433,7 +1473,9 @@ namespace Meta {
CYCLE_PANELS,
CYCLE_PANELS_BACKWARD,
SHOW_DESKTOP,
+#if !HAS_MUTTER42
PANEL_MAIN_MENU,
+#endif
PANEL_RUN_DIALOG,
TOGGLE_RECORDING,
SET_SPEW_MARK,
@@ -1745,10 +1787,6 @@ namespace Meta {
#endif
[CCode (cheader_filename = "meta/main.h")]
public static void clutter_init ();
-#if HAS_MUTTER41
- [CCode (cheader_filename = "meta/meta-context.h")]
- public static Meta.Context create_context (string name);
-#endif
[CCode (cheader_filename = "meta/main.h")]
public static void exit (Meta.ExitCode code);
#if !HAS_MUTTER41
diff --git a/vapi/libsystemd.vapi b/vapi/libsystemd.vapi
new file mode 100644
index 00000000..54bc3a68
--- /dev/null
+++ b/vapi/libsystemd.vapi
@@ -0,0 +1,18 @@
+[CCode (cheader_filename = "systemd/sd-daemon.h")]
+namespace Systemd.Daemon {
+ [CCode (cname="sd_notify")]
+ int notify([CCode (type="int")]bool unset_environment, string state);
+
+ [CCode (cname="sd_notifyf")]
+ int notifyf([CCode (type="int")]bool unset_environment, string format, ...);
+
+ [CCode (cname="sd_pid_notify")]
+ int pid_notify(Posix.pid_t pid, [CCode (type="int")]bool unset_environment, string state);
+
+ [CCode (cname="sd_pid_notifyf")]
+ int pid_notifyf(Posix.pid_t pid, [CCode (type="int")]bool unset_environment, string format, ...);
+
+ [CCode (cname="sd_pid_notify_with_fds")]
+ int pid_notify_with_fds(Posix.pid_t pid, [CCode (type="int")]bool unset_environment, string state, int[] fds);
+}
+
diff --git a/vapi/meson.build b/vapi/meson.build
index 3773b0bc..a348b16b 100644
--- a/vapi/meson.build
+++ b/vapi/meson.build
@@ -286,3 +286,72 @@ if mutter41_dep.found()
output: 'libmutter-9.vapi'
)
endif
+if mutter42_dep.found()
+ cogl_target = custom_target('mutter-cogl-10',
+ command: [
+ vapigen,
+ mutter_typelib_dir / 'Cogl-10.gir',
+ '--library=mutter-cogl-10',
+ '--pkg=gobject-2.0',
+ '--pkg=cairo',
+ '--pkg=graphene-gobject-1.0',
+ vapigen_args,
+ files('Cogl-10-custom.vala')
+ ],
+ output: 'mutter-cogl-10.vapi'
+ )
+
+ cogl_pango_target = custom_target('mutter-cogl-pango-10',
+ command: [
+ vapigen,
+ mutter_typelib_dir / 'CoglPango-10.gir',
+ '--library=mutter-cogl-pango-10',
+ '--pkg=mutter-cogl-10',
+ '--pkg=pangocairo',
+ vapigen_args
+ ],
+ depends: cogl_target,
+ output: 'mutter-cogl-pango-10.vapi'
+ )
+
+ clutter_target = custom_target('mutter-clutter-10',
+ command: [
+ vapigen,
+ mutter_typelib_dir / 'Clutter-10.gir',
+ '--library=mutter-clutter-10',
+ '--pkg=graphene-gobject-1.0',
+ '--pkg=mutter-cogl-10',
+ '--pkg=mutter-cogl-pango-10',
+ '--pkg=atk',
+ '--pkg=gio-2.0',
+ '--pkg=json-glib-1.0',
+ '--pkg=pangocairo',
+ vapigen_args,
+ files('Clutter-10-custom.vala')
+ ],
+ depends: [ cogl_target, cogl_pango_target ],
+ output: 'mutter-clutter-10.vapi'
+ )
+
+ libmutter_target = custom_target('libmutter-10',
+ command: [
+ vapigen,
+ mutter_typelib_dir / 'Meta-10.gir',
+ '--library=libmutter-10',
+ '--pkg=graphene-gobject-1.0',
+ '--pkg=mutter-cogl-10',
+ '--pkg=mutter-cogl-pango-10',
+ '--pkg=mutter-clutter-10',
+ '--pkg=atk',
+ '--pkg=gio-2.0',
+ '--pkg=json-glib-1.0',
+ '--pkg=pangocairo',
+ '--pkg=gtk+-3.0',
+ '--pkg=x11',
+ '--pkg=xfixes-4.0',
+ vapigen_args
+ ],
+ depends: [ cogl_target, cogl_pango_target, clutter_target ],
+ output: 'libmutter-10.vapi'
+ )
+endif
diff --git a/vapi/mutter-clutter-10.deps b/vapi/mutter-clutter-10.deps
new file mode 100644
index 00000000..f4c6e420
--- /dev/null
+++ b/vapi/mutter-clutter-10.deps
@@ -0,0 +1,6 @@
+atk
+cairo
+pango
+json-glib-1.0
+mutter-cogl-10
+graphene-gobject-1.0
diff --git a/vapi/mutter-clutter-10.vapi b/vapi/mutter-clutter-10.vapi
new file mode 120000
index 00000000..8a0ba541
--- /dev/null
+++ b/vapi/mutter-clutter-10.vapi
@@ -0,0 +1 @@
+mutter-clutter-9.vapi
\ No newline at end of file
diff --git a/vapi/mutter-clutter-9.deps b/vapi/mutter-clutter-9.deps
index fffc4803..f4c6e420 100644
--- a/vapi/mutter-clutter-9.deps
+++ b/vapi/mutter-clutter-9.deps
@@ -2,5 +2,5 @@ atk
cairo
pango
json-glib-1.0
-mutter-cogl-9
+mutter-cogl-10
graphene-gobject-1.0
diff --git a/vapi/mutter-clutter.vapi b/vapi/mutter-clutter.vapi
index c54ca952..04307759 100644
--- a/vapi/mutter-clutter.vapi
+++ b/vapi/mutter-clutter.vapi
@@ -3,7 +3,6 @@
[CCode (cprefix = "Clutter", gir_namespace = "Clutter", gir_version = "1.0", lower_case_cprefix = "clutter_")]
namespace Clutter {
namespace Key {
-
[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_0")]
public const uint @0;
[CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_1")]
@@ -4629,6 +4628,11 @@ namespace Clutter {
public abstract class Action : Clutter.ActorMeta {
[CCode (has_construct_function = false)]
protected Action ();
+#if HAS_MUTTER42
+ public Clutter.EventPhase get_phase ();
+ [NoWrapper]
+ public virtual bool handle_event (Clutter.Event event);
+#endif
}
[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_actor_get_type ()")]
public class Actor : GLib.InitiallyUnowned, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable {
@@ -4638,6 +4642,9 @@ namespace Clutter {
public Actor ();
[Version (since = "1.4")]
public void add_action (Clutter.Action action);
+#if HAS_MUTTER42
+ public void add_action_full (string name, Clutter.EventPhase phase, Clutter.Action action);
+#endif
[Version (since = "1.4")]
public void add_action_with_name (string name, Clutter.Action action);
[Version (since = "1.10")]
@@ -4724,7 +4731,7 @@ namespace Clutter {
public void get_abs_allocation_vertices ([CCode (array_length = false)] Graphene.Point3D verts[4]);
public virtual unowned Atk.Object get_accessible ();
[Version (since = "1.4")]
- public unowned Clutter.Action get_action (string name);
+ public unowned Clutter.Action? get_action (string name);
[Version (since = "1.4")]
public GLib.List<weak Clutter.Action> get_actions ();
[Version (since = "0.8")]
@@ -4745,7 +4752,7 @@ namespace Clutter {
public static unowned Clutter.Actor get_by_gid (uint32 id_);
#endif
[Version (since = "1.10")]
- public unowned Clutter.Actor get_child_at_index (int index_);
+ public unowned Clutter.Actor? get_child_at_index (int index_);
[Version (since = "1.12")]
#if HAS_MUTTER40
public Graphene.Matrix get_child_transform ();
@@ -4759,11 +4766,11 @@ namespace Clutter {
[Version (since = "1.4")]
public bool get_clip_to_allocation ();
[Version (since = "1.4")]
- public unowned Clutter.Constraint get_constraint (string name);
+ public unowned Clutter.Constraint? get_constraint (string name);
[Version (since = "1.4")]
public GLib.List<weak Clutter.Constraint> get_constraints ();
[Version (since = "1.10")]
- public unowned Clutter.Content get_content ();
+ public unowned Clutter.Content? get_content ();
[Version (since = "1.10")]
public Clutter.ActorBox get_content_box ();
[Version (since = "1.10")]
@@ -4785,11 +4792,11 @@ namespace Clutter {
[Version (since = "1.10")]
public Clutter.AnimationMode get_easing_mode ();
[Version (since = "1.4")]
- public unowned Clutter.Effect get_effect (string name);
+ public unowned Clutter.Effect? get_effect (string name);
[Version (since = "1.4")]
public GLib.List<weak Clutter.Effect> get_effects ();
[Version (since = "1.10")]
- public unowned Clutter.Actor get_first_child ();
+ public unowned Clutter.Actor? get_first_child ();
#if HAS_MUTTER338
public bool get_fixed_position (out float x, out float y);
#endif
@@ -4802,9 +4809,9 @@ namespace Clutter {
public bool get_has_pointer ();
public float get_height ();
[Version (since = "1.10")]
- public unowned Clutter.Actor get_last_child ();
+ public unowned Clutter.Actor? get_last_child ();
[Version (since = "1.10")]
- public unowned Clutter.LayoutManager get_layout_manager ();
+ public unowned Clutter.LayoutManager? get_layout_manager ();
[Version (since = "1.10")]
public Clutter.Margin get_margin ();
[Version (since = "1.10")]
@@ -4817,9 +4824,9 @@ namespace Clutter {
public float get_margin_top ();
[Version (since = "1.10")]
public int get_n_children ();
- public unowned string get_name ();
+ public unowned string? get_name ();
[Version (since = "1.10")]
- public unowned Clutter.Actor get_next_sibling ();
+ public unowned Clutter.Actor? get_next_sibling ();
[Version (since = "1.8")]
public Clutter.OffscreenRedirect get_offscreen_redirect ();
public uint8 get_opacity ();
@@ -4852,7 +4859,7 @@ namespace Clutter {
[Version (since = "0.8")]
public virtual void get_preferred_width (float for_height, out float min_width_p, out float natural_width_p);
[Version (since = "1.10")]
- public unowned Clutter.Actor get_previous_sibling ();
+ public unowned Clutter.Actor? get_previous_sibling ();
[Version (since = "0.6")]
public bool get_reactive ();
[Version (since = "1.2")]
@@ -4898,7 +4905,7 @@ namespace Clutter {
[Version (since = "0.8")]
public void get_transformed_size (out float width, out float height);
[Version (since = "1.10")]
- public unowned Clutter.Transition get_transition (string name);
+ public unowned Clutter.Transition? get_transition (string name);
[Version (since = "1.12")]
public void get_translation (out float translate_x, out float translate_y, out float translate_z);
public float get_width ();
@@ -5083,7 +5090,7 @@ namespace Clutter {
public void set_margin_right (float margin);
[Version (since = "1.10")]
public void set_margin_top (float margin);
- public void set_name (string name);
+ public void set_name (string? name);
[Version (since = "1.8")]
public void set_offscreen_redirect (Clutter.OffscreenRedirect redirect);
public void set_opacity (uint8 opacity);
@@ -5707,6 +5714,7 @@ namespace Clutter {
public bool get_homogeneous ();
[Version (since = "1.12")]
public Clutter.Orientation get_orientation ();
+ [Version (deprecated = true)]
public bool get_pack_start ();
public uint get_spacing ();
#if !HAS_MUTTER338
@@ -5731,6 +5739,7 @@ namespace Clutter {
public void set_homogeneous (bool homogeneous);
[Version (since = "1.12")]
public void set_orientation (Clutter.Orientation orientation);
+ [Version (deprecated = true)]
public void set_pack_start (bool pack_start);
public void set_spacing (uint spacing);
#if !HAS_MUTTER338
@@ -5747,6 +5756,7 @@ namespace Clutter {
public bool homogeneous { get; set; }
[Version (since = "1.12")]
public Clutter.Orientation orientation { get; set; }
+ [Version (deprecated = true)]
public bool pack_start { get; set; }
public uint spacing { get; set; }
#if !HAS_MUTTER338
@@ -5778,7 +5788,9 @@ namespace Clutter {
public class ButtonEvent : Clutter.Event {
public double axes;
public uint32 button;
+#if !HAS_MUTTER42
public uint click_count;
+#endif
public weak Clutter.InputDevice device;
#if HAS_MUTTER40
public uint32 evdev_code;
@@ -5884,6 +5896,13 @@ namespace Clutter {
#endif
public virtual void update_preferred_size (Clutter.Actor actor, Clutter.Orientation direction, float for_size, ref float minimum_size, ref float natural_size);
}
+#if HAS_MUTTER42
+ [CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
+ [Compact]
+ public class Context {
+ public unowned Clutter.Backend get_backend ();
+ }
+#endif
[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
[Compact]
[Version (since = "0.2")]
@@ -6035,8 +6054,10 @@ namespace Clutter {
public double get_axes (out uint n_axes);
[Version (since = "1.0")]
public uint32 get_button ();
+#if !HAS_MUTTER42
[Version (since = "1.0")]
public uint get_click_count ();
+#endif
[Version (since = "0.4")]
public void get_coords (out float x, out float y);
[Version (since = "1.0")]
@@ -6324,6 +6345,9 @@ namespace Clutter {
public class IMEvent : Clutter.Event {
public Clutter.EventFlags flags;
public uint32 len;
+#if HAS_MUTTER42
+ public Clutter.PreeditResetMode mode;
+#endif
public int32 offset;
public weak Clutter.Actor source;
public weak Clutter.Stage stage;
@@ -6362,6 +6386,7 @@ namespace Clutter {
public class InputDevice : GLib.Object {
[CCode (has_construct_function = false)]
protected InputDevice ();
+#if !HAS_MUTTER42
#if HAS_MUTTER338
[Version (since = "1.2")]
public unowned Clutter.Actor get_actor (Clutter.EventSequence? sequence);
@@ -6383,6 +6408,7 @@ namespace Clutter {
public bool get_coords (Clutter.EventSequence? sequence, out Graphene.Point point);
[Version (since = "1.0")]
public int get_device_id ();
+#endif
#endif
[Version (since = "1.6")]
public Clutter.InputMode get_device_mode ();
@@ -6408,8 +6434,10 @@ namespace Clutter {
[Version (since = "1.16")]
public Clutter.ModifierType get_modifier_state ();
#endif
+#if !HAS_MUTTER42
[Version (since = "1.6")]
public uint get_n_axes ();
+#endif
#if HAS_MUTTER40
public int get_n_buttons ();
#else
@@ -6573,7 +6601,11 @@ namespace Clutter {
[NoWrapper]
public virtual void set_cursor_location (Graphene.Rect rect);
public void set_input_panel_state (Clutter.InputPanelState state);
+#if HAS_MUTTER42
+ public void set_preedit_text (string? preedit, uint cursor, Clutter.PreeditResetMode mode);
+#else
public void set_preedit_text (string? preedit, uint cursor);
+#endif
[NoWrapper]
public virtual void set_surrounding (string text, uint cursor, uint anchor);
[NoWrapper]
@@ -6898,7 +6930,11 @@ namespace Clutter {
public double deceleration { get; set; }
public bool interpolate { get; set; }
public Clutter.PanAxis pan_axis { get; set; }
+#if HAS_MUTTER42
+ public signal bool pan (Clutter.Actor actor, bool is_interpolated);
+#else
public virtual signal bool pan (Clutter.Actor actor, bool is_interpolated);
+#endif
public virtual signal void pan_stopped (Clutter.Actor actor);
}
[CCode (cheader_filename = "clutter/clutter.h", lower_case_csuffix = "param_units", type_id = "clutter_param_units_get_type ()")]
@@ -6958,6 +6994,9 @@ namespace Clutter {
public void destroy ();
#if HAS_MUTTER40
public Graphene.Matrix get_transform ();
+#if HAS_MUTTER42
+ public void log_overlap (Clutter.Actor actor);
+#endif
public void log_pick (Clutter.ActorBox box, Clutter.Actor actor);
public void pop_clip ();
public void pop_transform ();
@@ -7041,7 +7080,11 @@ namespace Clutter {
public class RotateAction : Clutter.GestureAction {
[CCode (has_construct_function = false, type = "ClutterAction*")]
public RotateAction ();
+#if HAS_MUTTER42
+ public signal bool rotate (Clutter.Actor actor, double angle);
+#else
public virtual signal bool rotate (Clutter.Actor actor, double angle);
+#endif
}
[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_script_get_type ()")]
[Version (since = "0.6")]
@@ -7163,8 +7206,10 @@ namespace Clutter {
public void set_pointer_a11y_settings (Clutter.PointerA11ySettings settings);
public void uninhibit_unfocus ();
public virtual void warp_pointer (int x, int y);
+#if !HAS_MUTTER42
[NoAccessorMethod]
public Clutter.Backend backend { owned get; construct; }
+#endif
public bool touch_mode { get; }
public signal void device_added (Clutter.InputDevice object);
public signal void device_removed (Clutter.InputDevice object);
@@ -7320,8 +7365,10 @@ namespace Clutter {
public int64 get_frame_counter ();
[Version (since = "0.6")]
public unowned Clutter.Actor get_key_focus ();
+#if !HAS_MUTTER42
[Version (since = "1.2")]
public void get_minimum_size (out uint width, out uint height);
+#endif
[Version (since = "1.8")]
public bool get_motion_events_enabled ();
public Clutter.Perspective get_perspective ();
@@ -7336,7 +7383,10 @@ namespace Clutter {
[Version (since = "1.2")]
public bool get_use_alpha ();
#if HAS_MUTTER338
- public bool paint_to_buffer (Cairo.RectangleInt rect, float scale, [CCode (array_length = false)] ref unowned uint8[] data, int stride, Cogl.PixelFormat format, Clutter.PaintFlag paint_flags) throws GLib.Error;
+ public bool paint_to_buffer (Cairo.RectangleInt rect, float scale, [CCode (array_length = false)] uint8[] data, int stride, Cogl.PixelFormat format, Clutter.PaintFlag paint_flags) throws GLib.Error;
+#if HAS_MUTTER42
+ public Clutter.Content paint_to_content (Cairo.RectangleInt rect, float scale, Clutter.PaintFlag paint_flags) throws GLib.Error;
+#endif
public void paint_to_framebuffer (Cogl.Framebuffer framebuffer, Cairo.RectangleInt rect, float scale, Clutter.PaintFlag paint_flags);
#else
[Version (since = "0.4")]
@@ -7375,7 +7425,9 @@ namespace Clutter {
public void set_title (string title);
[Version (since = "1.2")]
public void set_use_alpha (bool use_alpha);
-#if HAS_MUTTER40
+#if HAS_MUTTER42
+ public void update_device (Clutter.InputDevice device, Clutter.EventSequence sequence, Graphene.Point point, uint32 time, Clutter.Actor new_actor, Cairo.Region region, bool emit_crossing);
+#elif HAS_MUTTER40
public void update_device (Clutter.InputDevice device, Clutter.EventSequence sequence, Graphene.Point point, uint32 time, Clutter.Actor new_actor, bool emit_crossing);
#endif
#if !HAS_MUTTER338
@@ -7512,8 +7564,6 @@ namespace Clutter {
#endif
[NoAccessorMethod]
public int64 vblank_duration_us { get; construct; }
-#if HAS_MUTTER41
-#endif
}
#if !HAS_MUTTER338
[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_state_get_type ()")]
@@ -7561,7 +7611,11 @@ namespace Clutter {
[Version (deprecated = true, deprecated_since = "1.14", since = "1.8")]
public virtual signal void swept (Clutter.Actor actor, Clutter.SwipeDirection direction);
[Version (since = "1.14")]
+#if HAS_MUTTER42
+ public signal bool swipe (Clutter.Actor actor, Clutter.SwipeDirection direction);
+#else
public virtual signal bool swipe (Clutter.Actor actor, Clutter.SwipeDirection direction);
+#endif
}
[CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_tap_action_get_type ()")]
[Version (since = "1.14")]
@@ -7901,6 +7955,21 @@ namespace Clutter {
public float x;
public float y;
}
+#if HAS_MUTTER42
+ [CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
+ [Compact]
+ public class TouchpadHoldEvent : Clutter.Event {
+ public Clutter.EventFlags flags;
+ public uint32 n_fingers;
+ public Clutter.TouchpadGesturePhase phase;
+ public weak Clutter.Actor source;
+ public weak Clutter.Stage stage;
+ public uint32 time;
+ public Clutter.EventType type;
+ public float x;
+ public float y;
+ }
+#endif
[CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)]
[Compact]
[Version (since = "1.24")]
@@ -8016,10 +8085,14 @@ namespace Clutter {
public ZoomAction ();
public Graphene.Point get_focal_point ();
public Graphene.Point get_transformed_focal_point ();
+#if HAS_MUTTER42
+ public signal bool zoom (Clutter.Actor actor, Graphene.Point focal_point, double factor);
+#else
public Clutter.ZoomAxis get_zoom_axis ();
public void set_zoom_axis (Clutter.ZoomAxis axis);
public Clutter.ZoomAxis zoom_axis { get; set; }
public virtual signal bool zoom (Clutter.Actor actor, Graphene.Point focal_point, double factor);
+#endif
}
[CCode (cheader_filename = "clutter/clutter.h", type_cname = "ClutterAnimatableInterface", type_id = "clutter_animatable_get_type ()")]
public interface Animatable : GLib.Object {
@@ -8064,23 +8137,29 @@ namespace Clutter {
public class unowned GLib.ParamSpec find_child_property (string property_name);
[Version (since = "0.8")]
public virtual unowned Clutter.ChildMeta get_child_meta (Clutter.Actor actor);
+#if !HAS_MUTTER42
[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
public GLib.List<weak Clutter.Actor> get_children ();
+#endif
[CCode (cname = "clutter_container_class_list_child_properties")]
public class unowned GLib.ParamSpec[] list_child_properties ();
+#if !HAS_MUTTER42
[CCode (vfunc_name = "lower")]
[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
public virtual void lower_child (Clutter.Actor actor, Clutter.Actor? sibling = null);
[CCode (vfunc_name = "raise")]
[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
public virtual void raise_child (Clutter.Actor actor, Clutter.Actor? sibling = null);
+#endif
[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
public void remove (...);
[CCode (vfunc_name = "remove")]
[Version (deprecated = true, deprecated_since = "1.10", since = "0.4")]
public abstract void remove_actor (Clutter.Actor actor);
+#if !HAS_MUTTER42
[Version (deprecated = true, deprecated_since = "1.10", since = "0.6")]
public abstract void sort_depth_order ();
+#endif
public virtual signal void actor_added (Clutter.Actor actor);
public virtual signal void actor_removed (Clutter.Actor actor);
[HasEmitter]
@@ -8162,8 +8241,8 @@ namespace Clutter {
public void init (Clutter.Actor root);
[Version (since = "1.12")]
public bool is_valid ();
- public bool next (out unowned Clutter.Actor child);
- public bool prev (out unowned Clutter.Actor child);
+ public bool next (out unowned Clutter.Actor? child);
+ public bool prev (out unowned Clutter.Actor? child);
public void remove ();
}
[CCode (cheader_filename = "clutter/clutter.h", has_copy_function = false, has_destroy_function = false, has_type_id = false)]
@@ -8187,16 +8266,40 @@ namespace Clutter {
public bool equal (Clutter.Color v2);
[Version (since = "0.2")]
public void free ();
- public void from_hls (float hue, float luminance, float saturation);
- public void from_pixel (uint32 pixel);
- [Version (since = "1.0")]
- public bool from_string (string str);
+ [CCode (cname = "_vala_clutter_color_from_hls")]
+ public static Clutter.Color? from_hls (float hue, float luminance, float saturation) {
+ Clutter.Color? color = Clutter.Color.alloc ();
+ color.init_from_hls (hue, luminance, saturation);
+ return color;
+ }
+ [CCode (cname = "_vala_clutter_color_from_pixel")]
+ public static Clutter.Color? from_pixel (uint32 pixel) {
+ Clutter.Color? color = Clutter.Color.alloc ();
+ color.init_from_pixel (pixel);
+ return color;
+ }
+ [CCode (cname = "clutter_color_new")]
+ [Version (since = "0.8")]
+ public static Clutter.Color? from_rgba (uint8 red = 0, uint8 green = 0, uint8 blue = 0, uint8 alpha = 0);
+ [CCode (cname = "_vala_clutter_color_from_string")]
+ public static Clutter.Color? from_string (string str) {
+ Clutter.Color? color = Clutter.Color.alloc ();
+ color.init_from_string (str);
+ return color;
+ }
[Version (since = "1.6")]
public static unowned Clutter.Color? get_static (Clutter.StaticColor color);
[Version (since = "1.0")]
public uint hash ();
[Version (since = "1.12")]
- public unowned Clutter.Color? init (uint8 red, uint8 green, uint8 blue, uint8 alpha);
+ public unowned Clutter.Color? init (uint8 red = 0, uint8 green = 0, uint8 blue = 0, uint8 alpha = 0);
+ [CCode (cname = "clutter_color_from_hls")]
+ public void init_from_hls (float hue, float luminance, float saturation);
+ [CCode (cname = "clutter_color_from_pixel")]
+ public void init_from_pixel (uint32 pixel);
+ [CCode (cname = "clutter_color_from_string")]
+ [Version (since = "1.0")]
+ public bool init_from_string (string str);
[Version (since = "1.6")]
public Clutter.Color interpolate (Clutter.Color final, double progress);
public Clutter.Color lighten ();
@@ -8549,6 +8652,13 @@ namespace Clutter {
#endif
FLAG_REPEATED
}
+#if HAS_MUTTER42
+ [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PHASE_", type_id = "clutter_event_phase_get_type ()")]
+ public enum EventPhase {
+ CAPTURE,
+ BUBBLE
+ }
+#endif
[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_", type_id = "clutter_event_type_get_type ()")]
[Version (since = "0.4")]
public enum EventType {
@@ -8575,6 +8685,9 @@ namespace Clutter {
TOUCH_CANCEL,
TOUCHPAD_PINCH,
TOUCHPAD_SWIPE,
+#if HAS_MUTTER42
+ TOUCHPAD_HOLD,
+#endif
PROXIMITY_IN,
PROXIMITY_OUT,
PAD_BUTTON_PRESS,
@@ -8597,12 +8710,14 @@ namespace Clutter {
#if !HAS_MUTTER338
SWAP_THROTTLE,
#endif
+#if !HAS_MUTTER42
STAGE_STATIC,
STAGE_CURSOR,
- SHADERS_GLSL,
OFFSCREEN,
STAGE_MULTIPLE,
- SWAP_EVENTS
+ SWAP_EVENTS,
+#endif
+ SHADERS_GLSL
}
[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_FLOW_", type_id = "clutter_flow_orientation_get_type ()")]
[Version (since = "1.2")]
@@ -8654,6 +8769,7 @@ namespace Clutter {
TOP,
BOTTOM
}
+#if !HAS_MUTTER42
[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INIT_", type_id = "clutter_init_error_get_type ()")]
[Version (since = "0.2")]
public enum InitError {
@@ -8664,6 +8780,7 @@ namespace Clutter {
ERROR_INTERNAL;
public static GLib.Quark quark ();
}
+#endif
[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INPUT_AXIS_", type_id = "clutter_input_axis_get_type ()")]
[Version (since = "1.6")]
public enum InputAxis {
@@ -8956,6 +9073,13 @@ namespace Clutter {
DWELL,
GESTURE
}
+#if HAS_MUTTER42
+ [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PREEDIT_RESET_", type_id = "clutter_preedit_reset_mode_get_type ()")]
+ public enum PreeditResetMode {
+ CLEAR,
+ COMMIT
+ }
+#endif
[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_REPAINT_FLAGS_", type_id = "clutter_repaint_flags_get_type ()")]
[Flags]
[Version (since = "1.10")]
@@ -9167,6 +9291,7 @@ namespace Clutter {
POINTER,
TOUCHSCREEN
}
+#if !HAS_MUTTER42
[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ZOOM_", type_id = "clutter_zoom_axis_get_type ()")]
[Version (since = "1.12")]
public enum ZoomAxis {
@@ -9174,6 +9299,7 @@ namespace Clutter {
Y_AXIS,
BOTH
}
+#endif
[CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_IMAGE_ERROR_INVALID_")]
[Version (since = "1.10")]
public errordomain ImageError {
@@ -9285,17 +9411,21 @@ namespace Clutter {
[CCode (cheader_filename = "clutter/clutter.h")]
[Version (since = "1.0")]
public static unowned Pango.FontMap get_font_map ();
+#if !HAS_MUTTER42
[CCode (cheader_filename = "clutter/clutter.h")]
[Version (since = "0.2")]
public static GLib.OptionGroup get_option_group ();
[CCode (cheader_filename = "clutter/clutter.h")]
[Version (since = "0.8")]
public static GLib.OptionGroup get_option_group_without_init ();
+#endif
[CCode (cheader_filename = "clutter/clutter.h")]
[Version (since = "0.6")]
public static unowned string get_script_id (GLib.Object gobject);
+#if !HAS_MUTTER42
[CCode (cheader_filename = "clutter/clutter.h")]
public static Clutter.InitError init ([CCode (array_length_cname = "argc", array_length_pos = 0.5)] ref unowned string[]? argv);
+#endif
#if !HAS_MUTTER41
[CCode (cheader_filename = "clutter/clutter.h")]
[Version (since = "0.2")]
diff --git a/vapi/mutter-cogl-10.deps b/vapi/mutter-cogl-10.deps
new file mode 120000
index 00000000..ea52a856
--- /dev/null
+++ b/vapi/mutter-cogl-10.deps
@@ -0,0 +1 @@
+mutter-cogl-9.deps
\ No newline at end of file
diff --git a/vapi/mutter-cogl-10.vapi b/vapi/mutter-cogl-10.vapi
new file mode 120000
index 00000000..698673de
--- /dev/null
+++ b/vapi/mutter-cogl-10.vapi
@@ -0,0 +1 @@
+mutter-cogl-9.vapi
\ No newline at end of file
diff --git a/vapi/mutter-cogl-6.vapi b/vapi/mutter-cogl-6.vapi
index b55bd648..526bb415 100644
--- a/vapi/mutter-cogl-6.vapi
+++ b/vapi/mutter-cogl-6.vapi
@@ -27,6 +27,10 @@ namespace Cogl {
[CCode (cheader_filename = "cogl/cogl.h", cname = "cogl_foreach_feature")]
[Version (since = "1.10")]
public void foreach_feature (Cogl.FeatureCallback callback);
+#if HAS_MUTTER42
+ public void free_timestamp_query (owned Cogl.TimestampQuery query);
+ public int64 get_gpu_time_ns ();
+#endif
#if !HAS_MUTTER40
[CCode (cheader_filename = "cogl/cogl.h", cname = "cogl_get_clock_time")]
[Version (since = "1.14")]
@@ -45,6 +49,9 @@ namespace Cogl {
#endif
#if HAS_MUTTER40
public void set_named_pipeline (Cogl.PipelineKey key, Cogl.Pipeline? pipeline);
+#endif
+#if HAS_MUTTER42
+ public int64 timestamp_query_get_time_ns (Cogl.TimestampQuery query);
#endif
}
[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_frame_closure_get_gtype ()")]
@@ -69,8 +76,14 @@ namespace Cogl {
#endif
[Version (since = "1.14")]
public float get_refresh_rate ();
+#if HAS_MUTTER42
+ public int64 get_rendering_duration_ns ();
+#endif
#if HAS_MUTTER40
public uint get_sequence ();
+#if HAS_MUTTER42
+ public int64 get_time_before_buffer_swap_us ();
+#endif
public bool is_hw_clock ();
public bool is_vsync ();
public bool is_zero_copy ();
@@ -224,6 +237,7 @@ namespace Cogl {
[CCode (cheader_filename = "cogl/cogl.h", cname = "cogl_is_texture")]
public bool is_texture ();
}
+#if !HAS_MUTTER42
[CCode (cheader_filename = "cogl/cogl.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "cogl_material_get_type ()")]
[Compact]
public class Material : Cogl.Handle {
@@ -265,6 +279,7 @@ namespace Cogl {
[Compact]
public class MaterialLayer : Cogl.Handle {
}
+#endif
[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_object_get_gtype ()")]
public abstract class Object {
[CCode (has_construct_function = false)]
@@ -353,6 +368,9 @@ namespace Cogl {
#endif
[Version (since = "2.0")]
public void hide ();
+#if HAS_MUTTER42
+ public virtual void queue_damage_region (int rectangles, int n_rectangles);
+#endif
[Version (since = "1.16")]
public void remove_dirty_callback (Cogl.OnscreenDirtyClosure closure);
[Version (since = "1.14")]
@@ -620,6 +638,12 @@ namespace Cogl {
[Version (since = "1.16")]
public Texture2DSliced.from_bitmap (Cogl.Bitmap bmp, int max_waste);
}
+#if HAS_MUTTER42
+ [CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
+ [Compact]
+ public class TimestampQuery {
+ }
+#endif
#if HAS_MUTTER338
[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
[Compact]
@@ -751,13 +775,13 @@ namespace Cogl {
public interface Texture : Cogl.Object {
public bool allocate () throws GLib.Error;
[CCode (cheader_filename = "cogl/cogl.h", cname = "cogl_texture_new_from_bitmap")]
- [Version (deprecated = true, deprecated_since = "1.18", since = "1.0")]
+ [Version (deprecated = true, deprecated_since = "1.18", replacement = "Texture.new_from_bitmap", since = "1.0")]
public static Cogl.Texture from_bitmap (Cogl.Bitmap bitmap, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
[CCode (cheader_filename = "cogl/cogl.h", cname = "cogl_texture_new_from_data")]
- [Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
+ [Version (deprecated = true, deprecated_since = "1.18", replacement = "Texture.new_from_data", since = "0.8")]
public static Cogl.Texture from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, [CCode (array_length = false)] uint8[] data);
[CCode (cheader_filename = "cogl/cogl.h", cname = "cogl_texture_new_from_file")]
- [Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
+ [Version (deprecated = true, deprecated_since = "1.18", replacement = "Texture.new_from_file", since = "0.8")]
public static Cogl.Texture from_file (string filename, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format) throws GLib.Error;
[Version (since = "1.18")]
public Cogl.TextureComponents get_components ();
@@ -775,10 +799,12 @@ namespace Cogl {
public static Cogl.Texture new_from_data (int width, int height, Cogl.TextureFlags flags, Cogl.PixelFormat format, Cogl.PixelFormat internal_format, int rowstride, [CCode (array_length = false)] uint8[] data);
[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
public static Cogl.Texture new_from_file (string filename, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format) throws GLib.Error;
+#if !HAS_MUTTER42
[Version (deprecated = true, deprecated_since = "1.18", since = "1.2")]
public Cogl.Texture new_from_sub_texture (int sub_x, int sub_y, int sub_width, int sub_height);
[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
public static Cogl.Texture new_with_size (uint width, uint height, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
+#endif
[Version (since = "1.18")]
public void set_components (Cogl.TextureComponents components);
public bool set_data (Cogl.PixelFormat format, int rowstride, [CCode (array_length = false)] uint8[] data, int level) throws GLib.Error;
@@ -787,9 +813,11 @@ namespace Cogl {
public bool set_region (int src_x, int src_y, int dst_x, int dst_y, uint dst_width, uint dst_height, int width, int height, Cogl.PixelFormat format, uint rowstride, [CCode (array_length = false)] uint8[] data);
[Version (since = "1.8")]
public bool set_region_from_bitmap (int src_x, int src_y, int dst_x, int dst_y, uint dst_width, uint dst_height, Cogl.Bitmap bitmap);
+#if !HAS_MUTTER42
[CCode (cheader_filename = "cogl/cogl.h", cname = "cogl_texture_new_with_size")]
[Version (deprecated = true, deprecated_since = "1.18", since = "0.8")]
public static Cogl.Texture with_size (uint width, uint height, Cogl.TextureFlags flags, Cogl.PixelFormat internal_format);
+#endif
}
[CCode (cheader_filename = "cogl/cogl.h")]
[SimpleType]
@@ -828,6 +856,14 @@ namespace Cogl {
public float get_red ();
public uint8 get_red_byte ();
public float get_red_float ();
+ [Version (since = "1.4")]
+ public void init_from_4f (float red, float green, float blue, float alpha);
+ [Version (since = "1.4")]
+ public void init_from_4fv (float color_array);
+ [Version (since = "1.4")]
+ public void init_from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
+ [Version (since = "1.16")]
+ public void init_from_hsl (float hue, float saturation, float luminance);
public void premultiply ();
[Version (since = "1.4")]
public void set_alpha (float alpha);
@@ -945,6 +981,9 @@ namespace Cogl {
public struct TraceHead {
public uint64 begin_time;
public weak string name;
+#if HAS_MUTTER42
+ public weak string description;
+#endif
}
#endif
[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
@@ -1093,6 +1132,12 @@ namespace Cogl {
#if HAS_MUTTER338
[CCode (cname = "COGL_FEATURE_ID_BLIT_FRAMEBUFFER")]
OGL_FEATURE_ID_BLIT_FRAMEBUFFER,
+#endif
+#if HAS_MUTTER42
+ [CCode (cname = "COGL_FEATURE_ID_TIMESTAMP_QUERY")]
+ OGL_FEATURE_ID_TIMESTAMP_QUERY,
+ [CCode (cname = "COGL_FEATURE_ID_GET_GPU_TIME")]
+ OGL_FEATURE_ID_GET_GPU_TIME,
#endif
[CCode (cname = "COGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL")]
OGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL
@@ -1122,6 +1167,7 @@ namespace Cogl {
SHORT,
INT
}
+#if !HAS_MUTTER42
[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_MATERIAL_ALPHA_FUNC_", has_type_id = false)]
public enum MaterialAlphaFunc {
NEVER,
@@ -1149,6 +1195,7 @@ namespace Cogl {
CLAMP_TO_EDGE,
AUTOMATIC
}
+#endif
[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_PIPELINE_ALPHA_FUNC_", has_type_id = false)]
public enum PipelineAlphaFunc {
NEVER,
@@ -1204,12 +1251,24 @@ namespace Cogl {
ABGR_8888,
RGBA_1010102,
BGRA_1010102,
+#if HAS_MUTTER42
+ XRGB_2101010,
+#endif
ARGB_2101010,
+#if HAS_MUTTER42
+ XBGR_2101010,
+#endif
ABGR_2101010,
#if HAS_MUTTER338
RGBA_FP_16161616,
BGRA_FP_16161616,
+#if HAS_MUTTER42
+ XRGB_FP_16161616,
+#endif
ARGB_FP_16161616,
+#if HAS_MUTTER42
+ XBGR_FP_16161616,
+#endif
ABGR_FP_16161616,
#endif
RGBA_8888_PRE,
@@ -1293,7 +1352,9 @@ namespace Cogl {
}
[CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_WINSYS_FEATURE_", has_type_id = false)]
public enum WinsysFeature {
+#if !HAS_MUTTER42
MULTIPLE_ONSCREEN,
+#endif
#if !HAS_MUTTER338
SWAP_THROTTLE,
#endif
@@ -1420,12 +1481,14 @@ namespace Cogl {
[CCode (cheader_filename = "cogl/cogl.h")]
[Version (since = "1.0")]
public static void flush ();
+#if !HAS_MUTTER42
[CCode (cheader_filename = "cogl/cogl.h")]
[Version (deprecated = true, deprecated_since = "1.16")]
public static bool get_backface_culling_enabled ();
[CCode (cheader_filename = "cogl/cogl.h")]
[Version (deprecated = true, deprecated_since = "1.16")]
public static bool get_depth_test_enabled ();
+#endif
[CCode (cheader_filename = "cogl/cogl.h")]
[Version (deprecated = true, deprecated_since = "1.16", since = "1.0")]
public static GLib.OptionGroup get_option_group ();
@@ -1434,23 +1497,31 @@ namespace Cogl {
[Version (deprecated = true, deprecated_since = "1.18")]
public static GLib.Type gtype_matrix_get_type ();
#endif
+#if !HAS_MUTTER42
[CCode (cheader_filename = "cogl/cogl.h")]
[Version (deprecated = true, deprecated_since = "1.16")]
public static void set_backface_culling_enabled (bool setting);
[CCode (cheader_filename = "cogl/cogl.h")]
[Version (deprecated = true, deprecated_since = "1.16")]
public static void set_depth_test_enabled (bool setting);
+#endif
[CCode (cheader_filename = "cogl/cogl.h")]
public static void set_tracing_disabled_on_thread (GLib.MainContext main_context);
[CCode (cheader_filename = "cogl/cogl.h")]
public static void set_tracing_enabled_on_thread (GLib.MainContext main_context, string group, string filename);
[CCode (cheader_filename = "cogl/cogl.h")]
public static void set_tracing_enabled_on_thread_with_fd (GLib.MainContext main_context, string group, int fd);
+#if HAS_MUTTER42
+ [CCode (cheader_filename = "cogl/cogl.h")]
+ public static void trace_describe (Cogl.TraceHead head, string description);
+#endif
#if HAS_MUTTER338
[CCode (cheader_filename = "cogl/cogl.h")]
public static void trace_end (Cogl.TraceHead head);
#endif
+#if !HAS_MUTTER42
[CCode (cheader_filename = "cogl/cogl.h")]
[Version (since = "1.10")]
public static uint32 x11_onscreen_get_window_xid (Cogl.Onscreen onscreen);
+#endif
}
diff --git a/vapi/mutter-cogl-pango-10.vapi b/vapi/mutter-cogl-pango-10.vapi
new file mode 120000
index 00000000..5362ecec
--- /dev/null
+++ b/vapi/mutter-cogl-pango-10.vapi
@@ -0,0 +1 @@
+mutter-cogl-pango-9.vapi
\ No newline at end of file
diff --git a/wingpanel-interface/meson.build b/wingpanel-interface/meson.build
index 667a15cf..c0b645e3 100644
--- a/wingpanel-interface/meson.build
+++ b/wingpanel-interface/meson.build
@@ -46,6 +46,17 @@ if mutter41_dep.found()
vala_flags = ['--define', 'HAS_MUTTER338', '--define', 'HAS_MUTTER40', '--define', 'HAS_MUTTER41']
endif
+mutter42_dep = dependency('libmutter-10', version: ['>= 42', '< 43'], required: false)
+if mutter42_dep.found()
+ libmutter_dep = dependency('libmutter-10', version: '>= 42')
+ mutter_dep = [
+ libmutter_dep,
+ dependency('mutter-cogl-10'), dependency('mutter-cogl-pango-10'),
+ dependency('mutter-clutter-10')
+ ]
+ vala_flags = ['--define', 'HAS_MUTTER338', '--define', 'HAS_MUTTER40', '--define', 'HAS_MUTTER41', '--define', 'HAS_MUTTER42']
+endif
+
if mutter_dep.length() == 0
error ('No supported mutter library found!')
endif