diff --git a/compositor/WindowManager.vala b/compositor/WindowManager.vala index aec6b206..65028ce0 100644 --- a/compositor/WindowManager.vala +++ b/compositor/WindowManager.vala @@ -201,7 +201,11 @@ namespace GreeterCompositor { } } +#if HAS_MUTTER45 + public override void show_window_menu_for_rect (Meta.Window window, Meta.WindowMenuType menu, Mtk.Rectangle rect) { +#else public override void show_window_menu_for_rect (Meta.Window window, Meta.WindowMenuType menu, Meta.Rectangle rect) { +#endif show_window_menu (window, menu, rect.x, rect.y); } @@ -253,7 +257,11 @@ namespace GreeterCompositor { } } +#if HAS_MUTTER45 + public override void size_change (Meta.WindowActor actor, Meta.SizeChange which_change, Mtk.Rectangle old_frame_rect, Mtk.Rectangle old_buffer_rect) { +#else public override void size_change (Meta.WindowActor actor, Meta.SizeChange which_change, Meta.Rectangle old_frame_rect, Meta.Rectangle old_buffer_rect) { +#endif unowned Meta.Window window = actor.get_meta_window (); if (window.get_tile_match () != null) { size_change_completed (actor); @@ -397,7 +405,4 @@ namespace GreeterCompositor { return info; } } - - [CCode (cname="clutter_x11_get_stage_window")] - public extern X.Window x_get_stage_window (Clutter.Actor stage); } diff --git a/compositor/meson.build b/compositor/meson.build index e5ca49cc..58289069 100644 --- a/compositor/meson.build +++ b/compositor/meson.build @@ -46,6 +46,17 @@ if mutter44_dep.found() vala_flags = ['--define', 'HAS_MUTTER43', '--define', 'HAS_MUTTER44'] endif +mutter45_dep = dependency('libmutter-13', version: ['>= 45', '< 46'], required: false) +if mutter45_dep.found() + libmutter_dep = dependency('libmutter-13', version: '>= 45') + mutter_dep = [ + libmutter_dep, + dependency('mutter-mtk-13'), dependency('mutter-cogl-13'), + dependency('mutter-cogl-pango-13'), dependency('mutter-clutter-13') + ] + vala_flags = ['--define', 'HAS_MUTTER43', '--define', 'HAS_MUTTER44', '--define', 'HAS_MUTTER45'] +endif + if mutter_dep.length() == 0 error ('No supported mutter library found!') endif diff --git a/vapi/Clutter-10.metadata b/vapi/Clutter-10.metadata index 516fc6fb..dde02927 100644 --- a/vapi/Clutter-10.metadata +++ b/vapi/Clutter-10.metadata @@ -189,3 +189,6 @@ BinLayout.new.*_align default=Clutter.BinAlignment.START // Possibly keep KEY_* skip=false name="KEY_(.+)" type="uint" parent="Clutter.Key" +BUTTON_* skip=false name="BUTTON_(.+)" type="uint32" parent="Clutter.Button" +EVENT_STOP skip=false type="bool" +EVENT_PROPAGATE skip=false type="bool" diff --git a/vapi/Clutter-11.metadata b/vapi/Clutter-11.metadata index f5395787..8195fee1 100644 --- a/vapi/Clutter-11.metadata +++ b/vapi/Clutter-11.metadata @@ -189,3 +189,6 @@ BinLayout.new.*_align default=Clutter.BinAlignment.START // Possibly keep KEY_* skip=false name="KEY_(.+)" type="uint" parent="Clutter.Key" +BUTTON_* skip=false name="BUTTON_(.+)" type="uint32" parent="Clutter.Button" +EVENT_STOP skip=false type="bool" +EVENT_PROPAGATE skip=false type="bool" diff --git a/vapi/Clutter-12.metadata b/vapi/Clutter-12.metadata index f5395787..8195fee1 100644 --- a/vapi/Clutter-12.metadata +++ b/vapi/Clutter-12.metadata @@ -189,3 +189,6 @@ BinLayout.new.*_align default=Clutter.BinAlignment.START // Possibly keep KEY_* skip=false name="KEY_(.+)" type="uint" parent="Clutter.Key" +BUTTON_* skip=false name="BUTTON_(.+)" type="uint32" parent="Clutter.Button" +EVENT_STOP skip=false type="bool" +EVENT_PROPAGATE skip=false type="bool" diff --git a/vapi/Clutter-13-custom.vala b/vapi/Clutter-13-custom.vala new file mode 100644 index 00000000..e5c71c2d --- /dev/null +++ b/vapi/Clutter-13-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-13.metadata b/vapi/Clutter-13.metadata new file mode 100644 index 00000000..36bcf973 --- /dev/null +++ b/vapi/Clutter-13.metadata @@ -0,0 +1,194 @@ +// 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 + +// 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 + +// 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 + .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 +CURRENT_TIME 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" + +// There is no way to know sealed classes before GLib 2.70 +ColorState sealed +FrameClock sealed +TextureContent sealed + +TextureContent.new_from_texture symbol_type="constructor" + +// 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" +BUTTON_* skip=false name="BUTTON_(.+)" type="uint32" parent="Clutter.Button" +EVENT_STOP skip=false type="bool" +EVENT_PROPAGATE skip=false type="bool" diff --git a/vapi/Cogl-13-custom.vala b/vapi/Cogl-13-custom.vala new file mode 100644 index 00000000..f6034717 --- /dev/null +++ b/vapi/Cogl-13-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-13.metadata b/vapi/Cogl-13.metadata new file mode 100644 index 00000000..828aa5b5 --- /dev/null +++ b/vapi/Cogl-13.metadata @@ -0,0 +1,73 @@ +* 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 + .get_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 + +Pipeline.get_layer_filters + .min_filter out + .mag_filter out + +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 +is_snippet 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 + +Offscreen sealed diff --git a/vapi/Meta-13.metadata b/vapi/Meta-13.metadata new file mode 100644 index 00000000..c6ef9a83 --- /dev/null +++ b/vapi/Meta-13.metadata @@ -0,0 +1,203 @@ +* skip=false +*.* skip=false +* cheader_filename="meta/main.h" + +Backend cheader_filename="meta/meta-backend.h" +Backend.gpu_added skip +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" +BarrierFlags cheader_filename="meta/barrier.h" +ButtonFunction cheader_filename="meta/common.h" +ButtonLayout cheader_filename="meta/common.h" +Compositor cheader_filename="meta/compositor.h" +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" +CompositorType cheader_filename="meta/meta-enums.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" +DebugPaintFlag 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" +FrameType cheader_filename="meta/common.h" +GrabOp cheader_filename="meta/common.h" +Gravity 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" +KeyboardA11yFlags cheader_filename="meta/meta-enums.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" +Laters cheader_filename="meta/types.h" +LaterType cheader_filename="meta/util.h" +LocaleDirection cheader_filename="meta/util.h" +MaximizeFlags cheader_filename="meta/window.h" +MultiTexture cheader_filename="meta/meta-multi-texture.h" +MultiTextureFormat cheader_filename="meta/meta-multi-texture-format.h" +MonitorManager cheader_filename="meta/meta-monitor-manager.h" +MonitorSwitchConfigType cheader_filename="meta/meta-monitor-manager.h" +MotionDirection cheader_filename="meta/common.h" +PadDirection cheader_filename="meta/display.h" +PadFeatureType 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" +PowerSaveChangeReason cheader_filename="meta/meta-monitor-manager.h" +Preference cheader_filename="meta/prefs.h" +PrefsChangedFunc cheader_filename="meta/prefs.h" +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" +VirtualModifier cheader_filename="meta/common.h" +WaylandClient cheader_filename="meta/meta-wayland-client.h" +WaylandCompositor cheader_filename="meta/meta-wayland-compositor.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" +Window.suspend_state skip +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" +X11Display.add_event_func skip +X11DisplayEventFunc skip + +// As per https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/2287 +MonitorManager.monitor_privacy_screen_changed 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" cheader_filename="meta/util.h" + +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" + +Display.window_visibility_updated + .object name="unplaced" type="GLib.List" + .p0 name="should_show" type="GLib.List" + .p1 name="should_hide" type="GLib.List" + +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_verbose parent="Meta.Util" cheader_filename="meta/util.h" +is_wayland_compositor 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" +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" + +BackgroundActor sealed +BackgroundContent sealed +BackgroundImage sealed +BackgroundImageCache sealed +Background sealed +Dnd sealed +IdleMonitor sealed +LaunchContext sealed +RemoteAccessController sealed +SelectionSourceMemory sealed +Selection sealed +ShadowFactory sealed +ShapedTexture sealed +SoundPlayer sealed +Stage sealed +StartupNotification sealed +WaylandClient sealed +WindowGroup sealed +WorkspaceManager sealed +X11Display sealed diff --git a/vapi/Mtk-13.metadata b/vapi/Mtk-13.metadata new file mode 100644 index 00000000..a8b51c6c --- /dev/null +++ b/vapi/Mtk-13.metadata @@ -0,0 +1 @@ +Rectangle struct diff --git a/vapi/libmutter-13.deps b/vapi/libmutter-13.deps new file mode 120000 index 00000000..a072e118 --- /dev/null +++ b/vapi/libmutter-13.deps @@ -0,0 +1 @@ +libmutter-12.deps \ No newline at end of file diff --git a/vapi/libmutter-13.vapi b/vapi/libmutter-13.vapi new file mode 120000 index 00000000..f19d0131 --- /dev/null +++ b/vapi/libmutter-13.vapi @@ -0,0 +1 @@ +libmutter-12.vapi \ No newline at end of file diff --git a/vapi/libmutter.vapi b/vapi/libmutter.vapi index 93c00105..a6829a98 100644 --- a/vapi/libmutter.vapi +++ b/vapi/libmutter.vapi @@ -59,6 +59,10 @@ namespace Meta { public static bool get_gnome_animations (); [CCode (cheader_filename = "meta/prefs.h")] public static Meta.KeyBindingAction get_keybinding_action (string name); +#if HAS_MUTTER45 + [CCode (cheader_filename = "meta/prefs.h")] + public static string? get_keybinding_label (string name); +#endif [CCode (cheader_filename = "meta/prefs.h")] public static int get_mouse_button_menu (); [CCode (cheader_filename = "meta/prefs.h")] @@ -75,8 +79,10 @@ namespace Meta { public static bool get_raise_on_click (); [CCode (cheader_filename = "meta/prefs.h")] public static bool get_show_fallback_app_menu (); +#if !HAS_MUTTER45 [CCode (cheader_filename = "meta/prefs.h")] public static unowned Pango.FontDescription get_titlebar_font (); +#endif [CCode (cheader_filename = "meta/prefs.h")] public static bool get_visual_bell (); [CCode (cheader_filename = "meta/prefs.h")] @@ -246,7 +252,11 @@ namespace Meta { #if HAS_MUTTER43 public class Barrier : GLib.Object, GLib.Initable { [CCode (has_construct_function = false)] +#if HAS_MUTTER45 + public Barrier (Meta.Backend backend, int x1, int y1, int x2, int y2, Meta.BarrierDirection directions, Meta.BarrierFlags flags) throws GLib.Error; +#else public Barrier (Meta.Backend backend, int x1, int y1, int x2, int y2, Meta.BarrierDirection directions) throws GLib.Error; +#endif #else public class Barrier : GLib.Object { [CCode (has_construct_function = false)] @@ -263,6 +273,10 @@ namespace Meta { public Meta.BarrierDirection directions { get; construct; } [NoAccessorMethod] public Meta.Display display { owned get; construct; } +#if HAS_MUTTER45 + [NoAccessorMethod] + public Meta.BarrierFlags flags { get; construct; } +#endif [NoAccessorMethod] public int x1 { get; construct; } [NoAccessorMethod] @@ -336,6 +350,9 @@ namespace Meta { public unowned Meta.Backend get_backend (); public Meta.CompositorType get_compositor_type (); public unowned Meta.Display get_display (); +#if HAS_MUTTER45 + public unowned Meta.WaylandCompositor? get_wayland_compositor (); +#endif public bool is_replacing (); public void notify_ready (); public bool raise_rlimit_nofile () throws GLib.Error; @@ -365,7 +382,7 @@ namespace Meta { public void get_pointer (out Graphene.Point coords, out Clutter.ModifierType mods); public bool get_pointer_visible (); public float get_scale (); - public unowned Cogl.Texture get_sprite (); + public unowned Cogl.Texture? get_sprite (); public void set_pointer_visible (bool visible); [NoAccessorMethod] public Meta.Backend backend { owned get; construct; } @@ -413,13 +430,26 @@ namespace Meta { #endif public uint get_keybinding_action (uint keycode, ulong mask); public uint32 get_last_user_time (); +#if HAS_MUTTER45 + public Mtk.Rectangle get_monitor_geometry (int monitor); +#else public Meta.Rectangle get_monitor_geometry (int monitor); +#endif public bool get_monitor_in_fullscreen (int monitor); +#if HAS_MUTTER45 + public int get_monitor_index_for_rect (Mtk.Rectangle rect); +#else public int get_monitor_index_for_rect (Meta.Rectangle rect); +#endif public int get_monitor_neighbor_index (int which_monitor, Meta.DisplayDirection dir); public float get_monitor_scale (int monitor); public int get_n_monitors (); +#if HAS_MUTTER45 + public string get_pad_button_label (Clutter.InputDevice pad, int button_number); + public string get_pad_feature_label (Clutter.InputDevice pad, Meta.PadFeatureType feature, Meta.PadDirection direction, int feature_number); +#else public string get_pad_action_label (Clutter.InputDevice pad, Meta.PadActionType action_type, uint action_number); +#endif public int get_primary_monitor (); public unowned Meta.Selection get_selection (); public void get_size (out int width, out int height); @@ -474,7 +504,11 @@ namespace Meta { public signal bool restart (); public signal void show_osd (int object, string p0, string p1); public signal unowned Clutter.Actor? show_pad_osd (Clutter.InputDevice pad, GLib.Settings settings, string layout_path, bool edition_mode, int monitor_idx); +#if HAS_MUTTER45 + public signal bool show_resize_popup (bool object, Mtk.Rectangle p0, int p1, int p2); +#else public signal bool show_resize_popup (bool object, Meta.Rectangle p0, int p1, int p2); +#endif public signal bool show_restart_message (string? message); public signal void showing_desktop_changed (); public signal void window_created (Meta.Window object); @@ -579,6 +613,10 @@ namespace Meta { public void switch_config (Meta.MonitorSwitchConfigType config_type); [NoAccessorMethod] public Meta.Backend backend { owned get; construct; } +#if HAS_MUTTER45 + [NoAccessorMethod] + public string experimental_hdr { owned get; set; } +#endif [NoAccessorMethod] public bool has_builtin_panel { get; } #if HAS_MUTTER43 @@ -589,8 +627,28 @@ namespace Meta { public signal void confirm_display_change (); public signal void monitors_changed (); public signal void monitors_changed_internal (); +#if HAS_MUTTER45 + public signal void power_save_mode_changed (Meta.PowerSaveChangeReason object); +#else public signal void power_save_mode_changed (); +#endif + } +#if HAS_MUTTER45 + [CCode (cheader_filename = "meta/meta-multi-texture.h", type_id = "meta_multi_texture_get_type ()")] + public class MultiTexture : GLib.Object { + [CCode (has_construct_function = false)] + public MultiTexture (Meta.MultiTextureFormat format, owned Cogl.Texture planes, int n_planes); + public Meta.MultiTextureFormat get_format (); + public int get_height (); + public int get_n_planes (); + public unowned Cogl.Texture get_plane (int index); + public int get_width (); + public bool is_simple (); + [CCode (has_construct_function = false)] + public MultiTexture.simple (owned Cogl.Texture plane); + public string to_string (); } +#endif [CCode (cheader_filename = "meta/meta-plugin.h", type_id = "meta_plugin_get_type ()")] public abstract class Plugin : GLib.Object { [CCode (has_construct_function = false)] @@ -627,13 +685,23 @@ namespace Meta { [NoWrapper] public virtual unowned Meta.PluginInfo? plugin_info (); [NoWrapper] +#if HAS_MUTTER45 + public virtual void show_tile_preview (Meta.Window window, Mtk.Rectangle tile_rect, int tile_monitor_number); +#else public virtual void show_tile_preview (Meta.Window window, Meta.Rectangle tile_rect, int tile_monitor_number); +#endif [NoWrapper] public virtual void show_window_menu (Meta.Window window, Meta.WindowMenuType menu, int x, int y); [NoWrapper] +#if HAS_MUTTER45 + public virtual void show_window_menu_for_rect (Meta.Window window, Meta.WindowMenuType menu, Mtk.Rectangle rect); + [NoWrapper] + public virtual void size_change (Meta.WindowActor actor, Meta.SizeChange which_change, Mtk.Rectangle old_frame_rect, Mtk.Rectangle old_buffer_rect); +#else public virtual void show_window_menu_for_rect (Meta.Window window, Meta.WindowMenuType menu, Meta.Rectangle rect); [NoWrapper] public virtual void size_change (Meta.WindowActor actor, Meta.SizeChange which_change, Meta.Rectangle old_frame_rect, Meta.Rectangle old_buffer_rect); +#endif public void size_change_completed (Meta.WindowActor actor); [NoWrapper] public virtual void size_changed (Meta.WindowActor actor); @@ -700,7 +768,11 @@ namespace Meta { [CCode (cheader_filename = "meta/meta-shadow-factory.h", ref_function = "meta_shadow_ref", type_id = "meta_shadow_get_type ()", unref_function = "meta_shadow_unref")] [Compact] public class Shadow { +#if HAS_MUTTER45 + public void get_bounds (int window_x, int window_y, int window_width, int window_height, Mtk.Rectangle bounds); +#else public void get_bounds (int window_x, int window_y, int window_width, int window_height, Cairo.RectangleInt bounds); +#endif public void paint (Cogl.Framebuffer framebuffer, int window_x, int window_y, int window_width, int window_height, uint8 opacity, Cairo.Region? clip, bool clip_strictly); public Meta.Shadow @ref (); public void unref (); @@ -719,8 +791,13 @@ namespace Meta { public sealed class ShapedTexture : GLib.Object, Clutter.Content { [CCode (has_construct_function = false)] protected ShapedTexture (); +#if HAS_MUTTER45 + public Cairo.Surface? get_image (Mtk.Rectangle? clip); + public unowned Meta.MultiTexture get_texture (); +#else public Cairo.Surface? get_image (Cairo.RectangleInt? clip); public unowned Cogl.Texture get_texture (); +#endif public void set_create_mipmaps (bool create_mipmaps); public void set_mask_texture (Cogl.Texture mask_texture); public signal void size_changed (); @@ -736,7 +813,9 @@ namespace Meta { public sealed class Stage : Clutter.Stage, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable { [CCode (has_construct_function = false)] protected Stage (); +#if !HAS_MUTTER45 public signal void actors_painted (); +#endif } [CCode (cheader_filename = "meta/meta-startup-notification.h", type_id = "meta_startup_notification_get_type ()")] public sealed class StartupNotification : GLib.Object { @@ -775,6 +854,7 @@ namespace Meta { public signal void complete (); public signal void timeout (); } +#if !HAS_MUTTER45 [CCode (cheader_filename = "meta/theme.h", has_type_id = false)] [Compact] public class Theme { @@ -784,6 +864,7 @@ namespace Meta { [CCode (cheader_filename = "meta/theme.h")] public static unowned Meta.Theme @new (); } +#endif [CCode (cheader_filename = "meta/meta-wayland-client.h", type_id = "meta_wayland_client_get_type ()")] public sealed class WaylandClient : GLib.Object { [CCode (has_construct_function = false)] @@ -801,6 +882,15 @@ namespace Meta { public signal void client_destroyed (); #endif } +#if HAS_MUTTER45 + [CCode (cheader_filename = "meta/meta-wayland-compositor.h", type_id = "meta_wayland_compositor_get_type ()")] + public class WaylandCompositor : GLib.Object { + [CCode (has_construct_function = false)] + protected WaylandCompositor (); + public void* get_wayland_display (); + public signal void prepare_shutdown (); + } +#endif [CCode (cheader_filename = "meta/window.h", type_id = "meta_window_get_type ()")] #if HAS_MUTTER44 public abstract class Window : GLib.Object, GLib.Initable { @@ -821,19 +911,30 @@ namespace Meta { public bool can_close (); public bool can_maximize (); public bool can_minimize (); +#if !HAS_MUTTER45 public bool can_shade (); +#endif public void change_workspace (Meta.Workspace workspace); public void change_workspace_by_index (int space_index, bool append); public void check_alive (uint32 timestamp); +#if HAS_MUTTER45 + public Mtk.Rectangle client_rect_to_frame_rect (Mtk.Rectangle client_rect); +#else public Meta.Rectangle client_rect_to_frame_rect (Meta.Rectangle client_rect); +#endif public void compute_group (); public void @delete (uint32 timestamp); public unowned Meta.Window find_root_ancestor (); public void focus (uint32 timestamp); public void foreach_ancestor (Meta.WindowForeachFunc func); public void foreach_transient (Meta.WindowForeachFunc func); +#if HAS_MUTTER45 + public Mtk.Rectangle frame_rect_to_client_rect (Mtk.Rectangle frame_rect); + public Mtk.Rectangle get_buffer_rect (); +#else public Meta.Rectangle frame_rect_to_client_rect (Meta.Rectangle frame_rect); public Meta.Rectangle get_buffer_rect (); +#endif public unowned string? get_client_machine (); public Meta.WindowClientType get_client_type (); public unowned GLib.Object get_compositor_private (); @@ -841,7 +942,11 @@ namespace Meta { public unowned Meta.Display get_display (); public unowned Meta.Frame get_frame (); public unowned Cairo.Region? get_frame_bounds (); +#if HAS_MUTTER45 + public Mtk.Rectangle get_frame_rect (); +#else public Meta.Rectangle get_frame_rect (); +#endif public Meta.FrameType get_frame_type (); public unowned Meta.Group? get_group (); public unowned string? get_gtk_app_menu_object_path (); @@ -851,7 +956,11 @@ namespace Meta { public unowned string? get_gtk_theme_variant (); public unowned string? get_gtk_unique_bus_name (); public unowned string? get_gtk_window_object_path (); +#if HAS_MUTTER45 + public bool get_icon_geometry (out Mtk.Rectangle rect); +#else public bool get_icon_geometry (out Meta.Rectangle rect); +#endif public uint64 get_id (); public Meta.StackLayer get_layer (); public Meta.MaximizeFlags get_maximized (); @@ -869,14 +978,23 @@ namespace Meta { public Meta.WindowType get_window_type (); public unowned string? get_wm_class (); public unowned string? get_wm_class_instance (); +#if HAS_MUTTER45 + public Mtk.Rectangle get_work_area_all_monitors (); + public Mtk.Rectangle get_work_area_current_monitor (); + public Mtk.Rectangle get_work_area_for_monitor (int which_monitor); +#else public Meta.Rectangle get_work_area_all_monitors (); public Meta.Rectangle get_work_area_current_monitor (); public Meta.Rectangle get_work_area_for_monitor (int which_monitor); +#endif public unowned Meta.Workspace get_workspace (); public X.Window get_xwindow (); public void group_leader_changed (); public bool has_attached_dialogs (); public bool has_focus (); +#if HAS_MUTTER45 + public bool has_pointer (); +#endif public bool is_above (); public bool is_always_on_all_workspaces (); public bool is_ancestor_of_transient (Meta.Window transient); @@ -890,7 +1008,9 @@ namespace Meta { public bool is_override_redirect (); public bool is_remote (); public bool is_screen_sized (); +#if !HAS_MUTTER45 public bool is_shaded (); +#endif public bool is_skip_taskbar (); public void kill (); public bool located_on_workspace (Meta.Workspace workspace); @@ -904,10 +1024,17 @@ namespace Meta { public void move_resize_frame (bool user_op, int root_x_nw, int root_y_nw, int w, int h); public void move_to_monitor (int monitor); public void raise (); +#if HAS_MUTTER45 + public void raise_and_make_recent (); +#endif public void set_compositor_private (GLib.Object priv); public void set_demands_attention (); +#if HAS_MUTTER45 + public void set_icon_geometry (Mtk.Rectangle? rect); +#else public void set_icon_geometry (Meta.Rectangle? rect); public void shade (uint32 timestamp); +#endif public void shove_titlebar_onscreen (); public bool showing_on_its_workspace (); public void shutdown_group (); @@ -918,7 +1045,9 @@ namespace Meta { public void unmaximize (Meta.MaximizeFlags directions); public void unminimize (); public void unset_demands_attention (); +#if !HAS_MUTTER45 public void unshade (uint32 timestamp); +#endif public void unstick (); [NoAccessorMethod] public bool above { get; } @@ -971,6 +1100,9 @@ namespace Meta { #endif [CCode (cname = "focus")] public signal void focused (); +#if HAS_MUTTER45 + public signal void highest_scale_monitor_changed (); +#endif public signal void position_changed (); public signal void raised (); public signal void shown (); @@ -984,11 +1116,19 @@ namespace Meta { [CCode (has_construct_function = false)] protected WindowActor (); public void freeze (); +#if HAS_MUTTER45 + public Cairo.Surface? get_image (Mtk.Rectangle? clip); +#else public Cairo.Surface? get_image (Cairo.RectangleInt? clip); +#endif public unowned Meta.Window? get_meta_window (); public unowned Meta.ShapedTexture? get_texture (); public bool is_destroyed (); +#if HAS_MUTTER45 + public Clutter.Content? paint_to_content (Mtk.Rectangle? clip) throws GLib.Error; +#else public Clutter.Content? paint_to_content (Meta.Rectangle? clip) throws GLib.Error; +#endif public void sync_visibility (); public void thaw (); public Meta.Window meta_window { get; construct; } @@ -1022,8 +1162,13 @@ namespace Meta { public void activate_with_focus (Meta.Window focus_this, uint32 timestamp); public unowned Meta.Display get_display (); public unowned Meta.Workspace get_neighbor (Meta.MotionDirection direction); +#if HAS_MUTTER45 + public Mtk.Rectangle get_work_area_all_monitors (); + public Mtk.Rectangle get_work_area_for_monitor (int which_monitor); +#else public Meta.Rectangle get_work_area_all_monitors (); public Meta.Rectangle get_work_area_for_monitor (int which_monitor); +#endif public int index (); public GLib.List list_windows (); public void set_builtin_struts (GLib.SList struts); @@ -1074,21 +1219,35 @@ namespace Meta { public int error_trap_pop_with_return (); [CCode (cheader_filename = "meta/meta-x11-errors.h", cname = "meta_x11_error_trap_push")] public void error_trap_push (); +#if !HAS_MUTTER45 public int get_damage_event_base (); public int get_screen_number (); public int get_shape_event_base (); +#endif public unowned X.Display get_xdisplay (); +#if !HAS_MUTTER45 public int get_xinput_opcode (); +#endif public X.Window get_xroot (); +#if !HAS_MUTTER45 public bool has_shape (); +#endif public unowned Meta.Group lookup_group (X.Window group_leader); +#if HAS_MUTTER45 + public void redirect_windows (Meta.Display display); + public void remove_event_func (uint id); +#endif +#if !HAS_MUTTER45 public void set_cm_selection (); +#endif public void set_stage_input_region (X.XserverRegion region); #if !HAS_MUTTER44 [CCode (cheader_filename = "meta/meta-x11-display.h", cname = "meta_x11_init_gdk_display")] public static bool x11_init_gdk_display () throws GLib.Error; #endif +#if !HAS_MUTTER45 public bool xwindow_is_a_no_focus_window (X.Window xwindow); +#endif } [CCode (cheader_filename = "meta/meta-close-dialog.h", type_cname = "MetaCloseDialogInterface", type_id = "meta_close_dialog_get_type ()")] public interface CloseDialog : GLib.Object { @@ -1123,7 +1282,11 @@ namespace Meta { } [CCode (cheader_filename = "meta/boxes.h", has_type_id = false)] public struct Edge { +#if HAS_MUTTER45 + public Mtk.Rectangle rect; +#else public Meta.Rectangle rect; +#endif public Meta.Side side_type; public Meta.EdgeType edge_type; } @@ -1157,6 +1320,7 @@ namespace Meta { public weak string license; public weak string description; } +#if !HAS_MUTTER45 [CCode (cheader_filename = "meta/boxes.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "meta_rectangle_get_type ()")] public struct Rectangle { public int x; @@ -1175,6 +1339,7 @@ namespace Meta { public Meta.Rectangle union (Meta.Rectangle rect2); public bool vert_overlap (Meta.Rectangle rect2); } +#endif [CCode (cheader_filename = "meta/meta-shadow-factory.h", has_type_id = false)] public struct ShadowParams { public int radius; @@ -1185,7 +1350,11 @@ namespace Meta { } [CCode (cheader_filename = "meta/boxes.h", has_type_id = false)] public struct Strut { +#if HAS_MUTTER45 + public Mtk.Rectangle rect; +#else public Meta.Rectangle rect; +#endif public Meta.Side side; } #if HAS_MUTTER43 @@ -1204,6 +1373,14 @@ namespace Meta { NEGATIVE_X, NEGATIVE_Y } +#if HAS_MUTTER45 + [CCode (cheader_filename = "meta/barrier.h", cprefix = "META_BARRIER_FLAG_", type_id = "meta_barrier_flags_get_type ()")] + [Flags] + public enum BarrierFlags { + NONE, + STICKY + } +#endif [CCode (cheader_filename = "meta/common.h", cprefix = "META_BUTTON_FUNCTION_", type_id = "meta_button_function_get_type ()")] public enum ButtonFunction { MENU, @@ -1282,17 +1459,21 @@ namespace Meta { RESIZING, SHAPES, EDGE_RESISTANCE, + DBUS, INPUT, WAYLAND, KMS, SCREEN_CAST, REMOTE_DESKTOP, BACKEND, - RENDER, #if HAS_MUTTER43 COLOR, #endif - DBUS; +#if HAS_MUTTER45 + INPUT_EVENTS, + EIS, +#endif + RENDER; [CCode (cheader_filename = "meta/util.h", cname = "meta_topic_to_string")] public unowned string to_string (); } @@ -1333,6 +1514,7 @@ namespace Meta { SUCCESS, ERROR } +#if !HAS_MUTTER45 [CCode (cheader_filename = "meta/common.h", cprefix = "META_FRAME_", type_id = "meta_frame_flags_get_type ()")] [Flags] public enum FrameFlags { @@ -1353,6 +1535,7 @@ namespace Meta { TILED_LEFT, TILED_RIGHT } +#endif [CCode (cheader_filename = "meta/common.h", cprefix = "META_FRAME_TYPE_", type_id = "meta_frame_type_get_type ()")] public enum FrameType { NORMAL, @@ -1522,6 +1705,9 @@ namespace Meta { IS_REVERSED, NON_MASKABLE, IGNORE_AUTOREPEAT, +#if HAS_MUTTER45 + CUSTOM_TRIGGER, +#endif NO_AUTO_GRAB } #if HAS_MUTTER43 @@ -1584,12 +1770,42 @@ namespace Meta { DOWN_LEFT, DOWN_RIGHT } +#if HAS_MUTTER45 + [CCode (cheader_filename = "meta/meta-multi-texture-format.h", cprefix = "META_MULTI_TEXTURE_FORMAT_", type_id = "meta_multi_texture_format_get_type ()")] + public enum MultiTextureFormat { + INVALID, + SIMPLE, + YUYV, + NV12, + YUV420 + } + [CCode (cheader_filename = "meta/display.h", cprefix = "META_PAD_DIRECTION_", type_id = "meta_pad_direction_get_type ()")] + public enum PadDirection { + UP, + DOWN, + CW, + CCW + } + [CCode (cheader_filename = "meta/display.h", cprefix = "META_PAD_FEATURE_", type_id = "meta_pad_feature_type_get_type ()")] + public enum PadFeatureType { + RING, + STRIP + } +#else [CCode (cheader_filename = "meta/display.h", cprefix = "META_PAD_ACTION_", type_id = "meta_pad_action_type_get_type ()")] public enum PadActionType { BUTTON, RING, STRIP } +#endif +#if HAS_MUTTER45 + [CCode (cheader_filename = "meta/meta-monitor-manager.h", cprefix = "META_POWER_SAVE_CHANGE_REASON_", type_id = "meta_power_save_change_reason_get_type ()")] + public enum PowerSaveChangeReason { + MODE_CHANGE, + HOTPLUG + } +#endif [CCode (cheader_filename = "meta/prefs.h", cprefix = "META_PREF_", type_id = "meta_preference_get_type ()")] public enum Preference { MOUSE_BUTTON_MODS, @@ -1603,7 +1819,9 @@ namespace Meta { AUTO_RAISE, AUTO_RAISE_DELAY, FOCUS_CHANGE_ON_POINTER_REST, +#if !HAS_MUTTER45 TITLEBAR_FONT, +#endif NUM_WORKSPACES, DYNAMIC_WORKSPACES, KEYBINDINGS, diff --git a/vapi/meson.build b/vapi/meson.build index 058b3044..b917c8d1 100644 --- a/vapi/meson.build +++ b/vapi/meson.build @@ -219,3 +219,88 @@ if mutter44_dep.found() output: 'libmutter-12.vapi' ) endif +if mutter45_dep.found() + mtk_target = custom_target('mutter-mtk-13', + command: [ + vapigen, + mutter_typelib_dir / 'Mtk-13.gir', + '--library=mutter-mtk-13', + '--pkg=gobject-2.0', + '--pkg=gio-2.0', + '--pkg=cairo', + '--pkg=graphene-gobject-1.0', + vapigen_args + ], + output: 'mutter-mtk-13.vapi' + ) + cogl_target = custom_target('mutter-cogl-13', + command: [ + vapigen, + mutter_typelib_dir / 'Cogl-13.gir', + '--library=mutter-cogl-13', + '--pkg=gobject-2.0', + '--pkg=gio-2.0', + '--pkg=cairo', + '--pkg=graphene-gobject-1.0', + vapigen_args, + files('Cogl-13-custom.vala') + ], + output: 'mutter-cogl-13.vapi' + ) + + cogl_pango_target = custom_target('mutter-cogl-pango-13', + command: [ + vapigen, + mutter_typelib_dir / 'CoglPango-13.gir', + '--library=mutter-cogl-pango-13', + '--pkg=mutter-cogl-13', + '--pkg=pangocairo', + '--pkg=gio-2.0', + '--pkg=glib-2.0', + vapigen_args + ], + depends: cogl_target, + output: 'mutter-cogl-pango-13.vapi' + ) + + clutter_target = custom_target('mutter-clutter-13', + command: [ + vapigen, + mutter_typelib_dir / 'Clutter-13.gir', + '--library=mutter-clutter-13', + '--pkg=graphene-gobject-1.0', + '--pkg=mutter-cogl-13', + '--pkg=mutter-cogl-pango-13', + '--pkg=mutter-mtk-13', + '--pkg=atk', + '--pkg=gio-2.0', + '--pkg=json-glib-1.0', + '--pkg=pangocairo', + vapigen_args, + files('Clutter-13-custom.vala') + ], + depends: [ cogl_target, cogl_pango_target, mtk_target ], + output: 'mutter-clutter-13.vapi' + ) + + libmutter_target = custom_target('libmutter-13', + command: [ + vapigen, + mutter_typelib_dir / 'Meta-13.gir', + '--library=libmutter-13', + '--pkg=graphene-gobject-1.0', + '--pkg=mutter-cogl-13', + '--pkg=mutter-cogl-pango-13', + '--pkg=mutter-clutter-13', + '--pkg=atk', + '--pkg=gio-2.0', + '--pkg=json-glib-1.0', + '--pkg=pangocairo', + '--pkg=x11', + '--pkg=xfixes-4.0', + vapigen_args + ], + depends: [ cogl_target, cogl_pango_target, clutter_target ], + output: 'libmutter-13.vapi' + ) +endif diff --git a/vapi/mutter-clutter-13.deps b/vapi/mutter-clutter-13.deps new file mode 100644 index 00000000..ae34ab3a --- /dev/null +++ b/vapi/mutter-clutter-13.deps @@ -0,0 +1,6 @@ +atk +cairo +pango +json-glib-1.0 +mutter-cogl-13 +graphene-gobject-1.0 diff --git a/vapi/mutter-clutter-13.vapi b/vapi/mutter-clutter-13.vapi new file mode 120000 index 00000000..8471a954 --- /dev/null +++ b/vapi/mutter-clutter-13.vapi @@ -0,0 +1 @@ +mutter-clutter-12.vapi \ No newline at end of file diff --git a/vapi/mutter-clutter.vapi b/vapi/mutter-clutter.vapi index 3cea79c0..dc6f2f7c 100644 --- a/vapi/mutter-clutter.vapi +++ b/vapi/mutter-clutter.vapi @@ -2,6 +2,14 @@ [CCode (cprefix = "Clutter", gir_namespace = "Clutter", gir_version = "1.0", lower_case_cprefix = "clutter_")] namespace Clutter { + namespace Button { + [CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_BUTTON_MIDDLE")] + public const uint32 MIDDLE; + [CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_BUTTON_PRIMARY")] + public const uint32 PRIMARY; + [CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_BUTTON_SECONDARY")] + public const uint32 SECONDARY; + } namespace Key { [CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_KEY_0")] public const uint @0; @@ -4814,6 +4822,9 @@ namespace Clutter { public unowned Clutter.Actor? get_previous_sibling (); [Version (since = "0.6")] public bool get_reactive (); +#if HAS_MUTTER45 + public Graphene.Matrix get_relative_transformation_matrix (Clutter.Actor? ancestor); +#endif [Version (since = "1.2")] public Clutter.RequestMode get_request_mode (); public float get_resource_scale (); @@ -4903,6 +4914,9 @@ namespace Clutter { public void move_by (float dx, float dy); [Version (since = "1.12")] public bool needs_expand (Clutter.Orientation orientation); +#if HAS_MUTTER45 + public void notify_transform_invalid (); +#endif public virtual void paint (Clutter.PaintContext paint_context); [NoWrapper] public virtual void paint_node (Clutter.PaintNode root); @@ -4910,7 +4924,11 @@ namespace Clutter { public void pick_box (Clutter.PickContext pick_context, Clutter.ActorBox box); public void queue_redraw (); [Version (since = "1.10")] +#if HAS_MUTTER45 + public void queue_redraw_with_clip (Mtk.Rectangle? clip); +#else public void queue_redraw_with_clip (Cairo.RectangleInt? clip); +#endif [Version (since = "1.4")] public void remove_action (Clutter.Action action); [Version (since = "1.4")] @@ -5211,17 +5229,26 @@ namespace Clutter { public bool y_expand { get; set; } [Version (since = "1.12")] public float z_position { get; set; } +#if HAS_MUTTER45 + public virtual signal bool button_press_event (Clutter.Event event); + public virtual signal bool button_release_event (Clutter.Event event); +#else [Version (since = "0.6")] public virtual signal bool button_press_event (Clutter.ButtonEvent event); [Version (since = "0.6")] public virtual signal bool button_release_event (Clutter.ButtonEvent event); +#endif [Version (since = "0.6")] public virtual signal bool captured_event (Clutter.Event event); [HasEmitter] [Version (since = "0.2")] public virtual signal void destroy (); +#if HAS_MUTTER45 + public virtual signal bool enter_event (Clutter.Event event); +#else [Version (since = "0.6")] public virtual signal bool enter_event (Clutter.CrossingEvent event); +#endif [Version (since = "0.6")] public virtual signal bool event (Clutter.Event event); [HasEmitter] @@ -5231,6 +5258,12 @@ namespace Clutter { public virtual signal void key_focus_in (); [Version (since = "0.6")] public virtual signal void key_focus_out (); +#if HAS_MUTTER45 + public virtual signal bool key_press_event (Clutter.Event event); + public virtual signal bool key_release_event (Clutter.Event event); + public virtual signal bool leave_event (Clutter.Event event); + public virtual signal bool motion_event (Clutter.Event event); +#else [Version (since = "0.6")] public virtual signal bool key_press_event (Clutter.KeyEvent event); [Version (since = "0.6")] @@ -5239,6 +5272,7 @@ namespace Clutter { public virtual signal bool leave_event (Clutter.CrossingEvent event); [Version (since = "0.6")] public virtual signal bool motion_event (Clutter.MotionEvent event); +#endif [Version (since = "0.2")] public virtual signal void parent_set (Clutter.Actor? old_parent); [Version (since = "1.0")] @@ -5251,8 +5285,12 @@ namespace Clutter { [Version (deprecated = true, deprecated_since = "1.16", since = "0.8")] public virtual signal void realize (); public virtual signal void resource_scale_changed (); +#if HAS_MUTTER45 + public virtual signal bool scroll_event (Clutter.Event event); +#else [Version (since = "0.6")] public virtual signal bool scroll_event (Clutter.ScrollEvent event); +#endif [HasEmitter] [Version (since = "0.2")] public virtual signal void show (); @@ -5310,6 +5348,7 @@ namespace Clutter { [Compact] [Version (since = "0.2")] public class AnyEvent : Clutter.Event { +#if !HAS_MUTTER45 public Clutter.EventFlags flags; #if !HAS_MUTTER43 public weak Clutter.Actor source; @@ -5317,6 +5356,7 @@ namespace Clutter { public weak Clutter.Stage stage; public uint32 time; public Clutter.EventType type; +#endif } [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_backend_get_type ()")] [Version (since = "0.4")] @@ -5332,7 +5372,7 @@ namespace Clutter { public double get_resolution (); [Version (since = "0.8")] public void set_font_options (Cairo.FontOptions options); - public void set_input_method (Clutter.InputMethod method); + public void set_input_method (Clutter.InputMethod? method); [Version (since = "1.0")] public signal void font_changed (); [Version (since = "1.0")] @@ -5412,22 +5452,28 @@ namespace Clutter { public bool get_homogeneous (); [Version (since = "1.12")] public Clutter.Orientation get_orientation (); +#if !HAS_MUTTER45 [Version (deprecated = true)] public bool get_pack_start (); +#endif public uint get_spacing (); [Version (since = "1.4")] public void set_homogeneous (bool homogeneous); [Version (since = "1.12")] public void set_orientation (Clutter.Orientation orientation); +#if !HAS_MUTTER45 [Version (deprecated = true)] public void set_pack_start (bool pack_start); +#endif public void set_spacing (uint spacing); [Version (since = "1.4")] public bool homogeneous { get; set; } [Version (since = "1.12")] public Clutter.Orientation orientation { get; set; } +#if !HAS_MUTTER45 [Version (deprecated = true)] public bool pack_start { get; set; } +#endif public uint spacing { get; set; } } [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_brightness_contrast_effect_get_type ()")] @@ -5450,6 +5496,7 @@ namespace Clutter { [Compact] [Version (since = "0.2")] public class ButtonEvent : Clutter.Event { +#if !HAS_MUTTER45 public double axes; public uint32 button; public weak Clutter.InputDevice device; @@ -5464,6 +5511,7 @@ namespace Clutter { public Clutter.EventType type; public float x; public float y; +#endif } [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_canvas_get_type ()")] [Version (since = "1.10")] @@ -5572,6 +5620,7 @@ namespace Clutter { [Compact] [Version (since = "0.2")] public class CrossingEvent : Clutter.Event { +#if !HAS_MUTTER45 public weak Clutter.InputDevice device; public Clutter.EventFlags flags; public weak Clutter.Actor related; @@ -5584,6 +5633,7 @@ namespace Clutter { public Clutter.EventType type; public float x; public float y; +#endif } [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_deform_effect_get_type ()")] [Version (since = "1.4")] @@ -5614,6 +5664,7 @@ namespace Clutter { [CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)] [Compact] public class DeviceEvent : Clutter.Event { +#if !HAS_MUTTER45 public weak Clutter.InputDevice device; public Clutter.EventFlags flags; #if !HAS_MUTTER43 @@ -5622,6 +5673,7 @@ namespace Clutter { public weak Clutter.Stage stage; public uint32 time; public Clutter.EventType type; +#endif } [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_effect_get_type ()")] [Version (since = "1.4")] @@ -5647,7 +5699,9 @@ namespace Clutter { [Compact] [Version (since = "0.2")] public class Event { +#if !HAS_MUTTER45 public Clutter.EventType type; +#endif [CCode (has_construct_function = false)] public Event (Clutter.EventType type); [Version (since = "1.18")] @@ -5685,18 +5739,32 @@ namespace Clutter { public double get_gesture_pinch_angle_delta (); [Version (since = "1.24")] public double get_gesture_pinch_scale (); +#if HAS_MUTTER45 + public uint32 get_im_delete_length (); + public bool get_im_location (int32 offset, int32 anchor); + public Clutter.PreeditResetMode get_im_preedit_reset_mode (); + public unowned string get_im_text (); +#endif [Version (since = "1.0")] public uint16 get_key_code (); [Version (since = "1.0")] public uint get_key_symbol (); public unichar get_key_unicode (); public uint get_mode_group (); +#if HAS_MUTTER45 + public bool get_pad_details (out uint number, out uint mode, out Clutter.InputDevicePadSource source, out double value); +#else public bool get_pad_event_details (out uint number, out uint mode, out double value); +#endif [Version (since = "1.12")] public Graphene.Point get_position (); [Version (since = "1.0")] public unowned Clutter.Actor get_related (); +#if HAS_MUTTER45 + public bool get_relative_motion (double dx, double dy, double dx_unaccel, double dy_unaccel, double dx_constrained, double dy_constrained); +#else public bool get_relative_motion (double dx, double dy, double dx_unaccel, double dy_unaccel); +#endif [Version (since = "1.10")] public void get_scroll_delta (out double dx, out double dy); [Version (since = "1.0")] @@ -5709,12 +5777,16 @@ namespace Clutter { public unowned Clutter.Actor get_source (); [Version (since = "1.6")] public unowned Clutter.InputDevice get_source_device (); +#if !HAS_MUTTER45 [Version (since = "0.8")] public unowned Clutter.Stage get_stage (); +#endif [Version (since = "0.4")] public Clutter.ModifierType get_state (); +#if !HAS_MUTTER45 [Version (since = "1.16")] public void get_state_full (out Clutter.ModifierType button_state, out Clutter.ModifierType base_state, out Clutter.ModifierType latched_state, out Clutter.ModifierType locked_state, out Clutter.ModifierType effective_state); +#endif [Version (since = "0.4")] public uint32 get_time (); public int64 get_time_us (); @@ -5732,6 +5804,7 @@ namespace Clutter { public void put (); [Version (since = "1.18")] public static void remove_filter (uint id); +#if !HAS_MUTTER45 [Version (since = "1.8")] public void set_button (uint32 button); [Version (since = "1.8")] @@ -5764,6 +5837,7 @@ namespace Clutter { public void set_state (Clutter.ModifierType state); [Version (since = "1.8")] public void set_time (uint32 time_); +#endif } [CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_event_sequence_get_type ()")] [Compact] @@ -5822,6 +5896,9 @@ namespace Clutter { public class Frame { #if HAS_MUTTER44 public int64 get_count (); +#if HAS_MUTTER45 + public bool get_min_render_time_allowed (int64 min_render_time_allowed_us); +#endif public bool get_target_presentation_time (int64 target_presentation_time_us); #endif public bool has_result (); @@ -5941,6 +6018,7 @@ namespace Clutter { [CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)] [Compact] public class IMEvent : Clutter.Event { +#if !HAS_MUTTER45 #if HAS_MUTTER44 public int32 anchor; #endif @@ -5955,6 +6033,7 @@ namespace Clutter { public weak string text; public uint32 time; public Clutter.EventType type; +#endif } [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_image_get_type ()")] [Version (since = "1.10")] @@ -5962,7 +6041,11 @@ namespace Clutter { [CCode (has_construct_function = false, type = "ClutterContent*")] public Image (); public unowned Cogl.Texture get_texture (); +#if HAS_MUTTER45 + public bool set_area ([CCode (array_length = false)] uint8[] data, Cogl.PixelFormat pixel_format, Mtk.Rectangle rect, uint row_stride) throws GLib.Error; +#else public bool set_area ([CCode (array_length = false)] uint8[] data, Cogl.PixelFormat pixel_format, Cairo.RectangleInt rect, uint row_stride) throws GLib.Error; +#endif [Version (since = "1.12")] public bool set_bytes (GLib.Bytes data, Cogl.PixelFormat pixel_format, uint width, uint height, uint row_stride) throws GLib.Error; public bool set_data ([CCode (array_length = false)] uint8[] data, Cogl.PixelFormat pixel_format, uint width, uint height, uint row_stride) throws GLib.Error; @@ -6062,6 +6145,9 @@ namespace Clutter { [NoWrapper] public virtual void focus_out (); public bool is_focused (); +#if HAS_MUTTER45 + public bool process_event (Clutter.Event event); +#endif [NoWrapper] public virtual void request_surrounding (); public void reset (); @@ -6159,6 +6245,7 @@ namespace Clutter { [Compact] [Version (since = "0.2")] public class KeyEvent : Clutter.Event { +#if !HAS_MUTTER45 public weak Clutter.InputDevice device; public uint32 evdev_code; public Clutter.EventFlags flags; @@ -6172,6 +6259,7 @@ namespace Clutter { public uint32 time; public Clutter.EventType type; public unichar unicode_value; +#endif } [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_keyframe_transition_get_type ()")] [Version (since = "1.12")] @@ -6241,6 +6329,7 @@ namespace Clutter { [Compact] [Version (since = "0.2")] public class MotionEvent : Clutter.Event { +#if !HAS_MUTTER45 public double axes; public weak Clutter.InputDevice device; public double dx; @@ -6258,6 +6347,7 @@ namespace Clutter { public Clutter.EventType type; public float x; public float y; +#endif } [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_offscreen_effect_get_type ()")] [Version (since = "1.4")] @@ -6275,6 +6365,7 @@ namespace Clutter { [CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)] [Compact] public class PadButtonEvent : Clutter.Event { +#if !HAS_MUTTER45 public uint32 button; public weak Clutter.InputDevice device; public Clutter.EventFlags flags; @@ -6286,10 +6377,12 @@ namespace Clutter { public weak Clutter.Stage stage; public uint32 time; public Clutter.EventType type; +#endif } [CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)] [Compact] public class PadRingEvent : Clutter.Event { +#if !HAS_MUTTER45 public double angle; public weak Clutter.InputDevice device; public Clutter.EventFlags flags; @@ -6303,10 +6396,12 @@ namespace Clutter { public weak Clutter.Stage stage; public uint32 time; public Clutter.EventType type; +#endif } [CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)] [Compact] public class PadStripEvent : Clutter.Event { +#if !HAS_MUTTER45 public weak Clutter.InputDevice device; public Clutter.EventFlags flags; public uint32 group; @@ -6320,6 +6415,7 @@ namespace Clutter { public uint32 time; public Clutter.EventType type; public double value; +#endif } [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_page_turn_effect_get_type ()")] [Version (since = "1.4")] @@ -6347,7 +6443,7 @@ namespace Clutter { public unowned Clutter.PaintContext @ref (); public void unref (); } - [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_paint_node_get_type ()")] + [CCode (cheader_filename = "clutter/clutter.h", ref_function = "clutter_paint_node_ref", type_id = "clutter_paint_node_get_type ()", unref_function = "clutter_paint_node_unref")] [Version (since = "1.10")] public abstract class PaintNode { [CCode (has_construct_function = false)] @@ -6402,7 +6498,9 @@ namespace Clutter { public class Path : GLib.InitiallyUnowned { [CCode (has_construct_function = false)] public Path (); +#if !HAS_MUTTER45 public void add_cairo_path (Cairo.Path cpath); +#endif public void add_close (); public void add_curve_to (int x_1, int y_1, int x_2, int y_2, int x_3, int y_3); public void add_line_to (int x, int y); @@ -6424,7 +6522,9 @@ namespace Clutter { public void remove_node (uint index_); public void replace_node (uint index_, Clutter.PathNode node); public bool set_description (string str); +#if !HAS_MUTTER45 public void to_cairo_path (Cairo.Context cr); +#endif [CCode (has_construct_function = false)] public Path.with_description (string desc); public string description { owned get; set; } @@ -6478,6 +6578,7 @@ namespace Clutter { [Compact] [Version (since = "1.28")] public class ProximityEvent : Clutter.Event { +#if !HAS_MUTTER45 public weak Clutter.InputDevice device; public Clutter.EventFlags flags; #if !HAS_MUTTER43 @@ -6486,6 +6587,7 @@ namespace Clutter { public weak Clutter.Stage stage; public uint32 time; public Clutter.EventType type; +#endif } [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_root_node_get_type ()")] public class RootNode : Clutter.PaintNode { @@ -6547,6 +6649,7 @@ namespace Clutter { [Compact] [Version (since = "0.2")] public class ScrollEvent : Clutter.Event { +#if !HAS_MUTTER45 public double axes; public weak Clutter.InputDevice device; public Clutter.ScrollDirection direction; @@ -6562,6 +6665,7 @@ namespace Clutter { public Clutter.EventType type; public float x; public float y; +#endif } [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_seat_get_type ()")] public abstract class Seat : GLib.Object { @@ -6572,6 +6676,9 @@ namespace Clutter { public void ensure_a11y_state (); public virtual unowned Clutter.InputDevice get_keyboard (); public virtual unowned Clutter.Keymap get_keymap (); +#if HAS_MUTTER45 + public unowned string get_name (); +#endif public virtual unowned Clutter.InputDevice get_pointer (); public void get_pointer_a11y_settings (Clutter.PointerA11ySettings settings); public bool get_touch_mode (); @@ -6579,15 +6686,22 @@ namespace Clutter { public virtual Clutter.GrabState grab (uint32 time); public virtual bool handle_event_post (Clutter.Event event); public void inhibit_unfocus (); +#if HAS_MUTTER45 + [NoWrapper] + public virtual void init_pointer_position (float x, float y); +#endif public bool is_unfocus_inhibited (); public GLib.List list_devices (); - public virtual bool query_state (Clutter.InputDevice device, Clutter.EventSequence sequence, Graphene.Point coords, Clutter.ModifierType modifiers); + public virtual bool query_state (Clutter.InputDevice device, Clutter.EventSequence? sequence, out Graphene.Point coords, out Clutter.ModifierType modifiers); public void set_pointer_a11y_dwell_click_type (Clutter.PointerA11yDwellClickType click_type); public void set_pointer_a11y_settings (Clutter.PointerA11ySettings settings); [NoWrapper] public virtual void ungrab (uint32 time); public void uninhibit_unfocus (); public virtual void warp_pointer (int x, int y); +#if HAS_MUTTER45 + public string name { get; construct; } +#endif public bool touch_mode { get; } public signal void device_added (Clutter.InputDevice object); public signal void device_removed (Clutter.InputDevice object); @@ -6604,9 +6718,11 @@ namespace Clutter { [CCode (has_construct_function = false)] protected Settings (); public static unowned Clutter.Settings get_default (); +#if !HAS_MUTTER45 [NoAccessorMethod] [Version (deprecated = true, deprecated_since = "1.10", since = "1.4")] public Clutter.Backend backend { construct; } +#endif [NoAccessorMethod] [Version (since = "1.8")] public int dnd_drag_threshold { get; set; } @@ -6693,15 +6809,25 @@ namespace Clutter { public class Stage : Clutter.Actor, Atk.Implementor, Clutter.Animatable, Clutter.Container, Clutter.Scriptable { [CCode (has_construct_function = false)] protected Stage (); +#if HAS_MUTTER45 + public void capture_view_into (Clutter.StageView view, Mtk.Rectangle rect, uint8 data, int stride); +#else public void capture_view_into (Clutter.StageView view, Cairo.RectangleInt rect, uint8 data, int stride); +#endif public void clear_stage_views (); +#if !HAS_MUTTER45 [CCode (cname = "clutter_stage_event")] [Version (since = "0.4")] public bool emit_event (Clutter.Event event); +#endif [Version (since = "1.0")] public void ensure_viewport (); public unowned Clutter.Actor get_actor_at_pos (Clutter.PickMode pick_mode, float x, float y); +#if HAS_MUTTER45 + public bool get_capture_final_size (Mtk.Rectangle rect, out int out_width, out int out_height, out float out_scale); +#else public bool get_capture_final_size (Cairo.RectangleInt rect, out int out_width, out int out_height, out float out_scale); +#endif public unowned Clutter.Actor? get_device_actor (Clutter.InputDevice device, Clutter.EventSequence? sequence); #if HAS_MUTTER43 public unowned Clutter.Actor? get_event_actor (Clutter.Event event); @@ -6718,9 +6844,19 @@ namespace Clutter { [Version (since = "0.4")] public unowned string get_title (); public Clutter.Grab grab (Clutter.Actor actor); +#if HAS_MUTTER45 + public void handle_event (Clutter.Event event); +#endif +#if HAS_MUTTER45 + public bool paint_to_buffer (Mtk.Rectangle rect, float scale, [CCode (array_length = false)] uint8[] data, int stride, Cogl.PixelFormat format, Clutter.PaintFlag paint_flags) throws GLib.Error; + public Clutter.Content paint_to_content (Mtk.Rectangle rect, float scale, Clutter.PaintFlag paint_flags) throws GLib.Error; + public void paint_to_framebuffer (Cogl.Framebuffer framebuffer, Mtk.Rectangle rect, float scale, Clutter.PaintFlag paint_flags); + public bool pointing_input_foreach (Clutter.StageInputForeachFunc func); +#else 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; public Clutter.Content paint_to_content (Cairo.RectangleInt rect, float scale, Clutter.PaintFlag paint_flags) throws GLib.Error; public void paint_to_framebuffer (Cogl.Framebuffer framebuffer, Cairo.RectangleInt rect, float scale, Clutter.PaintFlag paint_flags); +#endif [CCode (array_length = false)] public uint8[] read_pixels (int x, int y, int width = -1, int height = -1); public void repick_device (Clutter.InputDevice device); @@ -6739,6 +6875,10 @@ namespace Clutter { public void update_device (Clutter.InputDevice device, Clutter.EventSequence sequence, Clutter.InputDevice source_device, Graphene.Point point, uint32 time, Clutter.Actor new_actor, Cairo.Region region, bool emit_crossing); #else 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); +#endif +#if HAS_MUTTER45 + [NoAccessorMethod] + public bool is_grabbed { get; } #endif [Version (since = "1.2")] public Clutter.Actor key_focus { get; set; } @@ -6760,6 +6900,9 @@ namespace Clutter { public virtual signal void before_paint (Clutter.StageView view); public signal void before_update (Clutter.StageView view); #endif +#if HAS_MUTTER45 + public virtual signal void deactivate (); +#endif #if HAS_MUTTER44 public virtual signal void paint_view (Clutter.StageView view, Cairo.Region redraw_clip, Clutter.Frame frame); public signal void prepare_frame (Clutter.StageView view, Clutter.Frame frame); @@ -6796,9 +6939,17 @@ namespace Clutter { [CCode (has_construct_function = false)] protected StageView (); public void assign_next_scanout (Cogl.Scanout scanout); +#if HAS_MUTTER45 + public virtual Clutter.PaintFlag get_default_paint_flags (); +#else public void destroy (); +#endif public unowned Cogl.Framebuffer get_framebuffer (); +#if HAS_MUTTER45 + public void get_layout (Mtk.Rectangle rect); +#else public void get_layout (Cairo.RectangleInt rect); +#endif public virtual void get_offscreen_transformation_matrix (Graphene.Matrix matrix); public unowned Cogl.Framebuffer get_onscreen (); public float get_refresh_rate (); @@ -6807,10 +6958,19 @@ namespace Clutter { public bool has_shadowfb (); #endif public void invalidate_offscreen_blit_pipeline (); +#if HAS_MUTTER45 + [NoWrapper] + public virtual Clutter.Frame new_frame (); + public void schedule_update_now (); +#endif [NoWrapper] public virtual void setup_offscreen_blit_pipeline (Cogl.Pipeline pipeline); [NoWrapper] +#if HAS_MUTTER45 + public virtual void transform_rect_to_onscreen (Mtk.Rectangle src_rect, int dst_width, int dst_height, Mtk.Rectangle dst_rect); +#else public virtual void transform_rect_to_onscreen (Cairo.RectangleInt src_rect, int dst_width, int dst_height, Cairo.RectangleInt dst_rect); +#endif [NoAccessorMethod] public Cogl.Framebuffer framebuffer { owned get; set construct; } [NoAccessorMethod] @@ -6827,6 +6987,10 @@ namespace Clutter { public bool use_shadowfb { get; construct; } [NoAccessorMethod] public int64 vblank_duration_us { get; construct; } +#if HAS_MUTTER45 + [HasEmitter] + public signal void destroy (); +#endif } [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_swipe_action_get_type ()")] [Version (since = "1.8")] @@ -7026,8 +7190,13 @@ namespace Clutter { public sealed class TextureContent : GLib.Object, Clutter.Content { [CCode (has_construct_function = false)] protected TextureContent (); + [CCode (has_construct_function = false, type = "ClutterContent*")] +#if HAS_MUTTER45 + public TextureContent.from_texture (Cogl.Texture texture, Mtk.Rectangle? clip); +#else + public TextureContent.from_texture (Cogl.Texture texture, Cairo.RectangleInt? clip); +#endif public unowned Cogl.Texture get_texture (); - public static Clutter.Content new_from_texture (Cogl.Texture texture, Cairo.RectangleInt? clip); } [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_texture_node_get_type ()")] [Version (since = "1.10")] @@ -7139,6 +7308,7 @@ namespace Clutter { [Compact] [Version (since = "1.10")] public class TouchEvent : Clutter.Event { +#if !HAS_MUTTER45 public double axes; public weak Clutter.InputDevice device; public Clutter.EventFlags flags; @@ -7152,10 +7322,12 @@ namespace Clutter { public Clutter.EventType type; public float x; public float y; +#endif } [CCode (cheader_filename = "clutter/clutter.h", has_type_id = false)] [Compact] public class TouchpadHoldEvent : Clutter.Event { +#if !HAS_MUTTER45 public Clutter.EventFlags flags; public uint32 n_fingers; public Clutter.TouchpadGesturePhase phase; @@ -7167,11 +7339,13 @@ namespace Clutter { 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")] public class TouchpadPinchEvent : Clutter.Event { +#if !HAS_MUTTER45 public float angle_delta; public float dx; public float dx_unaccel; @@ -7189,11 +7363,13 @@ namespace Clutter { 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")] public class TouchpadSwipeEvent : Clutter.Event { +#if !HAS_MUTTER45 public float dx; public float dx_unaccel; public float dy; @@ -7209,6 +7385,7 @@ namespace Clutter { public Clutter.EventType type; public float x; public float y; +#endif } [CCode (cheader_filename = "clutter/clutter.h", type_id = "clutter_transform_node_get_type ()")] public class TransformNode : Clutter.PaintNode { @@ -7407,7 +7584,11 @@ namespace Clutter { [CCode (cheader_filename = "clutter/clutter.h", has_copy_function = false, has_destroy_function = false, has_type_id = false)] public struct Capture { public Cairo.ImageSurface image; +#if HAS_MUTTER45 + public Mtk.Rectangle rect; +#else public Cairo.RectangleInt rect; +#endif } [CCode (cheader_filename = "clutter/clutter.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "clutter_color_get_type ()")] public struct Color { @@ -7731,9 +7912,13 @@ namespace Clutter { PICK, EVENTLOOP, CLIPPING, + OOB_TRANSFORMS, FRAME_TIMINGS, - DETAILED_TRACE, - OOB_TRANSFORMS +#if HAS_MUTTER45 + GRABS, + FRAME_CLOCK, +#endif + DETAILED_TRACE } [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_DRAG_", type_id = "clutter_drag_axis_get_type ()")] [Version (since = "1.4")] @@ -7753,9 +7938,9 @@ namespace Clutter { DISABLE_OFFSCREEN_REDIRECT, CONTINUOUS_REDRAW, PAINT_DEFORM_TILES, + PAINT_DAMAGE_REGION, DISABLE_DYNAMIC_MAX_RENDER_TIME, - PAINT_MAX_RENDER_TIME, - PAINT_DAMAGE_REGION + PAINT_MAX_RENDER_TIME } [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_EFFECT_PAINT_", type_id = "clutter_effect_paint_flags_get_type ()")] [Flags] @@ -7770,9 +7955,12 @@ namespace Clutter { NONE, FLAG_SYNTHETIC, FLAG_INPUT_METHOD, + FLAG_REPEATED, FLAG_RELATIVE_MOTION, - FLAG_GRAB_NOTIFY, - FLAG_REPEATED +#if HAS_MUTTER45 + FLAG_POINTER_EMULATED, +#endif + FLAG_GRAB_NOTIFY } [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_PHASE_", type_id = "clutter_event_phase_get_type ()")] public enum EventPhase { @@ -7853,6 +8041,7 @@ namespace Clutter { KEYBOARD, ALL } +#if !HAS_MUTTER45 [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GRAVITY_", type_id = "clutter_gravity_get_type ()")] [Version (deprecated = true, deprecated_since = "1.22", since = "0.2")] public enum Gravity { @@ -7867,6 +8056,7 @@ namespace Clutter { NORTH_WEST, CENTER } +#endif [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_GRID_POSITION_", type_id = "clutter_grid_position_get_type ()")] [Version (since = "1.12")] public enum GridPosition { @@ -8003,12 +8193,14 @@ namespace Clutter { ON, TOGGLE } +#if !HAS_MUTTER45 [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_INTERPOLATION_", type_id = "clutter_interpolation_get_type ()")] [Version (deprecated = true, deprecated_since = "1.22", since = "1.2")] public enum Interpolation { LINEAR, CUBIC } +#endif [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_KEY_STATE_", type_id = "clutter_key_state_get_type ()")] public enum KeyState { RELEASED, @@ -8063,8 +8255,8 @@ namespace Clutter { [Version (since = "1.8")] public enum OffscreenRedirect { AUTOMATIC_FOR_OPACITY, - ON_IDLE, - ALWAYS + ALWAYS, + ON_IDLE } [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ORIENTATION_", type_id = "clutter_orientation_get_type ()")] [Version (since = "1.12")] @@ -8171,12 +8363,14 @@ namespace Clutter { Y_AXIS, Z_AXIS } +#if !HAS_MUTTER45 [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_ROTATE_", type_id = "clutter_rotate_direction_get_type ()")] [Version (deprecated = true, deprecated_since = "1.22", since = "0.4")] public enum RotateDirection { CW, CCW } +#endif [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_SCALING_FILTER_", type_id = "clutter_scaling_filter_get_type ()")] [Version (since = "1.10")] public enum ScalingFilter { @@ -8303,6 +8497,7 @@ namespace Clutter { LTR, RTL } +#if !HAS_MUTTER45 [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TEXTURE_", type_id = "clutter_texture_flags_get_type ()")] [Flags] [Version (deprecated = true, deprecated_since = "1.22", since = "0.4")] @@ -8319,6 +8514,7 @@ namespace Clutter { MEDIUM, HIGH } +#endif [CCode (cheader_filename = "clutter/clutter.h", cprefix = "CLUTTER_TIMELINE_", type_id = "clutter_timeline_direction_get_type ()")] [Version (since = "0.6")] public enum TimelineDirection { @@ -8392,18 +8588,32 @@ namespace Clutter { [CCode (cheader_filename = "clutter/clutter.h", instance_pos = 6.9)] [Version (since = "0.6")] public delegate void ScriptConnectFunc (Clutter.Script script, GLib.Object object, string signal_name, string handler_name, GLib.Object connect_object, GLib.ConnectFlags flags); +#if HAS_MUTTER45 + [CCode (cheader_filename = "clutter/clutter.h", instance_pos = 3.9)] + public delegate bool StageInputForeachFunc (Clutter.Stage stage, Clutter.InputDevice device, Clutter.EventSequence sequence); +#endif [CCode (cheader_filename = "clutter/clutter.h", instance_pos = 3.9)] [Version (since = "1.10")] public delegate double TimelineProgressFunc (Clutter.Timeline timeline, double elapsed, double total); +#if !HAS_MUTTER45 [CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_COGL")] [Version (deprecated = true, deprecated_since = "1.10", since = "0.4")] public const string COGL; +#endif [CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_CURRENT_TIME")] [Version (since = "0.4")] public const int CURRENT_TIME; + [CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_EVENT_PROPAGATE")] + [Version (since = "1.10")] + public const bool EVENT_PROPAGATE; + [CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_EVENT_STOP")] + [Version (since = "1.10")] + public const bool EVENT_STOP; +#if !HAS_MUTTER45 [CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_FLAVOUR")] [Version (deprecated = true, deprecated_since = "1.10", since = "0.4")] public const string FLAVOUR; +#endif [CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_PATH_RELATIVE")] public const int PATH_RELATIVE; [CCode (cheader_filename = "clutter/clutter.h", cname = "CLUTTER_PRIORITY_REDRAW")] @@ -8420,9 +8630,11 @@ namespace Clutter { [CCode (cheader_filename = "clutter/clutter.h")] [Version (since = "1.14")] public static void disable_accessibility (); +#if !HAS_MUTTER45 [CCode (cheader_filename = "clutter/clutter.h")] [Version (since = "0.4")] public static void do_event (Clutter.Event event); +#endif [CCode (cheader_filename = "clutter/clutter.h")] [Version (since = "0.4")] public static bool events_pending (); diff --git a/vapi/mutter-cogl-12.deps b/vapi/mutter-cogl-12.deps index ce132cda..509422eb 120000 --- a/vapi/mutter-cogl-12.deps +++ b/vapi/mutter-cogl-12.deps @@ -1 +1 @@ -mutter-cogl-10.deps \ No newline at end of file +mutter-cogl-11.deps \ No newline at end of file diff --git a/vapi/mutter-cogl-12.vapi b/vapi/mutter-cogl-12.vapi index 06333dd3..353f3f1a 120000 --- a/vapi/mutter-cogl-12.vapi +++ b/vapi/mutter-cogl-12.vapi @@ -1 +1 @@ -mutter-cogl-10.vapi \ No newline at end of file +mutter-cogl-11.vapi \ No newline at end of file diff --git a/vapi/mutter-cogl-13.deps b/vapi/mutter-cogl-13.deps new file mode 120000 index 00000000..a587f313 --- /dev/null +++ b/vapi/mutter-cogl-13.deps @@ -0,0 +1 @@ +mutter-cogl-12.deps \ No newline at end of file diff --git a/vapi/mutter-cogl-13.vapi b/vapi/mutter-cogl-13.vapi new file mode 120000 index 00000000..96930f03 --- /dev/null +++ b/vapi/mutter-cogl-13.vapi @@ -0,0 +1 @@ +mutter-cogl-12.vapi \ No newline at end of file diff --git a/vapi/mutter-cogl-pango-13.vapi b/vapi/mutter-cogl-pango-13.vapi new file mode 120000 index 00000000..1fa95489 --- /dev/null +++ b/vapi/mutter-cogl-pango-13.vapi @@ -0,0 +1 @@ +mutter-cogl-pango-12.vapi \ No newline at end of file diff --git a/vapi/mutter-cogl.vapi b/vapi/mutter-cogl.vapi index dd6984f7..723eeef7 100644 --- a/vapi/mutter-cogl.vapi +++ b/vapi/mutter-cogl.vapi @@ -207,7 +207,7 @@ namespace Cogl { [CCode (cheader_filename = "cogl/cogl.h", cname = "cogl_is_texture")] public bool is_texture (); } - [CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_object_get_gtype ()")] + [CCode (cheader_filename = "cogl/cogl.h", ref_function = "cogl_object_ref", type_id = "cogl_object_get_gtype ()", unref_function = "cogl_object_unref")] public abstract class Object { [CCode (has_construct_function = false)] protected Object (); @@ -217,12 +217,12 @@ namespace Cogl { [CCode (cheader_filename = "cogl/cogl.h", cname = "cogl_is_context")] [Version (since = "1.10")] public bool is_context (); - [CCode (cheader_filename = "cogl/cogl.h", cname = "cogl_is_framebuffer")] - [Version (since = "1.10")] - public bool is_framebuffer (); [Version (since = "2.0")] [CCode (cheader_filename = "cogl/cogl.h", cname = "cogl_is_frame_info")] public bool is_frame_info (); + [CCode (cheader_filename = "cogl/cogl.h", cname = "cogl_is_framebuffer")] + [Version (since = "1.10")] + public bool is_framebuffer (); [CCode (cheader_filename = "cogl/cogl.h", cname = "cogl_is_pipeline")] [Version (since = "2.0")] public bool is_pipeline (); @@ -817,12 +817,12 @@ namespace Cogl { OGL_FEATURE_ID_TEXTURE_RG, [CCode (cname = "COGL_FEATURE_ID_BUFFER_AGE")] OGL_FEATURE_ID_BUFFER_AGE, + [CCode (cname = "COGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL")] + OGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL, [CCode (cname = "COGL_FEATURE_ID_BLIT_FRAMEBUFFER")] OGL_FEATURE_ID_BLIT_FRAMEBUFFER, [CCode (cname = "COGL_FEATURE_ID_TIMESTAMP_QUERY")] - OGL_FEATURE_ID_TIMESTAMP_QUERY, - [CCode (cname = "COGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL")] - OGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL + OGL_FEATURE_ID_TIMESTAMP_QUERY } [CCode (cheader_filename = "cogl/cogl.h", cprefix = "COGL_FILTER_", has_type_id = false)] public enum FilterReturn { @@ -898,9 +898,21 @@ namespace Cogl { RG_88, RGB_888, BGR_888, +#if HAS_MUTTER45 + RGBX_8888, +#endif RGBA_8888, +#if HAS_MUTTER45 + BGRX_8888, +#endif BGRA_8888, +#if HAS_MUTTER45 + XRGB_8888, +#endif ARGB_8888, +#if HAS_MUTTER45 + XBGR_8888, +#endif ABGR_8888, RGBA_1010102, BGRA_1010102, @@ -908,7 +920,13 @@ namespace Cogl { ARGB_2101010, XBGR_2101010, ABGR_2101010, +#if HAS_MUTTER45 + RGBX_FP_16161616, +#endif RGBA_FP_16161616, +#if HAS_MUTTER45 + BGRX_FP_16161616, +#endif BGRA_FP_16161616, XRGB_FP_16161616, ARGB_FP_16161616, @@ -1123,13 +1141,28 @@ namespace Cogl { [CCode (cheader_filename = "cogl/cogl.h")] [Version (deprecated = true, deprecated_since = "1.16", since = "1.0")] public static GLib.OptionGroup get_option_group (); +#endif +#if HAS_MUTTER45 + [CCode (cheader_filename = "cogl/cogl.h")] + public static bool is_tracing (); #endif [CCode (cheader_filename = "cogl/cogl.h")] public static void set_tracing_disabled_on_thread (GLib.MainContext main_context); +#if HAS_MUTTER45 + [CCode (cheader_filename = "cogl/cogl.h")] + public static void set_tracing_enabled_on_thread (GLib.MainContext main_context, string group); + [CCode (cheader_filename = "cogl/cogl.h")] + public static bool start_tracing_with_fd (int fd) throws GLib.Error; + [CCode (cheader_filename = "cogl/cogl.h")] + public static bool start_tracing_with_path (string filename) throws GLib.Error; + [CCode (cheader_filename = "cogl/cogl.h")] + public static void stop_tracing (); +#else [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); +#endif [CCode (cheader_filename = "cogl/cogl.h")] public static void trace_describe (Cogl.TraceHead head, string description); [CCode (cheader_filename = "cogl/cogl.h")] diff --git a/vapi/mutter-mtk-13.vapi b/vapi/mutter-mtk-13.vapi new file mode 100644 index 00000000..df98ff38 --- /dev/null +++ b/vapi/mutter-mtk-13.vapi @@ -0,0 +1,38 @@ +/* mutter-mtk-13.vapi generated by vapigen, do not modify. */ + +[CCode (cprefix = "Mtk", gir_namespace = "Mtk", gir_version = "13", lower_case_cprefix = "mtk_")] +namespace Mtk { + [CCode (cheader_filename = "mtk/mtk.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "mtk_rectangle_get_type ()")] + public struct Rectangle { + public int x; + public int y; + public int width; + public int height; + [CCode (has_construct_function = false, type = "MtkRectangle*")] + public Rectangle (int x, int y, int width, int height); + public int area (); + public bool contains_rect (Mtk.Rectangle inner_rect); + public Mtk.Rectangle? copy (); + public bool could_fit_rect (Mtk.Rectangle inner_rect); + public bool equal (Mtk.Rectangle src2); + public void free (); + public static Mtk.Rectangle from_graphene_rect (Graphene.Rect rect, Mtk.RoundingStrategy rounding_strategy); + public bool horiz_overlap (Mtk.Rectangle rect2); + public bool intersect (Mtk.Rectangle src2, out Mtk.Rectangle dest); + public bool overlap (Mtk.Rectangle rect2); + public Graphene.Rect? to_graphene_rect (); + public Mtk.Rectangle union (Mtk.Rectangle rect2); + public bool vert_overlap (Mtk.Rectangle rect2); + } + [CCode (cheader_filename = "mtk/mtk.h", cprefix = "MTK_ROUNDING_STRATEGY_", has_type_id = false)] + public enum RoundingStrategy { + SHRINK, + GROW, + ROUND + } + [CCode (cheader_filename = "mtk/mtk.h")] + [Version (replacement = "Rectangle.from_graphene_rect")] + public static Mtk.Rectangle rectangle_from_graphene_rect (Graphene.Rect rect, Mtk.RoundingStrategy rounding_strategy); + [CCode (cheader_filename = "mtk/mtk.h")] + public static void x11_errors_deinit (); +}