Drop support for mutter < 3.18.3

This commit is contained in:
Rico Tzschichholz 2017-07-18 16:34:11 +02:00
parent 123d9fc500
commit b0f713628d
5 changed files with 3 additions and 221 deletions

View File

@ -106,8 +106,8 @@ GTK_MIN_VERSION=3.4.0
GLIB_MIN_VERSION=2.44.0 GLIB_MIN_VERSION=2.44.0
PLANK_MIN_VERSION=0.3.0 PLANK_MIN_VERSION=0.3.0
CLUTTER_MIN_VERSION=1.12.0 CLUTTER_MIN_VERSION=1.12.0
MUTTER_MIN_VERSION=3.14.4 MUTTER_MIN_VERSION=3.18.3
MUTTER_API="3.14" MUTTER_API="3.18"
GALA_CORE_PKGS="gobject-2.0 >= $GLIB_MIN_VERSION \ GALA_CORE_PKGS="gobject-2.0 >= $GLIB_MIN_VERSION \
glib-2.0 >= $GLIB_MIN_VERSION \ glib-2.0 >= $GLIB_MIN_VERSION \
@ -150,22 +150,6 @@ AC_SUBST([PLUGIN_LDFLAGS])
# Optional Dependencies # Optional Dependencies
# ----------------------------------------------------------- # -----------------------------------------------------------
# 3.16
PKG_CHECK_MODULES(MUTTER316, [libmutter >= 3.15], [have_mutter316=yes], [have_mutter316=no])
if test "x$have_mutter316" = "xyes" ; then
PKG_CHECK_MODULES(MUTTER316, [libmutter >= 3.16.4])
VALAFLAGS="$VALAFLAGS --define HAS_MUTTER316"
MUTTER_API="3.16"
fi
# 3.18
PKG_CHECK_MODULES(MUTTER318, [libmutter >= 3.17], [have_mutter318=yes], [have_mutter318=no])
if test "x$have_mutter318" = "xyes" ; then
PKG_CHECK_MODULES(MUTTER318, [libmutter >= 3.18.4])
VALAFLAGS="$VALAFLAGS --define HAS_MUTTER318"
MUTTER_API="3.18"
fi
# 3.20 # 3.20
PKG_CHECK_MODULES(MUTTER320, [libmutter >= 3.19], [have_mutter320=yes], [have_mutter320=no]) PKG_CHECK_MODULES(MUTTER320, [libmutter >= 3.19], [have_mutter320=yes], [have_mutter320=no])
if test "x$have_mutter320" = "xyes" ; then if test "x$have_mutter320" = "xyes" ; then
@ -190,8 +174,7 @@ fi
PKG_CHECK_MODULES(MUTTER324, [libmutter-0 >= 3.23], [have_mutter324=yes], [have_mutter324=no]) PKG_CHECK_MODULES(MUTTER324, [libmutter-0 >= 3.23], [have_mutter324=yes], [have_mutter324=no])
if test "x$have_mutter324" = "xyes" ; then if test "x$have_mutter324" = "xyes" ; then
PKG_CHECK_MODULES(MUTTER324, [libmutter >= 3.23.90]) PKG_CHECK_MODULES(MUTTER324, [libmutter >= 3.23.90])
VALAFLAGS="$VALAFLAGS --define HAS_MUTTER316 --define HAS_MUTTER318 --define HAS_MUTTER320 --define HAS_MUTTER322" VALAFLAGS="$VALAFLAGS --define HAS_MUTTER320 --define HAS_MUTTER322 --define HAS_MUTTER324"
VALAFLAGS="$VALAFLAGS --define HAS_MUTTER324"
MUTTER_CFLAGS="-DCLUTTER_ENABLE_COMPOSITOR_API -DCLUTTER_ENABLE_EXPERIMENTAL_API -DCOGL_ENABLE_EXPERIMENTAL_API -DCOGL_ENABLE_EXPERIMENTAL_2_0_API" MUTTER_CFLAGS="-DCLUTTER_ENABLE_COMPOSITOR_API -DCLUTTER_ENABLE_EXPERIMENTAL_API -DCOGL_ENABLE_EXPERIMENTAL_API -DCOGL_ENABLE_EXPERIMENTAL_2_0_API"
MUTTER_PKGS="mutter-cogl-0 mutter-cogl-pango-0 mutter-cogl-path-0 mutter-clutter-0 libmutter-0 >= 3.23.90" MUTTER_PKGS="mutter-cogl-0 mutter-cogl-pango-0 mutter-cogl-path-0 mutter-clutter-0 libmutter-0 >= 3.23.90"
MUTTER_VALA_PKGS="--pkg mutter-cogl-0 --pkg mutter-clutter-0 --pkg libmutter-0" MUTTER_VALA_PKGS="--pkg mutter-cogl-0 --pkg mutter-clutter-0 --pkg libmutter-0"

View File

@ -127,11 +127,7 @@ namespace Gala
file_watches[filename] = cache.file_changed.connect ((changed_file) => { file_watches[filename] = cache.file_changed.connect ((changed_file) => {
if (changed_file == filename) { if (changed_file == filename) {
var image_cache = Meta.BackgroundImageCache.get_default (); var image_cache = Meta.BackgroundImageCache.get_default ();
#if HAS_MUTTER316
image_cache.purge (File.new_for_path (changed_file)); image_cache.purge (File.new_for_path (changed_file));
#else
image_cache.purge (changed_file);
#endif
changed (); changed ();
} }
}); });
@ -156,19 +152,11 @@ namespace Gala
set_loaded (); set_loaded ();
if (files.length > 1) if (files.length > 1)
#if HAS_MUTTER316
background.set_blend (File.new_for_path (files[0]), File.new_for_path (files[1]), animation.transition_progress, style); background.set_blend (File.new_for_path (files[0]), File.new_for_path (files[1]), animation.transition_progress, style);
else if (files.length > 0) else if (files.length > 0)
background.set_file (File.new_for_path (files[0]), style); background.set_file (File.new_for_path (files[0]), style);
else else
background.set_file (null, style); background.set_file (null, style);
#else
background.set_blend (files[0], files[1], animation.transition_progress, style);
else if (files.length > 0)
background.set_filename (files[0], style);
else
background.set_filename (null, style);
#endif
queue_update_animation (); queue_update_animation ();
}; };
@ -178,11 +166,7 @@ namespace Gala
for (var i = 0; i < files.length; i++) { for (var i = 0; i < files.length; i++) {
watch_file (files[i]); watch_file (files[i]);
#if HAS_MUTTER316
var image = cache.load (File.new_for_path (files[i])); var image = cache.load (File.new_for_path (files[i]));
#else
var image = cache.load (files[i]);
#endif
if (image.is_loaded ()) { if (image.is_loaded ()) {
num_pending_images--; num_pending_images--;
@ -239,19 +223,11 @@ namespace Gala
void load_image (string filename) void load_image (string filename)
{ {
#if HAS_MUTTER316
background.set_file (File.new_for_path (filename), style); background.set_file (File.new_for_path (filename), style);
#else
background.set_filename (filename, style);
#endif
watch_file (filename); watch_file (filename);
var cache = Meta.BackgroundImageCache.get_default (); var cache = Meta.BackgroundImageCache.get_default ();
#if HAS_MUTTER316
var image = cache.load (File.new_for_path (filename)); var image = cache.load (File.new_for_path (filename));
#else
var image = cache.load (filename);
#endif
if (image.is_loaded ()) if (image.is_loaded ())
set_loaded(); set_loaded();
else { else {

View File

@ -38,21 +38,13 @@ namespace Gala
system_background = new Meta.Background (meta_screen); system_background = new Meta.Background (meta_screen);
system_background.set_color (DEFAULT_BACKGROUND_COLOR); system_background.set_color (DEFAULT_BACKGROUND_COLOR);
#if HAS_MUTTER316
system_background.set_file (File.new_for_path (path), GDesktop.BackgroundStyle.WALLPAPER); system_background.set_file (File.new_for_path (path), GDesktop.BackgroundStyle.WALLPAPER);
#else
system_background.set_filename (path, GDesktop.BackgroundStyle.WALLPAPER);
#endif
} }
background = system_background; background = system_background;
var cache = Meta.BackgroundImageCache.get_default (); var cache = Meta.BackgroundImageCache.get_default ();
#if HAS_MUTTER316
var image = cache.load (File.new_for_path (path)); var image = cache.load (File.new_for_path (path));
#else
var image = cache.load (path);
#endif
if (image.is_loaded ()) { if (image.is_loaded ()) {
image = null; image = null;
Idle.add(() => { Idle.add(() => {

View File

@ -90,9 +90,7 @@ namespace Gala
Gee.HashSet<Meta.WindowActor> mapping = new Gee.HashSet<Meta.WindowActor> (); Gee.HashSet<Meta.WindowActor> mapping = new Gee.HashSet<Meta.WindowActor> ();
Gee.HashSet<Meta.WindowActor> destroying = new Gee.HashSet<Meta.WindowActor> (); Gee.HashSet<Meta.WindowActor> destroying = new Gee.HashSet<Meta.WindowActor> ();
Gee.HashSet<Meta.WindowActor> unminimizing = new Gee.HashSet<Meta.WindowActor> (); Gee.HashSet<Meta.WindowActor> unminimizing = new Gee.HashSet<Meta.WindowActor> ();
#if HAS_MUTTER318
GLib.HashTable<Meta.Window, int> ws_assoc = new GLib.HashTable<Meta.Window, int> (direct_hash, direct_equal); GLib.HashTable<Meta.Window, int> ws_assoc = new GLib.HashTable<Meta.Window, int> (direct_hash, direct_equal);
#endif
public WindowManagerGala () public WindowManagerGala ()
{ {
@ -722,7 +720,6 @@ namespace Gala
* effects * effects
*/ */
#if HAS_MUTTER318
void handle_fullscreen_window (Meta.Window window, Meta.SizeChange which_change) void handle_fullscreen_window (Meta.Window window, Meta.SizeChange which_change)
{ {
// Only handle windows which are located on the primary monitor // Only handle windows which are located on the primary monitor
@ -784,7 +781,6 @@ namespace Gala
size_change_completed (actor); size_change_completed (actor);
} }
#endif
public override void minimize (WindowActor actor) public override void minimize (WindowActor actor)
{ {
@ -852,22 +848,13 @@ namespace Gala
} }
} }
#if HAS_MUTTER318
inline void maximize_completed (WindowActor actor)
{
}
void maximize (WindowActor actor, int ex, int ey, int ew, int eh) void maximize (WindowActor actor, int ex, int ey, int ew, int eh)
#else
public override void maximize (WindowActor actor, int ex, int ey, int ew, int eh)
#endif
{ {
unowned AnimationSettings animation_settings = AnimationSettings.get_default (); unowned AnimationSettings animation_settings = AnimationSettings.get_default ();
var duration = animation_settings.snap_duration; var duration = animation_settings.snap_duration;
if (!animation_settings.enable_animations if (!animation_settings.enable_animations
|| duration == 0) { || duration == 0) {
maximize_completed (actor);
return; return;
} }
@ -881,7 +868,6 @@ namespace Gala
var old_actor = Utils.get_window_actor_snapshot (actor, old_inner_rect, old_outer_rect); var old_actor = Utils.get_window_actor_snapshot (actor, old_inner_rect, old_outer_rect);
if (old_actor == null) { if (old_actor == null) {
maximize_completed (actor);
return; return;
} }
@ -930,8 +916,6 @@ namespace Gala
}); });
old_actor.restore_easing_state (); old_actor.restore_easing_state ();
maximize_completed (actor);
actor.set_pivot_point (0.0f, 0.0f); actor.set_pivot_point (0.0f, 0.0f);
actor.set_translation (old_inner_rect.x - ex, old_inner_rect.y - ey, 0.0f); actor.set_translation (old_inner_rect.x - ex, old_inner_rect.y - ey, 0.0f);
actor.set_scale (1.0f / scale_x, 1.0f / scale_y); actor.set_scale (1.0f / scale_x, 1.0f / scale_y);
@ -942,11 +926,7 @@ namespace Gala
actor.set_scale (1.0f, 1.0f); actor.set_scale (1.0f, 1.0f);
actor.set_translation (0.0f, 0.0f, 0.0f); actor.set_translation (0.0f, 0.0f, 0.0f);
actor.restore_easing_state (); actor.restore_easing_state ();
return;
} }
maximize_completed (actor);
} }
public override void unminimize (WindowActor actor) public override void unminimize (WindowActor actor)
@ -1117,9 +1097,7 @@ namespace Gala
unowned AnimationSettings animation_settings = AnimationSettings.get_default (); unowned AnimationSettings animation_settings = AnimationSettings.get_default ();
var window = actor.get_meta_window (); var window = actor.get_meta_window ();
#if HAS_MUTTER318
ws_assoc.remove (window); ws_assoc.remove (window);
#endif
if (!animation_settings.enable_animations) { if (!animation_settings.enable_animations) {
destroy_completed (actor); destroy_completed (actor);
@ -1213,22 +1191,13 @@ namespace Gala
} }
} }
#if HAS_MUTTER318
inline void unmaximize_completed (Meta.WindowActor actor)
{
}
void unmaximize (Meta.WindowActor actor, int ex, int ey, int ew, int eh) void unmaximize (Meta.WindowActor actor, int ex, int ey, int ew, int eh)
#else
public override void unmaximize (Meta.WindowActor actor, int ex, int ey, int ew, int eh)
#endif
{ {
unowned AnimationSettings animation_settings = AnimationSettings.get_default (); unowned AnimationSettings animation_settings = AnimationSettings.get_default ();
var duration = animation_settings.snap_duration; var duration = animation_settings.snap_duration;
if (!animation_settings.enable_animations if (!animation_settings.enable_animations
|| duration == 0) { || duration == 0) {
unmaximize_completed (actor);
return; return;
} }
@ -1254,7 +1223,6 @@ namespace Gala
var old_actor = Utils.get_window_actor_snapshot (actor, old_rect, old_rect); var old_actor = Utils.get_window_actor_snapshot (actor, old_rect, old_rect);
if (old_actor == null) { if (old_actor == null) {
unmaximize_completed (actor);
return; return;
} }
@ -1281,7 +1249,6 @@ namespace Gala
var maximized_x = actor.x; var maximized_x = actor.x;
var maximized_y = actor.y; var maximized_y = actor.y;
unmaximize_completed (actor);
actor.set_pivot_point (0.0f, 0.0f); actor.set_pivot_point (0.0f, 0.0f);
actor.set_position (ex, ey); actor.set_position (ex, ey);
actor.set_translation (-ex + offset_x * (1.0f / scale_x - 1.0f) + maximized_x, -ey + offset_y * (1.0f / scale_y - 1.0f) + maximized_y, 0.0f); actor.set_translation (-ex + offset_x * (1.0f / scale_x - 1.0f) + maximized_x, -ey + offset_y * (1.0f / scale_y - 1.0f) + maximized_y, 0.0f);
@ -1293,11 +1260,7 @@ namespace Gala
actor.set_scale (1.0f, 1.0f); actor.set_scale (1.0f, 1.0f);
actor.set_translation (0.0f, 0.0f, 0.0f); actor.set_translation (0.0f, 0.0f, 0.0f);
actor.restore_easing_state (); actor.restore_easing_state ();
return;
} }
unmaximize_completed (actor);
} }
// Cancel attached animation of an actor and reset it // Cancel attached animation of an actor and reset it
@ -1330,17 +1293,9 @@ namespace Gala
if (end_animation (ref minimizing, actor)) if (end_animation (ref minimizing, actor))
minimize_completed (actor); minimize_completed (actor);
if (end_animation (ref maximizing, actor)) if (end_animation (ref maximizing, actor))
#if HAS_MUTTER318
size_change_completed (actor); size_change_completed (actor);
#else
maximize_completed (actor);
#endif
if (end_animation (ref unmaximizing, actor)) if (end_animation (ref unmaximizing, actor))
#if HAS_MUTTER318
size_change_completed (actor); size_change_completed (actor);
#else
unmaximize_completed (actor);
#endif
if (end_animation (ref destroying, actor)) if (end_animation (ref destroying, actor))
destroy_completed (actor); destroy_completed (actor);
} }

View File

@ -2,18 +2,6 @@
[CCode (cprefix = "Meta", gir_namespace = "Meta", gir_version = "3.0", lower_case_cprefix = "meta_")] [CCode (cprefix = "Meta", gir_namespace = "Meta", gir_version = "3.0", lower_case_cprefix = "meta_")]
namespace Meta { namespace Meta {
#if !HAS_MUTTER316
namespace Gradient {
[CCode (cheader_filename = "meta/gradient.h")]
public static void add_alpha (Gdk.Pixbuf pixbuf, uint8 alphas, int n_alphas, Meta.GradientType type);
[CCode (cheader_filename = "meta/gradient.h")]
public static unowned Gdk.Pixbuf create_interwoven (int width, int height, Gdk.RGBA colors1, int thickness1, Gdk.RGBA colors2, int thickness2);
[CCode (cheader_filename = "meta/gradient.h")]
public static Gdk.Pixbuf create_multi (int width, int height, [CCode (array_length_cname = "n_colors", array_length_pos = 3.5)] Gdk.RGBA[] colors, Meta.GradientType style);
[CCode (cheader_filename = "meta/gradient.h")]
public static Gdk.Pixbuf create_simple (int width, int height, Gdk.RGBA from, Gdk.RGBA to, Meta.GradientType style);
}
#endif
namespace Prefs { namespace Prefs {
[CCode (cheader_filename = "meta/prefs.h")] [CCode (cheader_filename = "meta/prefs.h")]
public static void add_listener (Meta.PrefsChangedFunc func); public static void add_listener (Meta.PrefsChangedFunc func);
@ -83,10 +71,6 @@ namespace Meta {
public static bool get_raise_on_click (); public static bool get_raise_on_click ();
[CCode (cheader_filename = "meta/prefs.h")] [CCode (cheader_filename = "meta/prefs.h")]
public static bool get_show_fallback_app_menu (); public static bool get_show_fallback_app_menu ();
#if !HAS_MUTTER316
[CCode (cheader_filename = "meta/prefs.h")]
public static unowned string get_theme ();
#endif
[CCode (cheader_filename = "meta/prefs.h")] [CCode (cheader_filename = "meta/prefs.h")]
public static unowned Pango.FontDescription get_titlebar_font (); public static unowned Pango.FontDescription get_titlebar_font ();
[CCode (cheader_filename = "meta/prefs.h")] [CCode (cheader_filename = "meta/prefs.h")]
@ -196,26 +180,16 @@ namespace Meta {
#endif #endif
public signal void keymap_changed (); public signal void keymap_changed ();
public signal void keymap_layout_group_changed (uint object); public signal void keymap_layout_group_changed (uint object);
#if HAS_MUTTER316
public signal void last_device_changed (int object); public signal void last_device_changed (int object);
#endif
} }
[CCode (cheader_filename = "meta/meta-background.h", type_id = "meta_background_get_type ()")] [CCode (cheader_filename = "meta/meta-background.h", type_id = "meta_background_get_type ()")]
public class Background : GLib.Object { public class Background : GLib.Object {
[CCode (has_construct_function = false)] [CCode (has_construct_function = false)]
public Background (Meta.Screen screen); public Background (Meta.Screen screen);
public static void refresh_all (); public static void refresh_all ();
#if HAS_MUTTER316
public void set_blend (GLib.File file1, GLib.File file2, double blend_factor, GDesktop.BackgroundStyle style); public void set_blend (GLib.File file1, GLib.File file2, double blend_factor, GDesktop.BackgroundStyle style);
#else
public void set_blend (string filename1, string filename2, double blend_factor, GDesktop.BackgroundStyle style);
#endif
public void set_color (Clutter.Color color); public void set_color (Clutter.Color color);
#if HAS_MUTTER316
public void set_file (GLib.File file, GDesktop.BackgroundStyle style); public void set_file (GLib.File file, GDesktop.BackgroundStyle style);
#else
public void set_filename (string filename, GDesktop.BackgroundStyle style);
#endif
public void set_gradient (GDesktop.BackgroundShading shading_direction, Clutter.Color color, Clutter.Color second_color); public void set_gradient (GDesktop.BackgroundShading shading_direction, Clutter.Color color, Clutter.Color second_color);
[NoAccessorMethod] [NoAccessorMethod]
public Meta.Screen meta_screen { owned get; construct; } public Meta.Screen meta_screen { owned get; construct; }
@ -259,13 +233,8 @@ namespace Meta {
[CCode (has_construct_function = false)] [CCode (has_construct_function = false)]
protected BackgroundImageCache (); protected BackgroundImageCache ();
public static unowned Meta.BackgroundImageCache get_default (); public static unowned Meta.BackgroundImageCache get_default ();
#if HAS_MUTTER316
public Meta.BackgroundImage load (GLib.File file); public Meta.BackgroundImage load (GLib.File file);
public void purge (GLib.File file); public void purge (GLib.File file);
#else
public Meta.BackgroundImage load (string filename);
public void purge (string filename);
#endif
} }
[CCode (cheader_filename = "meta/barrier.h", type_id = "meta_barrier_get_type ()")] [CCode (cheader_filename = "meta/barrier.h", type_id = "meta_barrier_get_type ()")]
public class Barrier : GLib.Object { public class Barrier : GLib.Object {
@ -311,10 +280,8 @@ namespace Meta {
public void flash_screen (Meta.Screen screen); public void flash_screen (Meta.Screen screen);
[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_focus_stage_window")] [CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_focus_stage_window")]
public static void focus_stage_window (Meta.Screen screen, uint32 timestamp); public static void focus_stage_window (Meta.Screen screen, uint32 timestamp);
#if HAS_MUTTER316
[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_feedback_group_for_screen")] [CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_feedback_group_for_screen")]
public static unowned Clutter.Actor get_feedback_group_for_screen (Meta.Screen screen); public static unowned Clutter.Actor get_feedback_group_for_screen (Meta.Screen screen);
#endif
[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_stage_for_screen")] [CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_stage_for_screen")]
public static unowned Clutter.Actor? get_stage_for_screen (Meta.Screen screen); public static unowned Clutter.Actor? get_stage_for_screen (Meta.Screen screen);
[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_top_window_group_for_screen")] [CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_get_top_window_group_for_screen")]
@ -326,9 +293,6 @@ namespace Meta {
public void hide_tile_preview (); public void hide_tile_preview ();
public void hide_window (Meta.Window window, Meta.CompEffect effect); public void hide_window (Meta.Window window, Meta.CompEffect effect);
public void manage (); public void manage ();
#if !HAS_MUTTER318
public void maximize_window (Meta.Window window, Meta.Rectangle old_rect, Meta.Rectangle new_rect);
#endif
[CCode (cheader_filename = "meta/main.h")] [CCode (cheader_filename = "meta/main.h")]
public static unowned Meta.Compositor @new (Meta.Display display); public static unowned Meta.Compositor @new (Meta.Display display);
public void queue_frame_drawn (Meta.Window window, bool no_delay_frame); public void queue_frame_drawn (Meta.Window window, bool no_delay_frame);
@ -337,9 +301,7 @@ namespace Meta {
public void show_window (Meta.Window window, Meta.CompEffect effect); public void show_window (Meta.Window window, Meta.CompEffect effect);
public void show_window_menu (Meta.Window window, Meta.WindowMenuType menu, int x, int y); public void show_window_menu (Meta.Window window, Meta.WindowMenuType menu, int x, int y);
public void show_window_menu_for_rect (Meta.Window window, Meta.WindowMenuType menu, Meta.Rectangle rect); public void show_window_menu_for_rect (Meta.Window window, Meta.WindowMenuType menu, Meta.Rectangle rect);
#if HAS_MUTTER318
public void size_change_window (Meta.Window window, Meta.SizeChange which_change, Meta.Rectangle old_frame_rect, Meta.Rectangle old_buffer_rect); public void size_change_window (Meta.Window window, Meta.SizeChange which_change, Meta.Rectangle old_frame_rect, Meta.Rectangle old_buffer_rect);
#endif
[CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_stage_is_focused")] [CCode (cheader_filename = "meta/compositor-mutter.h", cname = "meta_stage_is_focused")]
public static bool stage_is_focused (Meta.Screen screen); public static bool stage_is_focused (Meta.Screen screen);
public void switch_workspace (Meta.Workspace from, Meta.Workspace to, Meta.MotionDirection direction); public void switch_workspace (Meta.Workspace from, Meta.Workspace to, Meta.MotionDirection direction);
@ -347,9 +309,6 @@ namespace Meta {
public void sync_updates_frozen (Meta.Window window); public void sync_updates_frozen (Meta.Window window);
public void sync_window_geometry (Meta.Window window, bool did_placement); public void sync_window_geometry (Meta.Window window, bool did_placement);
public void unmanage (); public void unmanage ();
#if !HAS_MUTTER318
public void unmaximize_window (Meta.Window window, Meta.Rectangle old_rect, Meta.Rectangle new_rect);
#endif
public void window_opacity_changed (Meta.Window window); public void window_opacity_changed (Meta.Window window);
public void window_shape_changed (Meta.Window window); public void window_shape_changed (Meta.Window window);
public void window_surface_changed (Meta.Window window); public void window_surface_changed (Meta.Window window);
@ -375,11 +334,7 @@ namespace Meta {
public void clear_mouse_mode (); public void clear_mouse_mode ();
public void end_grab_op (uint32 timestamp); public void end_grab_op (uint32 timestamp);
public void focus_the_no_focus_window (Meta.Screen screen, uint32 timestamp); public void focus_the_no_focus_window (Meta.Screen screen, uint32 timestamp);
#if HAS_MUTTER316
public void freeze_keyboard (uint32 timestamp); public void freeze_keyboard (uint32 timestamp);
#else
public void freeze_keyboard (X.Window window, uint32 timestamp);
#endif
public unowned Meta.Compositor get_compositor (); public unowned Meta.Compositor get_compositor ();
public uint32 get_current_time (); public uint32 get_current_time ();
public uint32 get_current_time_roundtrip (); public uint32 get_current_time_roundtrip ();
@ -426,9 +381,7 @@ namespace Meta {
#if HAS_MUTTER322 #if HAS_MUTTER322
public signal unowned Clutter.Actor? show_pad_osd (Clutter.InputDevice pad, GLib.Settings settings, string layout_path, bool edition_mode, int monitor_idx); public signal unowned Clutter.Actor? show_pad_osd (Clutter.InputDevice pad, GLib.Settings settings, string layout_path, bool edition_mode, int monitor_idx);
#endif #endif
#if HAS_MUTTER316
public signal bool show_resize_popup (bool object, Meta.Rectangle p0, int p1, int p2); 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 bool show_restart_message (string? message);
public signal void window_created (Meta.Window object); public signal void window_created (Meta.Window object);
public signal void window_demands_attention (Meta.Window object); public signal void window_demands_attention (Meta.Window object);
@ -471,7 +424,6 @@ namespace Meta {
[CCode (cheader_filename = "meta/keybindings.h", cname = "meta_keybindings_set_custom_handler")] [CCode (cheader_filename = "meta/keybindings.h", cname = "meta_keybindings_set_custom_handler")]
public static bool set_custom_handler (string name, owned Meta.KeyHandlerFunc? handler); public static bool set_custom_handler (string name, owned Meta.KeyHandlerFunc? handler);
} }
#if HAS_MUTTER316
[CCode (cheader_filename = "meta/meta-monitor-manager.h", type_id = "meta_monitor_manager_get_type ()")] [CCode (cheader_filename = "meta/meta-monitor-manager.h", type_id = "meta_monitor_manager_get_type ()")]
public abstract class MonitorManager : GLib.DBusInterfaceSkeleton, GLib.DBusInterface { public abstract class MonitorManager : GLib.DBusInterfaceSkeleton, GLib.DBusInterface {
[CCode (has_construct_function = false)] [CCode (has_construct_function = false)]
@ -483,7 +435,6 @@ namespace Meta {
public int get_monitor_for_output (uint id); public int get_monitor_for_output (uint id);
public signal void confirm_display_change (); public signal void confirm_display_change ();
} }
#endif
[CCode (cheader_filename = "meta/meta-plugin.h", type_id = "meta_plugin_get_type ()")] [CCode (cheader_filename = "meta/meta-plugin.h", type_id = "meta_plugin_get_type ()")]
public abstract class Plugin : GLib.Object { public abstract class Plugin : GLib.Object {
[CCode (has_construct_function = false)] [CCode (has_construct_function = false)]
@ -510,11 +461,6 @@ namespace Meta {
[NoWrapper] [NoWrapper]
public virtual void map (Meta.WindowActor actor); public virtual void map (Meta.WindowActor actor);
public void map_completed (Meta.WindowActor actor); public void map_completed (Meta.WindowActor actor);
#if !HAS_MUTTER318
[NoWrapper]
public virtual void maximize (Meta.WindowActor actor, int x, int y, int width, int height);
public void maximize_completed (Meta.WindowActor actor);
#endif
[NoWrapper] [NoWrapper]
public virtual void minimize (Meta.WindowActor actor); public virtual void minimize (Meta.WindowActor actor);
public void minimize_completed (Meta.WindowActor actor); public void minimize_completed (Meta.WindowActor actor);
@ -526,21 +472,14 @@ namespace Meta {
public virtual void show_window_menu (Meta.Window window, Meta.WindowMenuType menu, int x, int y); public virtual void show_window_menu (Meta.Window window, Meta.WindowMenuType menu, int x, int y);
[NoWrapper] [NoWrapper]
public virtual void show_window_menu_for_rect (Meta.Window window, Meta.WindowMenuType menu, Meta.Rectangle rect); public virtual void show_window_menu_for_rect (Meta.Window window, Meta.WindowMenuType menu, Meta.Rectangle rect);
#if HAS_MUTTER318
[NoWrapper] [NoWrapper]
public virtual void size_change (Meta.WindowActor actor, Meta.SizeChange which_change, Meta.Rectangle old_frame_rect, Meta.Rectangle old_buffer_rect); public virtual void size_change (Meta.WindowActor actor, Meta.SizeChange which_change, Meta.Rectangle old_frame_rect, Meta.Rectangle old_buffer_rect);
public void size_change_completed (Meta.WindowActor actor); public void size_change_completed (Meta.WindowActor actor);
#endif
[NoWrapper] [NoWrapper]
public virtual void start (); public virtual void start ();
[NoWrapper] [NoWrapper]
public virtual void switch_workspace (int from, int to, Meta.MotionDirection direction); public virtual void switch_workspace (int from, int to, Meta.MotionDirection direction);
public void switch_workspace_completed (); public void switch_workspace_completed ();
#if !HAS_MUTTER318
[NoWrapper]
public virtual void unmaximize (Meta.WindowActor actor, int x, int y, int width, int height);
public void unmaximize_completed (Meta.WindowActor actor);
#endif
[NoWrapper] [NoWrapper]
public virtual void unminimize (Meta.WindowActor actor); public virtual void unminimize (Meta.WindowActor actor);
public void unminimize_completed (Meta.WindowActor actor); public void unminimize_completed (Meta.WindowActor actor);
@ -561,9 +500,7 @@ namespace Meta {
public Meta.Rectangle get_monitor_geometry (int monitor); public Meta.Rectangle get_monitor_geometry (int monitor);
public bool get_monitor_in_fullscreen (int monitor); public bool get_monitor_in_fullscreen (int monitor);
public int get_monitor_index_for_rect (Meta.Rectangle rect); public int get_monitor_index_for_rect (Meta.Rectangle rect);
#if HAS_MUTTER318
public int get_monitor_neighbor_index (int which_monitor, Meta.ScreenDirection dir); public int get_monitor_neighbor_index (int which_monitor, Meta.ScreenDirection dir);
#endif
public int get_n_monitors (); public int get_n_monitors ();
public int get_n_workspaces (); public int get_n_workspaces ();
public int get_primary_monitor (); public int get_primary_monitor ();
@ -576,9 +513,6 @@ namespace Meta {
public void remove_workspace (Meta.Workspace workspace, uint32 timestamp); public void remove_workspace (Meta.Workspace workspace, uint32 timestamp);
public void set_cm_selection (); public void set_cm_selection ();
public void set_cursor (Meta.Cursor cursor); public void set_cursor (Meta.Cursor cursor);
#if !HAS_MUTTER316
public void unset_cm_selection ();
#endif
public int n_workspaces { get; } public int n_workspaces { get; }
public signal void in_fullscreen_changed (); public signal void in_fullscreen_changed ();
public signal void monitors_changed (); public signal void monitors_changed ();
@ -591,7 +525,6 @@ namespace Meta {
public signal void workspace_removed (int object); public signal void workspace_removed (int object);
public signal void workspace_switched (int object, int p0, Meta.MotionDirection p1); public signal void workspace_switched (int object, int p0, Meta.MotionDirection p1);
} }
#if HAS_MUTTER318
[CCode (cheader_filename = "meta/meta-shadow-factory.h", ref_function = "meta_shadow_ref", type_id = "meta_shadow_get_type ()", unref_function = "meta_shadow_unref")] [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] [Compact]
public class Shadow { public class Shadow {
@ -600,20 +533,13 @@ namespace Meta {
public Meta.Shadow @ref (); public Meta.Shadow @ref ();
public void unref (); public void unref ();
} }
#endif
[CCode (cheader_filename = "meta/meta-shadow-factory.h", type_id = "meta_shadow_factory_get_type ()")] [CCode (cheader_filename = "meta/meta-shadow-factory.h", type_id = "meta_shadow_factory_get_type ()")]
public class ShadowFactory : GLib.Object { public class ShadowFactory : GLib.Object {
[CCode (has_construct_function = false)] [CCode (has_construct_function = false)]
#if HAS_MUTTER318
public ShadowFactory (); public ShadowFactory ();
#else
protected ShadowFactory ();
#endif
public static unowned Meta.ShadowFactory get_default (); public static unowned Meta.ShadowFactory get_default ();
public Meta.ShadowParams get_params (string class_name, bool focused); public Meta.ShadowParams get_params (string class_name, bool focused);
#if HAS_MUTTER318
public Meta.Shadow get_shadow (Meta.WindowShape shape, int width, int height, string class_name, bool focused); public Meta.Shadow get_shadow (Meta.WindowShape shape, int width, int height, string class_name, bool focused);
#endif
public void set_params (string class_name, bool focused, Meta.ShadowParams @params); public void set_params (string class_name, bool focused, Meta.ShadowParams @params);
public signal void changed (); public signal void changed ();
} }
@ -633,22 +559,10 @@ namespace Meta {
[Compact] [Compact]
public class Theme { public class Theme {
public void free (); public void free ();
#if HAS_MUTTER316
[CCode (cheader_filename = "meta/main.h")] [CCode (cheader_filename = "meta/main.h")]
public static unowned Meta.Theme get_default (); public static unowned Meta.Theme get_default ();
[CCode (cheader_filename = "meta/main.h")] [CCode (cheader_filename = "meta/main.h")]
public static unowned Meta.Theme @new (); public static unowned Meta.Theme @new ();
#else
[CCode (cheader_filename = "meta/main.h")]
public static unowned Meta.Theme get_current ();
[CCode (cheader_filename = "meta/main.h")]
public static unowned Meta.Theme load (string theme_name) throws GLib.Error;
[CCode (cheader_filename = "meta/main.h")]
public static unowned Meta.Theme @new ();
[CCode (cheader_filename = "meta/main.h")]
public static void set_current (string name);
public bool validate () throws GLib.Error;
#endif
} }
[CCode (cheader_filename = "meta/window.h", type_id = "meta_window_get_type ()")] [CCode (cheader_filename = "meta/window.h", type_id = "meta_window_get_type ()")]
public abstract class Window : GLib.Object { public abstract class Window : GLib.Object {
@ -701,10 +615,6 @@ namespace Meta {
public Meta.MaximizeFlags get_maximized (); public Meta.MaximizeFlags get_maximized ();
public int get_monitor (); public int get_monitor ();
public unowned string get_mutter_hints (); public unowned string get_mutter_hints ();
#if !HAS_MUTTER316
[Deprecated (since = "3.12")]
public Meta.Rectangle get_outer_rect ();
#endif
public int get_pid (); public int get_pid ();
public unowned string get_role (); public unowned string get_role ();
public unowned Meta.Screen get_screen (); public unowned Meta.Screen get_screen ();
@ -784,21 +694,13 @@ namespace Meta {
public string gtk_unique_bus_name { get; } public string gtk_unique_bus_name { get; }
public string gtk_window_object_path { get; } public string gtk_window_object_path { get; }
[NoAccessorMethod] [NoAccessorMethod]
#if HAS_MUTTER316
public Cairo.Surface icon { owned get; } public Cairo.Surface icon { owned get; }
#else
public Gdk.Pixbuf icon { owned get; }
#endif
[NoAccessorMethod] [NoAccessorMethod]
public bool maximized_horizontally { get; } public bool maximized_horizontally { get; }
[NoAccessorMethod] [NoAccessorMethod]
public bool maximized_vertically { get; } public bool maximized_vertically { get; }
[NoAccessorMethod] [NoAccessorMethod]
#if HAS_MUTTER316
public Cairo.Surface mini_icon { owned get; } public Cairo.Surface mini_icon { owned get; }
#else
public Gdk.Pixbuf mini_icon { owned get; }
#endif
[NoAccessorMethod] [NoAccessorMethod]
public bool minimized { get; } public bool minimized { get; }
public string mutter_hints { get; } public string mutter_hints { get; }
@ -832,20 +734,13 @@ namespace Meta {
public bool is_destroyed (); public bool is_destroyed ();
#if HAS_MUTTER322 #if HAS_MUTTER322
public void sync_visibility (); public void sync_visibility ();
#endif
#if !HAS_MUTTER318
[NoAccessorMethod]
public bool no_shadow { get; set; }
#endif #endif
[NoAccessorMethod] [NoAccessorMethod]
public string shadow_class { owned get; set; } public string shadow_class { owned get; set; }
#if HAS_MUTTER318
[NoAccessorMethod] [NoAccessorMethod]
public Meta.ShadowMode shadow_mode { get; set; } public Meta.ShadowMode shadow_mode { get; set; }
#endif
public signal void first_frame (); public signal void first_frame ();
} }
#if HAS_MUTTER318
[CCode (cheader_filename = "meta/meta_window_shape.h", ref_function = "meta_window_shape_ref", type_id = "meta_window_shape_get_type ()", unref_function = "meta_window_shape_unref")] [CCode (cheader_filename = "meta/meta_window_shape.h", ref_function = "meta_window_shape_ref", type_id = "meta_window_shape_get_type ()", unref_function = "meta_window_shape_unref")]
[Compact] [Compact]
public class WindowShape { public class WindowShape {
@ -858,7 +753,6 @@ namespace Meta {
public Cairo.Region to_region (int center_width, int center_height); public Cairo.Region to_region (int center_width, int center_height);
public void unref (); public void unref ();
} }
#endif
[CCode (cheader_filename = "meta/workspace.h", type_id = "meta_workspace_get_type ()")] [CCode (cheader_filename = "meta/workspace.h", type_id = "meta_workspace_get_type ()")]
public class Workspace : GLib.Object { public class Workspace : GLib.Object {
[CCode (has_construct_function = false)] [CCode (has_construct_function = false)]
@ -1095,9 +989,7 @@ namespace Meta {
COMPOSITOR, COMPOSITOR,
WAYLAND_POPUP, WAYLAND_POPUP,
WINDOW_BASE, WINDOW_BASE,
#if HAS_MUTTER316
FRAME_BUTTON, FRAME_BUTTON,
#endif
MOVING, MOVING,
RESIZING_NW, RESIZING_NW,
RESIZING_N, RESIZING_N,
@ -1118,15 +1010,6 @@ namespace Meta {
KEYBOARD_RESIZING_SE, KEYBOARD_RESIZING_SE,
KEYBOARD_RESIZING_W KEYBOARD_RESIZING_W
} }
#if !HAS_MUTTER316
[CCode (cheader_filename = "meta/gradient.h", cprefix = "META_GRADIENT_", type_id = "meta_gradient_type_get_type ()")]
public enum GradientType {
VERTICAL,
HORIZONTAL,
DIAGONAL,
LAST
}
#endif
[CCode (cheader_filename = "meta/prefs.h", cprefix = "META_KEYBINDING_ACTION_", type_id = "meta_key_binding_action_get_type ()")] [CCode (cheader_filename = "meta/prefs.h", cprefix = "META_KEYBINDING_ACTION_", type_id = "meta_key_binding_action_get_type ()")]
public enum KeyBindingAction { public enum KeyBindingAction {
NONE, NONE,
@ -1287,9 +1170,6 @@ namespace Meta {
AUTO_RAISE, AUTO_RAISE,
AUTO_RAISE_DELAY, AUTO_RAISE_DELAY,
FOCUS_CHANGE_ON_POINTER_REST, FOCUS_CHANGE_ON_POINTER_REST,
#if !HAS_MUTTER316
THEME,
#endif
TITLEBAR_FONT, TITLEBAR_FONT,
NUM_WORKSPACES, NUM_WORKSPACES,
DYNAMIC_WORKSPACES, DYNAMIC_WORKSPACES,
@ -1322,7 +1202,6 @@ namespace Meta {
BOTTOMLEFT, BOTTOMLEFT,
BOTTOMRIGHT BOTTOMRIGHT
} }
#if HAS_MUTTER318
[CCode (cheader_filename = "meta/meta-enum-types.h", cprefix = "META_SCREEN_", type_id = "meta_screen_direction_get_type ()")] [CCode (cheader_filename = "meta/meta-enum-types.h", cprefix = "META_SCREEN_", type_id = "meta_screen_direction_get_type ()")]
public enum ScreenDirection { public enum ScreenDirection {
UP, UP,
@ -1336,7 +1215,6 @@ namespace Meta {
FORCED_OFF, FORCED_OFF,
FORCED_ON FORCED_ON
} }
#endif
[CCode (cheader_filename = "meta/common.h", cprefix = "META_SIDE_", type_id = "meta_side_get_type ()")] [CCode (cheader_filename = "meta/common.h", cprefix = "META_SIDE_", type_id = "meta_side_get_type ()")]
public enum Side { public enum Side {
LEFT, LEFT,
@ -1344,7 +1222,6 @@ namespace Meta {
TOP, TOP,
BOTTOM BOTTOM
} }
#if HAS_MUTTER318
[CCode (cheader_filename = "meta/meta-enum-types.h", cprefix = "META_SIZE_CHANGE_", type_id = "meta_size_change_get_type ()")] [CCode (cheader_filename = "meta/meta-enum-types.h", cprefix = "META_SIZE_CHANGE_", type_id = "meta_size_change_get_type ()")]
public enum SizeChange { public enum SizeChange {
MAXIMIZE, MAXIMIZE,
@ -1352,7 +1229,6 @@ namespace Meta {
FULLSCREEN, FULLSCREEN,
UNFULLSCREEN UNFULLSCREEN
} }
#endif
[CCode (cheader_filename = "meta/common.h", cprefix = "META_LAYER_", type_id = "meta_stack_layer_get_type ()")] [CCode (cheader_filename = "meta/common.h", cprefix = "META_LAYER_", type_id = "meta_stack_layer_get_type ()")]
public enum StackLayer { public enum StackLayer {
DESKTOP, DESKTOP,