Import gala-6.3.1-3.el9
This commit is contained in:
commit
a4b65e5279
1
.gala.metadata
Normal file
1
.gala.metadata
Normal file
@ -0,0 +1 @@
|
||||
4bc2834ea44de004091b506c0a44869d28e5db6e SOURCES/gala-6.3.1.tar.gz
|
1
.gitignore
vendored
Normal file
1
.gitignore
vendored
Normal file
@ -0,0 +1 @@
|
||||
SOURCES/gala-6.3.1.tar.gz
|
52
SOURCES/0000-Modify-default-settings-for-Fedora.patch
Normal file
52
SOURCES/0000-Modify-default-settings-for-Fedora.patch
Normal file
@ -0,0 +1,52 @@
|
||||
From be3f4b53198b0abe3cb6cb74d8f0e2b6332d68e2 Mon Sep 17 00:00:00 2001
|
||||
From: Fabio Valentini <decathorpe@gmail.com>
|
||||
Date: Mon, 14 Mar 2022 15:22:50 +0100
|
||||
Subject: [PATCH 0/5] Modify default settings for Fedora
|
||||
|
||||
---
|
||||
data/gala.gschema.xml | 8 ++++----
|
||||
1 file changed, 4 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/data/gala.gschema.xml b/data/gala.gschema.xml
|
||||
index 872a9795..1de3a2d9 100644
|
||||
--- a/data/gala.gschema.xml
|
||||
+++ b/data/gala.gschema.xml
|
||||
@@ -26,7 +26,7 @@
|
||||
|
||||
<schema path="/org/pantheon/desktop/gala/behavior/" id="org.pantheon.desktop.gala.behavior">
|
||||
<key enum="GalaActionType" name="hotcorner-topleft">
|
||||
- <default>"none"</default>
|
||||
+ <default>"open-launcher"</default>
|
||||
<summary>Action for the top left corner</summary>
|
||||
<description></description>
|
||||
</key>
|
||||
@@ -71,7 +71,7 @@
|
||||
<description>DEPRECATED: This key is deprecated and ignored.</description>
|
||||
</key>
|
||||
<key type="s" name="panel-main-menu-action">
|
||||
- <default>''</default>
|
||||
+ <default>'io.elementary.wingpanel --toggle-indicator=app-launcher'</default>
|
||||
<summary>Panel main menu action</summary>
|
||||
<description>Sets the command to run when the panel-main-menu keybinding is pressed.</description>
|
||||
</key>
|
||||
@@ -81,7 +81,7 @@
|
||||
<description></description>
|
||||
</key>
|
||||
<key type="s" name="overlay-action">
|
||||
- <default>''</default>
|
||||
+ <default>'io.elementary.wingpanel --toggle-indicator=app-launcher'</default>
|
||||
<summary></summary>
|
||||
<description></description>
|
||||
</key>
|
||||
@@ -179,7 +179,7 @@
|
||||
<description>When true, instead of having independent titlebars, modal dialogs appear attached to the titlebar of the parent window and are moved together with the parent window.</description>
|
||||
</key>
|
||||
<key type="s" name="button-layout">
|
||||
- <default>'close:maximize'</default>
|
||||
+ <default>'close:menu,maximize'</default>
|
||||
<summary>Arrangement of buttons on the titlebar</summary>
|
||||
<description>Arrangement of buttons on the titlebar. The value should be a string, such as "menu:minimize,maximize,spacer,close"; the colon separates the left corner of the window from the right corner, and the button names are comma-separated. Duplicate buttons are not allowed. Unknown button names are silently ignored so that buttons can be added in future metacity versions without breaking older versions. A special spacer tag can be used to insert some space between two adjacent buttons.</description>
|
||||
</key>
|
||||
--
|
||||
2.35.1
|
||||
|
63
SOURCES/1e223b3.patch
Normal file
63
SOURCES/1e223b3.patch
Normal file
@ -0,0 +1,63 @@
|
||||
From 1e223b3027913e64e61278509390ed13bfe7affa Mon Sep 17 00:00:00 2001
|
||||
From: David Hewitt <davidmhewitt@users.noreply.github.com>
|
||||
Date: Fri, 22 Apr 2022 16:00:27 +0000
|
||||
Subject: [PATCH] Move panel-main-menu schema in house (#1409)
|
||||
|
||||
---
|
||||
data/gala.gschema.xml | 4 ++++
|
||||
src/WindowManager.vala | 15 +++++++++++----
|
||||
2 files changed, 15 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/data/gala.gschema.xml b/data/gala.gschema.xml
|
||||
index 97ba140f..684c1dd8 100644
|
||||
--- a/data/gala.gschema.xml
|
||||
+++ b/data/gala.gschema.xml
|
||||
@@ -155,6 +155,10 @@
|
||||
<default><![CDATA[['<Super><Shift>Tab']]]></default>
|
||||
<summary>Cycle to the next workspace to the right or to back to the first</summary>
|
||||
</key>
|
||||
+ <key type="as" name="panel-main-menu">
|
||||
+ <default><![CDATA[['<Super>space','<Alt>F2']]]></default>
|
||||
+ <summary>Open the applications menu</summary>
|
||||
+ </key>
|
||||
<key type="as" name="switch-input-source">
|
||||
<default><![CDATA[['<Alt>space']]]></default>
|
||||
<summary>Cycle to next keyboard layout</summary>
|
||||
diff --git a/src/WindowManager.vala b/src/WindowManager.vala
|
||||
index 90a67b18..2a38dc69 100644
|
||||
--- a/src/WindowManager.vala
|
||||
+++ b/src/WindowManager.vala
|
||||
@@ -242,15 +242,16 @@ namespace Gala {
|
||||
display.add_keybinding ("move-to-workspace-last", keybinding_settings, 0, (Meta.KeyHandlerFunc) handle_move_to_workspace_end);
|
||||
display.add_keybinding ("cycle-workspaces-next", keybinding_settings, 0, (Meta.KeyHandlerFunc) handle_cycle_workspaces);
|
||||
display.add_keybinding ("cycle-workspaces-previous", keybinding_settings, 0, (Meta.KeyHandlerFunc) handle_cycle_workspaces);
|
||||
+#if HAS_MUTTER41
|
||||
+ display.add_keybinding ("panel-main-menu", keybinding_settings, 0, (Meta.KeyHandlerFunc) handle_applications_menu);
|
||||
+#else
|
||||
+ Meta.KeyBinding.set_custom_handler ("panel-main-menu", (Meta.KeyHandlerFunc) handle_applications_menu);
|
||||
+#endif
|
||||
|
||||
display.overlay_key.connect (() => {
|
||||
launch_action ("overlay-action");
|
||||
});
|
||||
|
||||
- Meta.KeyBinding.set_custom_handler ("panel-main-menu", () => {
|
||||
- launch_action ("panel-main-menu-action");
|
||||
- });
|
||||
-
|
||||
Meta.KeyBinding.set_custom_handler ("toggle-recording", () => {
|
||||
launch_action ("toggle-recording-action");
|
||||
});
|
||||
@@ -436,6 +437,12 @@ namespace Gala {
|
||||
manager.get_workspace_by_index (index).activate (display.get_current_time ());
|
||||
}
|
||||
|
||||
+ [CCode (instance_pos = -1)]
|
||||
+ void handle_applications_menu (Meta.Display display, Meta.Window? window,
|
||||
+ Clutter.KeyEvent event, Meta.KeyBinding binding) {
|
||||
+ launch_action ("panel-main-menu-action");
|
||||
+ }
|
||||
+
|
||||
private void on_gesture_detected (Gesture gesture) {
|
||||
if (workspace_view.is_opened ()) {
|
||||
return;
|
240
SOURCES/60861a4.patch
Normal file
240
SOURCES/60861a4.patch
Normal file
@ -0,0 +1,240 @@
|
||||
From 60861a4c701d6318fcbed428988cf06f08c2b936 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Corentin=20No=C3=ABl?= <tintou@noel.tf>
|
||||
Date: Thu, 21 Apr 2022 22:28:36 +0000
|
||||
Subject: [PATCH] Update to latest mutter bindings and use Transition objects
|
||||
(#1406)
|
||||
|
||||
This allows for a better transition handling than setting properties.
|
||||
---
|
||||
src/ScreenshotManager.vala | 2 +-
|
||||
src/Widgets/DwellClickTimer.vala | 2 +-
|
||||
src/Widgets/PointerLocator.vala | 67 +++++++++++++++-----------------
|
||||
vapi/libmutter.vapi | 40 +++++++++----------
|
||||
4 files changed, 54 insertions(+), 57 deletions(-)
|
||||
|
||||
diff --git a/src/ScreenshotManager.vala b/src/ScreenshotManager.vala
|
||||
index 388fee1a8..19f294cd8 100644
|
||||
--- a/src/ScreenshotManager.vala
|
||||
+++ b/src/ScreenshotManager.vala
|
||||
@@ -418,7 +418,7 @@ namespace Gala {
|
||||
unowned Meta.CursorTracker cursor_tracker = wm.get_display ().get_cursor_tracker ();
|
||||
Graphene.Point coords = {};
|
||||
#if HAS_MUTTER40
|
||||
- cursor_tracker.get_pointer (coords, null);
|
||||
+ cursor_tracker.get_pointer (out coords, null);
|
||||
#else
|
||||
cursor_tracker.get_pointer (out coords.x, out coords.y, null);
|
||||
#endif
|
||||
diff --git a/src/Widgets/DwellClickTimer.vala b/src/Widgets/DwellClickTimer.vala
|
||||
index 8100295c9..ec64ca833 100644
|
||||
--- a/src/Widgets/DwellClickTimer.vala
|
||||
+++ b/src/Widgets/DwellClickTimer.vala
|
||||
@@ -75,7 +75,7 @@ namespace Gala {
|
||||
var tracker = wm.get_display ().get_cursor_tracker ();
|
||||
Graphene.Point coords = {};
|
||||
#if HAS_MUTTER40
|
||||
- tracker.get_pointer (coords, null);
|
||||
+ tracker.get_pointer (out coords, null);
|
||||
#else
|
||||
tracker.get_pointer (out coords.x, out coords.y, null);
|
||||
#endif
|
||||
diff --git a/src/Widgets/PointerLocator.vala b/src/Widgets/PointerLocator.vala
|
||||
index f7e508a90..77efef132 100644
|
||||
--- a/src/Widgets/PointerLocator.vala
|
||||
+++ b/src/Widgets/PointerLocator.vala
|
||||
@@ -37,8 +37,6 @@ namespace Gala {
|
||||
private Cairo.Pattern stroke_color;
|
||||
private Cairo.Pattern fill_color;
|
||||
|
||||
- private uint timeout_id;
|
||||
-
|
||||
public PointerLocator (WindowManager wm) {
|
||||
Object (wm: wm);
|
||||
}
|
||||
@@ -53,6 +51,10 @@ namespace Gala {
|
||||
update_surface ();
|
||||
set_size (WIDTH_PX * scaling_factor, HEIGHT_PX * scaling_factor);
|
||||
|
||||
+ var pivot = Graphene.Point ();
|
||||
+ pivot.init (0.5f, 0.5f);
|
||||
+ pivot_point = pivot;
|
||||
+
|
||||
Meta.MonitorManager.@get ().monitors_changed.connect (update_surface);
|
||||
}
|
||||
|
||||
@@ -114,23 +116,41 @@ namespace Gala {
|
||||
return;
|
||||
}
|
||||
|
||||
+ unowned var old_transition = get_transition ("circle");
|
||||
+ if (old_transition != null) {
|
||||
+ old_transition.stop ();
|
||||
+ }
|
||||
+
|
||||
+ var transition = new Clutter.TransitionGroup ();
|
||||
+ transition.remove_on_complete = true;
|
||||
+ var transition_x = new Clutter.PropertyTransition ("scale-x");
|
||||
+ var transition_y = new Clutter.PropertyTransition ("scale-y");
|
||||
+ var start_val = Value (typeof (double));
|
||||
+ start_val.set_double (1);
|
||||
+ var stop_val = Value (typeof (double));
|
||||
+ stop_val.set_double (0);
|
||||
+ transition_x.set_from_value (start_val);
|
||||
+ transition_y.set_from_value (start_val);
|
||||
+ transition_x.set_to_value (stop_val);
|
||||
+ transition_y.set_to_value (stop_val);
|
||||
+ transition.progress_mode = Clutter.AnimationMode.EASE_OUT_QUAD;
|
||||
+ transition.duration = ANIMATION_TIME_MS;
|
||||
+ transition.add_transition (transition_x);
|
||||
+ transition.add_transition (transition_y);
|
||||
+ transition.stopped.connect (() => { visible = false; });
|
||||
+ transition.started.connect (() => { visible = true; });
|
||||
+ add_transition ("circle", transition);
|
||||
+
|
||||
var rgba = InternalUtils.get_theme_accent_color ();
|
||||
|
||||
/* Don't use alpha from the stylesheet to ensure contrast */
|
||||
stroke_color = new Cairo.Pattern.rgb (rgba.red, rgba.green, rgba.blue);
|
||||
fill_color = new Cairo.Pattern.rgba (rgba.red, rgba.green, rgba.blue, BACKGROUND_OPACITY);
|
||||
|
||||
- if (timeout_id != 0) {
|
||||
- GLib.Source.remove (timeout_id);
|
||||
- timeout_id = 0;
|
||||
- visible = false;
|
||||
- restore_easing_state ();
|
||||
- }
|
||||
-
|
||||
- var tracker = wm.get_display ().get_cursor_tracker ();
|
||||
+ unowned var tracker = wm.get_display ().get_cursor_tracker ();
|
||||
Graphene.Point coords = {};
|
||||
#if HAS_MUTTER40
|
||||
- tracker.get_pointer (coords, null);
|
||||
+ tracker.get_pointer (out coords, null);
|
||||
#else
|
||||
tracker.get_pointer (out coords.x, out coords.y, null);
|
||||
#endif
|
||||
@@ -138,30 +158,7 @@ namespace Gala {
|
||||
x = coords.x - (width / 2);
|
||||
y = coords.y - (width / 2);
|
||||
|
||||
- var pivot = Graphene.Point ();
|
||||
- pivot.x = 0.5f;
|
||||
- pivot.y = 0.5f;
|
||||
- pivot_point = pivot;
|
||||
-
|
||||
- scale_x = 1;
|
||||
- scale_y = 1;
|
||||
-
|
||||
- visible = true;
|
||||
-
|
||||
- save_easing_state ();
|
||||
- set_easing_mode (Clutter.AnimationMode.EASE_OUT_QUAD);
|
||||
- set_easing_duration (ANIMATION_TIME_MS);
|
||||
-
|
||||
- timeout_id = Timeout.add (ANIMATION_TIME_MS, () => {
|
||||
- timeout_id = 0;
|
||||
-
|
||||
- restore_easing_state ();
|
||||
-
|
||||
- return GLib.Source.REMOVE;
|
||||
- });
|
||||
-
|
||||
- scale_x = 0;
|
||||
- scale_y = 0;
|
||||
+ transition.start ();
|
||||
}
|
||||
}
|
||||
}
|
||||
diff --git a/vapi/libmutter.vapi b/vapi/libmutter.vapi
|
||||
index 619476858..5edcddb19 100644
|
||||
--- a/vapi/libmutter.vapi
|
||||
+++ b/vapi/libmutter.vapi
|
||||
@@ -383,7 +383,7 @@ namespace Meta {
|
||||
protected CursorTracker ();
|
||||
public void get_hot (out int x, out int y);
|
||||
#if HAS_MUTTER40
|
||||
- public void get_pointer (Graphene.Point coords, out Clutter.ModifierType mods);
|
||||
+ public void get_pointer (out Graphene.Point coords, out Clutter.ModifierType mods);
|
||||
#else
|
||||
public void get_pointer (out int x, out int y, out Clutter.ModifierType mods);
|
||||
#endif
|
||||
@@ -789,19 +789,19 @@ namespace Meta {
|
||||
public unowned GLib.SList<Meta.StartupSequence> get_sequences ();
|
||||
[NoAccessorMethod]
|
||||
public Meta.Display display { owned get; construct; }
|
||||
- public signal void changed ([CCode (type = "gpointer")] Meta.StartupSequence object);
|
||||
+ public signal void changed (Meta.StartupSequence object);
|
||||
}
|
||||
[CCode (cheader_filename = "meta/meta-startup-notification.h", type_id = "meta_startup_sequence_get_type ()")]
|
||||
public class StartupSequence : GLib.Object {
|
||||
[CCode (has_construct_function = false)]
|
||||
protected StartupSequence ();
|
||||
- public unowned string get_application_id ();
|
||||
+ public unowned string? get_application_id ();
|
||||
public bool get_completed ();
|
||||
- public unowned string get_icon_name ();
|
||||
+ public unowned string? get_icon_name ();
|
||||
public unowned string get_id ();
|
||||
public unowned string get_name ();
|
||||
public uint64 get_timestamp ();
|
||||
- public unowned string get_wmclass ();
|
||||
+ public unowned string? get_wmclass ();
|
||||
public int get_workspace ();
|
||||
public string application_id { get; construct; }
|
||||
public string icon_name { get; construct; }
|
||||
@@ -862,7 +862,7 @@ namespace Meta {
|
||||
public void foreach_transient (Meta.WindowForeachFunc func);
|
||||
public Meta.Rectangle frame_rect_to_client_rect (Meta.Rectangle frame_rect);
|
||||
public Meta.Rectangle get_buffer_rect ();
|
||||
- public unowned string get_client_machine ();
|
||||
+ public unowned string? get_client_machine ();
|
||||
public Meta.WindowClientType get_client_type ();
|
||||
public unowned GLib.Object get_compositor_private ();
|
||||
public unowned string get_description ();
|
||||
@@ -871,32 +871,32 @@ namespace Meta {
|
||||
public unowned Cairo.Region? get_frame_bounds ();
|
||||
public Meta.Rectangle get_frame_rect ();
|
||||
public Meta.FrameType get_frame_type ();
|
||||
- public unowned Meta.Group get_group ();
|
||||
- public unowned string get_gtk_app_menu_object_path ();
|
||||
- public unowned string get_gtk_application_id ();
|
||||
- public unowned string get_gtk_application_object_path ();
|
||||
- public unowned string get_gtk_menubar_object_path ();
|
||||
- public unowned string get_gtk_theme_variant ();
|
||||
- public unowned string get_gtk_unique_bus_name ();
|
||||
- public unowned string get_gtk_window_object_path ();
|
||||
+ public unowned Meta.Group? get_group ();
|
||||
+ public unowned string? get_gtk_app_menu_object_path ();
|
||||
+ public unowned string? get_gtk_application_id ();
|
||||
+ public unowned string? get_gtk_application_object_path ();
|
||||
+ public unowned string? get_gtk_menubar_object_path ();
|
||||
+ public unowned string? get_gtk_theme_variant ();
|
||||
+ public unowned string? get_gtk_unique_bus_name ();
|
||||
+ public unowned string? get_gtk_window_object_path ();
|
||||
public bool get_icon_geometry (out Meta.Rectangle rect);
|
||||
public uint64 get_id ();
|
||||
public Meta.StackLayer get_layer ();
|
||||
public Meta.MaximizeFlags get_maximized ();
|
||||
public int get_monitor ();
|
||||
- public unowned string get_mutter_hints ();
|
||||
+ public unowned string? get_mutter_hints ();
|
||||
public int get_pid ();
|
||||
public unowned string get_role ();
|
||||
- public unowned string get_sandboxed_app_id ();
|
||||
+ public unowned string? get_sandboxed_app_id ();
|
||||
public uint get_stable_sequence ();
|
||||
- public unowned string get_startup_id ();
|
||||
+ public unowned string? get_startup_id ();
|
||||
public unowned Meta.Window? get_tile_match ();
|
||||
public unowned string get_title ();
|
||||
- public unowned Meta.Window get_transient_for ();
|
||||
+ public unowned Meta.Window? get_transient_for ();
|
||||
public uint32 get_user_time ();
|
||||
public Meta.WindowType get_window_type ();
|
||||
- public unowned string get_wm_class ();
|
||||
- public unowned string get_wm_class_instance ();
|
||||
+ public unowned string? get_wm_class ();
|
||||
+ public unowned string? get_wm_class_instance ();
|
||||
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);
|
59
SOURCES/890f78d.patch
Normal file
59
SOURCES/890f78d.patch
Normal file
@ -0,0 +1,59 @@
|
||||
From 890f78d7f9b3d6a651e9b65641bd3762405ac6ae Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Danielle=20For=C3=A9?= <daniel@elementary.io>
|
||||
Date: Sat, 14 May 2022 21:15:46 +0000
|
||||
Subject: [PATCH] WorkspaceClone: draw stroke with Cairo (#1419)
|
||||
|
||||
---
|
||||
src/Widgets/WorkspaceClone.vala | 35 ++++++++++++++++++++++++---------
|
||||
1 file changed, 26 insertions(+), 9 deletions(-)
|
||||
|
||||
diff --git a/src/Widgets/WorkspaceClone.vala b/src/Widgets/WorkspaceClone.vala
|
||||
index 40a40662..c2751801 100644
|
||||
--- a/src/Widgets/WorkspaceClone.vala
|
||||
+++ b/src/Widgets/WorkspaceClone.vala
|
||||
@@ -44,19 +44,36 @@ namespace Gala {
|
||||
public override void paint (Clutter.PaintContext context) {
|
||||
base.paint (context);
|
||||
|
||||
- unowned Cogl.Framebuffer fb = context.get_framebuffer ();
|
||||
-
|
||||
- pipeline.set_color4ub (0, 0, 0, 100);
|
||||
- fb.push_rectangle_clip (0, 0, width, height);
|
||||
- fb.draw_rectangle (pipeline, 0, 0, width, height);
|
||||
- fb.pop_clip ();
|
||||
+ var surface = new Cairo.ImageSurface (Cairo.Format.ARGB32, (int) width, (int) height);
|
||||
+
|
||||
+ var ctx = new Cairo.Context (surface);
|
||||
+ ctx.set_source_rgba (255, 255, 255, 255);
|
||||
+ ctx.rectangle (0, 0, (int) width, (int) height);
|
||||
+ ctx.set_operator (Cairo.Operator.SOURCE);
|
||||
+ ctx.stroke ();
|
||||
+ ctx.restore ();
|
||||
+ ctx.paint ();
|
||||
+
|
||||
+ try {
|
||||
+ var texture = new Cogl.Texture2D.from_data (
|
||||
+ context.get_framebuffer ().get_context (),
|
||||
+ (int) width, (int) height,
|
||||
+ Cogl.PixelFormat.BGRA_8888_PRE,
|
||||
+ surface.get_stride (), surface.get_data ()
|
||||
+ );
|
||||
+
|
||||
+ pipeline.set_layer_texture (0, texture);
|
||||
+ } catch (Error e) {
|
||||
+ debug (e.message);
|
||||
+ }
|
||||
|
||||
var color = Cogl.Color.from_4ub (255, 255, 255, 25);
|
||||
color.premultiply ();
|
||||
+
|
||||
pipeline.set_color (color);
|
||||
- fb.push_rectangle_clip (0.5f, 0.5f, width - 1, height - 1);
|
||||
- fb.draw_rectangle (pipeline, 0.5f, 0.5f, width - 1, height - 1);
|
||||
- fb.pop_clip ();
|
||||
+
|
||||
+ unowned var fb = context.get_framebuffer ();
|
||||
+ fb.draw_rectangle (pipeline, 0, 0, width, height);
|
||||
}
|
||||
#else
|
||||
public override void paint (Clutter.PaintContext context) {
|
201
SOURCES/9641704.patch
Normal file
201
SOURCES/9641704.patch
Normal file
@ -0,0 +1,201 @@
|
||||
From 9641704ec7f8097adc96616b1ff2a64290023d32 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Corentin=20No=C3=ABl?= <tintou@noel.tf>
|
||||
Date: Thu, 21 Apr 2022 22:33:24 +0000
|
||||
Subject: [PATCH] Use Clutter.Grab with Mutter 42 (#1407)
|
||||
|
||||
---
|
||||
lib/WindowManager.vala | 5 ++++-
|
||||
plugins/pip/SelectionArea.vala | 2 +-
|
||||
src/Widgets/MultitaskingView.vala | 2 +-
|
||||
src/Widgets/PixelPicker.vala | 2 +-
|
||||
src/Widgets/ScreenShield.vala | 2 +-
|
||||
src/Widgets/SelectionArea.vala | 2 +-
|
||||
src/Widgets/WindowOverview.vala | 2 +-
|
||||
src/Widgets/WindowSwitcher.vala | 2 +-
|
||||
src/WindowManager.vala | 18 ++++++++++++++----
|
||||
vapi/mutter-clutter.vapi | 2 +-
|
||||
10 files changed, 26 insertions(+), 13 deletions(-)
|
||||
|
||||
diff --git a/lib/WindowManager.vala b/lib/WindowManager.vala
|
||||
index 08f29eabc..199731ce9 100644
|
||||
--- a/lib/WindowManager.vala
|
||||
+++ b/lib/WindowManager.vala
|
||||
@@ -60,6 +60,9 @@ namespace Gala {
|
||||
* to end your modal mode again with {@link WindowManager.pop_modal}
|
||||
*/
|
||||
public class ModalProxy : Object {
|
||||
+#if HAS_MUTTER42
|
||||
+ public Clutter.Grab? grab { get; set; }
|
||||
+#endif
|
||||
/**
|
||||
* A function which is called whenever a keybinding is pressed. If you supply a custom
|
||||
* one you can filter out those that'd you like to be passed through and block all others.
|
||||
@@ -132,7 +135,7 @@ namespace Gala {
|
||||
* @return a {@link ModalProxy} which is needed to end the modal mode again and provides some
|
||||
* some basic control on the behavior of the window manager while it is in modal mode.
|
||||
*/
|
||||
- public abstract ModalProxy push_modal ();
|
||||
+ public abstract ModalProxy push_modal (Clutter.Actor actor);
|
||||
|
||||
/**
|
||||
* May exit the modal mode again, unless another component has called {@link push_modal}
|
||||
diff --git a/plugins/pip/SelectionArea.vala b/plugins/pip/SelectionArea.vala
|
||||
index 5eb1d2718..7a7e7b82e 100644
|
||||
--- a/plugins/pip/SelectionArea.vala
|
||||
+++ b/plugins/pip/SelectionArea.vala
|
||||
@@ -129,7 +129,7 @@ public class Gala.Plugins.PIP.SelectionArea : Clutter.Actor {
|
||||
wm.get_display ().set_cursor (Meta.Cursor.CROSSHAIR);
|
||||
grab_key_focus ();
|
||||
|
||||
- modal_proxy = wm.push_modal ();
|
||||
+ modal_proxy = wm.push_modal (this);
|
||||
}
|
||||
|
||||
private void get_selection_rectangle (out int x, out int y, out int width, out int height) {
|
||||
diff --git a/src/Widgets/MultitaskingView.vala b/src/Widgets/MultitaskingView.vala
|
||||
index ba1364ae0..cfaa9ff29 100644
|
||||
--- a/src/Widgets/MultitaskingView.vala
|
||||
+++ b/src/Widgets/MultitaskingView.vala
|
||||
@@ -592,7 +592,7 @@ namespace Gala {
|
||||
}
|
||||
|
||||
if (opening) {
|
||||
- modal_proxy = wm.push_modal ();
|
||||
+ modal_proxy = wm.push_modal (this);
|
||||
modal_proxy.set_keybinding_filter (keybinding_filter);
|
||||
|
||||
wm.background_group.hide ();
|
||||
diff --git a/src/Widgets/PixelPicker.vala b/src/Widgets/PixelPicker.vala
|
||||
index 0490f5764..649ee7661 100644
|
||||
--- a/src/Widgets/PixelPicker.vala
|
||||
+++ b/src/Widgets/PixelPicker.vala
|
||||
@@ -83,7 +83,7 @@ namespace Gala {
|
||||
wm.get_display ().set_cursor (Meta.Cursor.CROSSHAIR);
|
||||
grab_key_focus ();
|
||||
|
||||
- modal_proxy = wm.push_modal ();
|
||||
+ modal_proxy = wm.push_modal (this);
|
||||
}
|
||||
|
||||
public void get_point (out int x, out int y) {
|
||||
diff --git a/src/Widgets/ScreenShield.vala b/src/Widgets/ScreenShield.vala
|
||||
index 05e55aad4..ce873f8a7 100644
|
||||
--- a/src/Widgets/ScreenShield.vala
|
||||
+++ b/src/Widgets/ScreenShield.vala
|
||||
@@ -334,7 +334,7 @@ namespace Gala {
|
||||
wm.get_display ().get_cursor_tracker ().set_pointer_visible (false);
|
||||
visible = true;
|
||||
grab_key_focus ();
|
||||
- modal_proxy = wm.push_modal ();
|
||||
+ modal_proxy = wm.push_modal (this);
|
||||
|
||||
if (animate) {
|
||||
animate_and_lock (animation_time);
|
||||
diff --git a/src/Widgets/SelectionArea.vala b/src/Widgets/SelectionArea.vala
|
||||
index d3053f00a..f776c4b73 100644
|
||||
--- a/src/Widgets/SelectionArea.vala
|
||||
+++ b/src/Widgets/SelectionArea.vala
|
||||
@@ -127,7 +127,7 @@ namespace Gala {
|
||||
wm.get_display ().set_cursor (Meta.Cursor.CROSSHAIR);
|
||||
grab_key_focus ();
|
||||
|
||||
- modal_proxy = wm.push_modal ();
|
||||
+ modal_proxy = wm.push_modal (this);
|
||||
}
|
||||
|
||||
public void get_selection_rectangle (out int x, out int y, out int width, out int height) {
|
||||
diff --git a/src/Widgets/WindowOverview.vala b/src/Widgets/WindowOverview.vala
|
||||
index d17497ac0..ba55323ab 100644
|
||||
--- a/src/Widgets/WindowOverview.vala
|
||||
+++ b/src/Widgets/WindowOverview.vala
|
||||
@@ -157,7 +157,7 @@ namespace Gala {
|
||||
|
||||
grab_key_focus ();
|
||||
|
||||
- modal_proxy = wm.push_modal ();
|
||||
+ modal_proxy = wm.push_modal (this);
|
||||
modal_proxy.set_keybinding_filter (keybinding_filter);
|
||||
|
||||
visible = true;
|
||||
diff --git a/src/Widgets/WindowSwitcher.vala b/src/Widgets/WindowSwitcher.vala
|
||||
index 9297d314f..847f2ced3 100644
|
||||
--- a/src/Widgets/WindowSwitcher.vala
|
||||
+++ b/src/Widgets/WindowSwitcher.vala
|
||||
@@ -331,7 +331,7 @@ namespace Gala {
|
||||
}
|
||||
|
||||
void push_modal () {
|
||||
- modal_proxy = wm.push_modal ();
|
||||
+ modal_proxy = wm.push_modal (this);
|
||||
modal_proxy.set_keybinding_filter ((binding) => {
|
||||
// if it's not built-in, we can block it right away
|
||||
if (!binding.is_builtin ())
|
||||
diff --git a/src/WindowManager.vala b/src/WindowManager.vala
|
||||
index 0a23c9271..90a67b18c 100644
|
||||
--- a/src/WindowManager.vala
|
||||
+++ b/src/WindowManager.vala
|
||||
@@ -664,7 +664,7 @@ namespace Gala {
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*/
|
||||
- public ModalProxy push_modal () {
|
||||
+ public ModalProxy push_modal (Clutter.Actor actor) {
|
||||
var proxy = new ModalProxy ();
|
||||
|
||||
modal_stack.offer_head (proxy);
|
||||
@@ -674,14 +674,20 @@ namespace Gala {
|
||||
return proxy;
|
||||
|
||||
unowned Meta.Display display = get_display ();
|
||||
+#if !HAS_MUTTER42
|
||||
var time = display.get_current_time ();
|
||||
+#endif
|
||||
|
||||
update_input_area ();
|
||||
-#if !HAS_MUTTER42
|
||||
+#if HAS_MUTTER42
|
||||
+ proxy.grab = stage.grab (actor);
|
||||
+#else
|
||||
begin_modal (0, time);
|
||||
#endif
|
||||
|
||||
- display.disable_unredirect ();
|
||||
+ if (modal_stack.size == 1) {
|
||||
+ display.disable_unredirect ();
|
||||
+ }
|
||||
|
||||
return proxy;
|
||||
}
|
||||
@@ -695,6 +701,10 @@ namespace Gala {
|
||||
return;
|
||||
}
|
||||
|
||||
+#if HAS_MUTTER42
|
||||
+ proxy.grab.dismiss ();
|
||||
+#endif
|
||||
+
|
||||
if (is_modal ())
|
||||
return;
|
||||
|
||||
@@ -712,7 +722,7 @@ namespace Gala {
|
||||
* {@inheritDoc}
|
||||
*/
|
||||
public bool is_modal () {
|
||||
- return (modal_stack.size > 0);
|
||||
+ return !modal_stack.is_empty;
|
||||
}
|
||||
|
||||
/**
|
||||
diff --git a/vapi/mutter-clutter.vapi b/vapi/mutter-clutter.vapi
|
||||
index 0c364f83f..c2a63a093 100644
|
||||
--- a/vapi/mutter-clutter.vapi
|
||||
+++ b/vapi/mutter-clutter.vapi
|
||||
@@ -7412,7 +7412,7 @@ namespace Clutter {
|
||||
[Version (since = "0.4")]
|
||||
public unowned string get_title ();
|
||||
#if HAS_MUTTER42
|
||||
- public unowned Clutter.Grab grab (Clutter.Actor actor);
|
||||
+ public Clutter.Grab grab (Clutter.Actor actor);
|
||||
#endif
|
||||
#if !HAS_MUTTER42
|
||||
[Version (since = "1.2")]
|
33
SOURCES/e009541.patch
Normal file
33
SOURCES/e009541.patch
Normal file
@ -0,0 +1,33 @@
|
||||
From e0095415cdbfc369e6482e84b8aaffc6a04cafe7 Mon Sep 17 00:00:00 2001
|
||||
From: Vishal Rao <vishalrao@gmail.com>
|
||||
Date: Fri, 13 May 2022 00:46:38 +0530
|
||||
Subject: [PATCH] Fix initial alt-tab switcher indicator visibility. (#1417)
|
||||
|
||||
---
|
||||
src/Widgets/WindowSwitcher.vala | 6 +++---
|
||||
1 file changed, 3 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/src/Widgets/WindowSwitcher.vala b/src/Widgets/WindowSwitcher.vala
|
||||
index c1521e52..42d9416f 100644
|
||||
--- a/src/Widgets/WindowSwitcher.vala
|
||||
+++ b/src/Widgets/WindowSwitcher.vala
|
||||
@@ -418,7 +418,7 @@ namespace Gala {
|
||||
// are here too early, in which case all the children are at
|
||||
// (0|0), so we can easily check for that and come back later
|
||||
if (container.get_n_children () > 1
|
||||
- && container.get_child_at_index (1).allocation.x1 < 1) {
|
||||
+ && container.get_child_at_index (1).x < 1) {
|
||||
|
||||
GLib.Timeout.add (FIX_TIMEOUT_INTERVAL, () => {
|
||||
update_indicator_position (initial);
|
||||
@@ -427,8 +427,8 @@ namespace Gala {
|
||||
return;
|
||||
}
|
||||
|
||||
- float x, y;
|
||||
- cur_icon.allocation.get_origin (out x, out y);
|
||||
+ float x = cur_icon.x;
|
||||
+ float y = cur_icon.y;
|
||||
|
||||
if (initial) {
|
||||
indicator.visible = true;
|
179
SOURCES/e86a951.patch
Normal file
179
SOURCES/e86a951.patch
Normal file
@ -0,0 +1,179 @@
|
||||
From e86a9518c24b742118b8624e34f84cb0ef76c7bd Mon Sep 17 00:00:00 2001
|
||||
From: David Hewitt <davidmhewitt@users.noreply.github.com>
|
||||
Date: Sat, 23 Apr 2022 22:26:40 +0000
|
||||
Subject: [PATCH] Move screenshot shortcuts in-house (#1411)
|
||||
|
||||
---
|
||||
daemon/MenuDaemon.vala | 6 ++--
|
||||
data/gala.gschema.xml | 24 +++++++++++++
|
||||
src/WindowManager.vala | 78 ++++++++++++++++++++++++++++++++++++++----
|
||||
3 files changed, 99 insertions(+), 9 deletions(-)
|
||||
|
||||
diff --git a/daemon/MenuDaemon.vala b/daemon/MenuDaemon.vala
|
||||
index 7918d4c72..32bc347a5 100644
|
||||
--- a/daemon/MenuDaemon.vala
|
||||
+++ b/daemon/MenuDaemon.vala
|
||||
@@ -60,11 +60,11 @@ namespace Gala {
|
||||
ulong on_visible_workspace_sid = 0U;
|
||||
|
||||
private static GLib.Settings keybind_settings;
|
||||
- private static GLib.Settings media_keys_settings;
|
||||
+ private static GLib.Settings gala_keybind_settings;
|
||||
|
||||
static construct {
|
||||
keybind_settings = new GLib.Settings ("org.gnome.desktop.wm.keybindings");
|
||||
- media_keys_settings = new GLib.Settings ("org.gnome.settings-daemon.plugins.media-keys");
|
||||
+ gala_keybind_settings = new GLib.Settings ("org.pantheon.desktop.gala.keybindings");
|
||||
}
|
||||
|
||||
[DBus (visible = false)]
|
||||
@@ -269,7 +269,7 @@ namespace Gala {
|
||||
move_left_accellabel.accel_string = keybind_settings.get_strv ("move-to-workspace-left")[0];
|
||||
}
|
||||
|
||||
- screenshot_accellabel.accel_string = media_keys_settings.get_strv ("window-screenshot")[0];
|
||||
+ screenshot_accellabel.accel_string = gala_keybind_settings.get_strv ("window-screenshot")[0];
|
||||
|
||||
close.visible = Gala.WindowFlags.CAN_CLOSE in flags;
|
||||
if (close.visible) {
|
||||
diff --git a/data/gala.gschema.xml b/data/gala.gschema.xml
|
||||
index 684c1dd80..1d0b2b00e 100644
|
||||
--- a/data/gala.gschema.xml
|
||||
+++ b/data/gala.gschema.xml
|
||||
@@ -159,6 +159,30 @@
|
||||
<default><![CDATA[['<Super>space','<Alt>F2']]]></default>
|
||||
<summary>Open the applications menu</summary>
|
||||
</key>
|
||||
+ <key name="screenshot" type="as">
|
||||
+ <default><![CDATA[['Print']]]></default>
|
||||
+ <summary>Take a screenshot</summary>
|
||||
+ </key>
|
||||
+ <key name="window-screenshot" type="as">
|
||||
+ <default><![CDATA[['<Alt>Print']]]></default>
|
||||
+ <summary>Take a screenshot of a window</summary>
|
||||
+ </key>
|
||||
+ <key name="area-screenshot" type="as">
|
||||
+ <default><![CDATA[['<Shift>Print']]]></default>
|
||||
+ <summary>Take a screenshot of an area</summary>
|
||||
+ </key>
|
||||
+ <key name="screenshot-clip" type="as">
|
||||
+ <default><![CDATA[['<Control>Print']]]></default>
|
||||
+ <summary>Copy a screenshot to clipboard</summary>
|
||||
+ </key>
|
||||
+ <key name="window-screenshot-clip" type="as">
|
||||
+ <default><![CDATA[['<Control><Alt>Print']]]></default>
|
||||
+ <summary>Copy a screenshot of a window to clipboard</summary>
|
||||
+ </key>
|
||||
+ <key name="area-screenshot-clip" type="as">
|
||||
+ <default><![CDATA[['<Control><Shift>Print']]]></default>
|
||||
+ <summary>Copy a screenshot of an area to clipboard</summary>
|
||||
+ </key>
|
||||
<key type="as" name="switch-input-source">
|
||||
<default><![CDATA[['<Alt>space']]]></default>
|
||||
<summary>Cycle to next keyboard layout</summary>
|
||||
diff --git a/src/WindowManager.vala b/src/WindowManager.vala
|
||||
index 2a38dc697..91dbaeab0 100644
|
||||
--- a/src/WindowManager.vala
|
||||
+++ b/src/WindowManager.vala
|
||||
@@ -248,6 +248,15 @@ namespace Gala {
|
||||
Meta.KeyBinding.set_custom_handler ("panel-main-menu", (Meta.KeyHandlerFunc) handle_applications_menu);
|
||||
#endif
|
||||
|
||||
+#if HAS_MUTTER42
|
||||
+ display.add_keybinding ("screenshot", keybinding_settings, 0, (Meta.KeyHandlerFunc) handle_screenshot);
|
||||
+ display.add_keybinding ("window-screenshot", keybinding_settings, 0, (Meta.KeyHandlerFunc) handle_screenshot);
|
||||
+ display.add_keybinding ("area-screenshot", keybinding_settings, 0, (Meta.KeyHandlerFunc) handle_screenshot);
|
||||
+ display.add_keybinding ("screenshot-clip", keybinding_settings, 0, (Meta.KeyHandlerFunc) handle_screenshot);
|
||||
+ display.add_keybinding ("window-screenshot-clip", keybinding_settings, 0, (Meta.KeyHandlerFunc) handle_screenshot);
|
||||
+ display.add_keybinding ("area-screenshot-clip", keybinding_settings, 0, (Meta.KeyHandlerFunc) handle_screenshot);
|
||||
+#endif
|
||||
+
|
||||
display.overlay_key.connect (() => {
|
||||
launch_action ("overlay-action");
|
||||
});
|
||||
@@ -443,6 +452,31 @@ namespace Gala {
|
||||
launch_action ("panel-main-menu-action");
|
||||
}
|
||||
|
||||
+ [CCode (instance_pos = -1)]
|
||||
+ void handle_screenshot (Meta.Display display, Meta.Window? window,
|
||||
+ Clutter.KeyEvent event, Meta.KeyBinding binding) {
|
||||
+ switch (binding.get_name ()) {
|
||||
+ case "screenshot":
|
||||
+ screenshot_screen.begin ();
|
||||
+ break;
|
||||
+ case "area-screenshot":
|
||||
+ screenshot_area.begin ();
|
||||
+ break;
|
||||
+ case "window-screenshot":
|
||||
+ screenshot_current_window.begin ();
|
||||
+ break;
|
||||
+ case "screenshot-clip":
|
||||
+ screenshot_screen.begin (true);
|
||||
+ break;
|
||||
+ case "area-screenshot-clip":
|
||||
+ screenshot_area.begin (true);
|
||||
+ break;
|
||||
+ case "window-screenshot-clip":
|
||||
+ screenshot_current_window.begin (true);
|
||||
+ break;
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
private void on_gesture_detected (Gesture gesture) {
|
||||
if (workspace_view.is_opened ()) {
|
||||
return;
|
||||
@@ -2115,15 +2149,47 @@ namespace Gala {
|
||||
return info;
|
||||
}
|
||||
|
||||
- private async void screenshot_current_window () {
|
||||
+ private string generate_screenshot_filename () {
|
||||
+ var date_time = new GLib.DateTime.now_local ().format ("%Y-%m-%d %H.%M.%S");
|
||||
+ /// TRANSLATORS: %s represents a timestamp here
|
||||
+ return _("Screenshot from %s").printf (date_time);
|
||||
+ }
|
||||
+
|
||||
+ private async void screenshot_current_window (bool clipboard = false) {
|
||||
+ try {
|
||||
+ string filename = clipboard ? "" : generate_screenshot_filename ();
|
||||
+ bool success = false;
|
||||
+ string filename_used = "";
|
||||
+ unowned var screenshot_manager = ScreenshotManager.init (this);
|
||||
+ yield screenshot_manager.screenshot_window (true, false, true, filename, out success, out filename_used);
|
||||
+ } catch (Error e) {
|
||||
+ // Ignore this error
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
+ private async void screenshot_area (bool clipboard = false) {
|
||||
+ try {
|
||||
+ string filename = clipboard ? "" : generate_screenshot_filename ();
|
||||
+ bool success = false;
|
||||
+ string filename_used = "";
|
||||
+
|
||||
+ unowned var screenshot_manager = ScreenshotManager.init (this);
|
||||
+
|
||||
+ int x, y, w, h;
|
||||
+ yield screenshot_manager.select_area (out x, out y, out w, out h);
|
||||
+ yield screenshot_manager.screenshot_area (x, y, w, h, true, filename, out success, out filename_used);
|
||||
+ } catch (Error e) {
|
||||
+ // Ignore this error
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
+ private async void screenshot_screen (bool clipboard = false) {
|
||||
try {
|
||||
- var date_time = new GLib.DateTime.now_local ().format ("%Y-%m-%d %H.%M.%S");
|
||||
- /// TRANSLATORS: %s represents a timestamp here
|
||||
- string file_name = _("Screenshot from %s").printf (date_time);
|
||||
+ string filename = clipboard ? "" : generate_screenshot_filename ();
|
||||
bool success = false;
|
||||
string filename_used = "";
|
||||
- var screenshot_manager = ScreenshotManager.init (this);
|
||||
- yield screenshot_manager.screenshot_window (true, false, true, file_name, out success, out filename_used);
|
||||
+ unowned var screenshot_manager = ScreenshotManager.init (this);
|
||||
+ yield screenshot_manager.screenshot (false, true, filename, out success, out filename_used);
|
||||
} catch (Error e) {
|
||||
// Ignore this error
|
||||
}
|
24
SOURCES/f9008e4.patch
Normal file
24
SOURCES/f9008e4.patch
Normal file
@ -0,0 +1,24 @@
|
||||
From f9008e4f7a028b2f5fd4c09341a0af857b9759b6 Mon Sep 17 00:00:00 2001
|
||||
From: Vishal Rao <vishalrao@gmail.com>
|
||||
Date: Fri, 22 Apr 2022 17:11:30 +0530
|
||||
Subject: [PATCH] WindowSwitcher: Fix missing focus on selected window upon
|
||||
release key with Mutter 42 (#1408)
|
||||
|
||||
---
|
||||
src/Widgets/WindowSwitcher.vala | 2 ++
|
||||
1 file changed, 2 insertions(+)
|
||||
|
||||
diff --git a/src/Widgets/WindowSwitcher.vala b/src/Widgets/WindowSwitcher.vala
|
||||
index 847f2ced..c1521e52 100644
|
||||
--- a/src/Widgets/WindowSwitcher.vala
|
||||
+++ b/src/Widgets/WindowSwitcher.vala
|
||||
@@ -344,7 +344,9 @@ namespace Gala {
|
||||
|| name == "switch-windows" || name == "switch-windows-backward");
|
||||
});
|
||||
|
||||
+#if !HAS_MUTTER42
|
||||
grab_key_focus ();
|
||||
+#endif
|
||||
}
|
||||
|
||||
void close_switcher (uint32 time, bool cancel = false) {
|
29
SOURCES/fc838d7.patch
Normal file
29
SOURCES/fc838d7.patch
Normal file
@ -0,0 +1,29 @@
|
||||
From fc838d7add2c42f8d7d9d4a09478688edce60b90 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Danielle=20For=C3=A9?= <daniel@elementary.io>
|
||||
Date: Mon, 16 May 2022 08:07:39 +0000
|
||||
Subject: [PATCH] MultitaskingView: Remove key_focus_out override (#1418)
|
||||
|
||||
---
|
||||
src/Widgets/MultitaskingView.vala | 9 ---------
|
||||
1 file changed, 9 deletions(-)
|
||||
|
||||
diff --git a/src/Widgets/MultitaskingView.vala b/src/Widgets/MultitaskingView.vala
|
||||
index cfaa9ff2..042adcd1 100644
|
||||
--- a/src/Widgets/MultitaskingView.vala
|
||||
+++ b/src/Widgets/MultitaskingView.vala
|
||||
@@ -164,15 +164,6 @@ namespace Gala {
|
||||
}
|
||||
}
|
||||
|
||||
- /**
|
||||
- * We generally assume that when the key-focus-out signal is emitted
|
||||
- * a different component was opened, so we close in that case.
|
||||
- */
|
||||
- public override void key_focus_out () {
|
||||
- if (opened && !contains (get_stage ().key_focus))
|
||||
- toggle ();
|
||||
- }
|
||||
-
|
||||
/**
|
||||
* Scroll through workspaces with the mouse wheel. Smooth scrolling is handled by
|
||||
* GestureTracker.
|
401
SPECS/gala.spec
Normal file
401
SPECS/gala.spec
Normal file
@ -0,0 +1,401 @@
|
||||
## START: Set by rpmautospec
|
||||
## (rpmautospec version 0.2.5)
|
||||
%define autorelease(e:s:pb:) %{?-p:0.}%{lua:
|
||||
release_number = 3;
|
||||
base_release_number = tonumber(rpm.expand("%{?-b*}%{!?-b:1}"));
|
||||
print(release_number + base_release_number - 1);
|
||||
}%{?-e:.%{-e*}}%{?-s:.%{-s*}}%{?dist}
|
||||
## END: Set by rpmautospec
|
||||
|
||||
%global __provides_exclude_from ^%{_libdir}/gala/.*\\.so$
|
||||
|
||||
Name: gala
|
||||
Summary: Gala window manager
|
||||
Version: 6.3.1
|
||||
Release: %autorelease
|
||||
License: GPLv3+
|
||||
|
||||
URL: https://github.com/elementary/gala
|
||||
Source0: %{url}/archive/%{version}/%{name}-%{version}.tar.gz
|
||||
|
||||
# patch some default settings to better match Fedora
|
||||
Patch0: 0000-Modify-default-settings-for-Fedora.patch
|
||||
|
||||
# upstream patches for better support of mutter 42 / libmutter-10
|
||||
Patch1: %{url}/commit/60861a4.patch
|
||||
Patch2: %{url}/commit/9641704.patch
|
||||
Patch3: %{url}/commit/f9008e4.patch
|
||||
Patch4: %{url}/commit/1e223b3.patch
|
||||
Patch5: %{url}/commit/e86a951.patch
|
||||
Patch6: %{url}/commit/e009541.patch
|
||||
Patch7: %{url}/commit/890f78d.patch
|
||||
Patch8: %{url}/commit/fc838d7.patch
|
||||
|
||||
BuildRequires: desktop-file-utils
|
||||
BuildRequires: gettext
|
||||
BuildRequires: libappstream-glib
|
||||
BuildRequires: meson >= 0.50.0
|
||||
BuildRequires: vala >= 0.28.0
|
||||
|
||||
BuildRequires: mesa-libEGL-devel
|
||||
|
||||
BuildRequires: pkgconfig(clutter-1.0) >= 1.12.0
|
||||
BuildRequires: pkgconfig(clutter-gtk-1.0)
|
||||
BuildRequires: pkgconfig(gee-0.8)
|
||||
BuildRequires: pkgconfig(gexiv2)
|
||||
BuildRequires: pkgconfig(glib-2.0) >= 2.44.0
|
||||
BuildRequires: pkgconfig(gnome-desktop-3.0)
|
||||
BuildRequires: pkgconfig(gnome-settings-daemon) >= 3.15.2
|
||||
BuildRequires: pkgconfig(granite) >= 5.4.0
|
||||
BuildRequires: pkgconfig(gtk+-3.0)
|
||||
BuildRequires: pkgconfig(libbamf3)
|
||||
BuildRequires: pkgconfig(libcanberra)
|
||||
BuildRequires: pkgconfig(mutter-clutter-8)
|
||||
BuildRequires: pkgconfig(mutter-cogl-8)
|
||||
BuildRequires: pkgconfig(mutter-cogl-pango-8)
|
||||
|
||||
Requires: %{name}-libs%{?_isa} = %{version}-%{release}
|
||||
|
||||
# gala provides a generic icon (apps/multitasking-view)
|
||||
Requires: hicolor-icon-theme
|
||||
|
||||
# gala's multitasking view is activated via dbus
|
||||
Requires: dbus-tools
|
||||
|
||||
# gala relies on the new notification server
|
||||
Requires: elementary-notifications
|
||||
|
||||
%description
|
||||
Gala is Pantheon's Window Manager, part of the elementary project.
|
||||
|
||||
|
||||
%package libs
|
||||
Summary: Gala window manager libraries
|
||||
|
||||
%description libs
|
||||
Gala is Pantheon's Window Manager, part of the elementary project.
|
||||
|
||||
This package contains the shared libraries.
|
||||
|
||||
|
||||
%package devel
|
||||
Summary: Gala window manager development files
|
||||
Requires: %{name}-libs%{?_isa} = %{version}-%{release}
|
||||
|
||||
%description devel
|
||||
Gala is Pantheon's Window Manager, part of the elementary project.
|
||||
|
||||
This package contains the development headers.
|
||||
|
||||
|
||||
%prep
|
||||
%autosetup -p1
|
||||
|
||||
|
||||
%build
|
||||
%meson -Dsystemd=false
|
||||
%meson_build
|
||||
|
||||
|
||||
%install
|
||||
%meson_install
|
||||
|
||||
%find_lang gala
|
||||
|
||||
|
||||
%check
|
||||
desktop-file-validate \
|
||||
%{buildroot}/%{_sysconfdir}/xdg/autostart/gala-daemon.desktop
|
||||
|
||||
desktop-file-validate \
|
||||
%{buildroot}/%{_datadir}/applications/gala*.desktop
|
||||
|
||||
appstream-util validate-relax --nonet \
|
||||
%{buildroot}/%{_datadir}/metainfo/%{name}.appdata.xml
|
||||
|
||||
|
||||
%files -f gala.lang
|
||||
%config(noreplace) %{_sysconfdir}/xdg/autostart/gala-daemon.desktop
|
||||
|
||||
%{_bindir}/gala
|
||||
%{_bindir}/gala-daemon
|
||||
|
||||
%{_libdir}/gala/plugins/*
|
||||
|
||||
%{_datadir}/applications/gala*.desktop
|
||||
%{_datadir}/glib-2.0/schemas/20_elementary.pantheon.wm.gschema.override
|
||||
%{_datadir}/glib-2.0/schemas/org.pantheon.desktop.gala.gschema.xml
|
||||
%{_datadir}/icons/hicolor/*/apps/multitasking-view.svg
|
||||
%{_datadir}/metainfo/%{name}.appdata.xml
|
||||
|
||||
%files libs
|
||||
%doc AUTHORS README.md
|
||||
%license COPYING
|
||||
|
||||
%dir %{_libdir}/gala
|
||||
%dir %{_libdir}/gala/plugins
|
||||
|
||||
%{_libdir}/libgala.so.0*
|
||||
|
||||
%files devel
|
||||
%{_includedir}/gala/
|
||||
|
||||
%{_libdir}/libgala.so
|
||||
%{_libdir}/pkgconfig/gala.pc
|
||||
|
||||
%{_datadir}/vala/vapi/gala.deps
|
||||
%{_datadir}/vala/vapi/gala.vapi
|
||||
|
||||
|
||||
%changelog
|
||||
* Thu 16 Mar 2023 Sofia Boldyreva <mooresofia81@gmail.com> 6.3.1-3
|
||||
- Replaced required verosion of mutter-clutter, mutter-cogl, mutter-cogl-pango from 10 to 8 to match AlmaLinux 9 repositories
|
||||
|
||||
* Wed May 18 2022 Fabio Valentini <decathorpe@gmail.com> 6.3.1-3
|
||||
- Add even more upstream patches for better support of mutter 42
|
||||
|
||||
* Thu May 05 2022 Fabio Valentini <decathorpe@gmail.com> 6.3.1-2
|
||||
- Add upstream patches for better support of mutter 42 / libmutter-10
|
||||
|
||||
* Thu Apr 07 2022 Fabio Valentini <decathorpe@gmail.com> 6.3.1-1
|
||||
- Update to version 6.3.1; Fixes RHBZ#2072919
|
||||
|
||||
* Mon Mar 14 2022 Fabio Valentini <decathorpe@gmail.com> 6.3.0-1
|
||||
- Update to version 6.3.0; Fixes RHBZ#2026339
|
||||
|
||||
* Thu Jan 20 2022 Fedora Release Engineering <releng@fedoraproject.org> 6.2.1-3
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
|
||||
|
||||
* Tue Jan 18 2022 Fabio Valentini <decathorpe@gmail.com> 6.2.1-2
|
||||
- Include upstream PR for mutter 42 / libmutter-10 support
|
||||
|
||||
* Sat Oct 30 2021 Fabio Valentini <decathorpe@gmail.com> 6.2.1-1
|
||||
- Update to version 6.2.1; Fixes RHBZ#2009381
|
||||
|
||||
* Tue Sep 28 2021 Fabio Valentini <decathorpe@gmail.com> 6.2.0-1
|
||||
- Update to version 6.2.0; Fixes RHBZ#2007101
|
||||
|
||||
* Sat Aug 14 2021 Fabio Valentini <decathorpe@gmail.com> 6.0.1-1
|
||||
- Update to version 6.0.1; Fixes RHBZ#1992897
|
||||
|
||||
* Wed Jul 21 2021 Fedora Release Engineering <releng@fedoraproject.org> 6.0.0-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
|
||||
|
||||
* Thu Jul 15 2021 Fabio Valentini <decathorpe@gmail.com> 6.0.0-1
|
||||
- Update to version 6.0.0
|
||||
|
||||
* Thu Feb 18 2021 Fabio Valentini <decathorpe@gmail.com> - 3.3.2-8.20210218git625d40c
|
||||
- Update override settings for new wingpanel binary name.
|
||||
|
||||
* Fri Feb 12 2021 Fabio Valentini <decathorpe@gmail.com> - 3.3.2-7.20210218.git625d40c
|
||||
- Bump to commit 625d40c.
|
||||
- Rebuilt for granite 6 soname bump.
|
||||
|
||||
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 3.3.2-6.git88e3294
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
|
||||
|
||||
* Fri Oct 30 2020 Fabio Valentini <decathorpe@gmail.com> - 3.3.2-5.git88e3294
|
||||
- Bump to commit 88e3294 on the tintou/mutter-7 branch.
|
||||
|
||||
* Sat Aug 29 2020 Fabio Valentini <decathorpe@gmail.com> - 3.3.2-4
|
||||
- Initial port to mutter 3.38 (uglyyy hacks inside).
|
||||
|
||||
* Sat Aug 01 2020 Fedora Release Engineering <releng@fedoraproject.org> - 3.3.2-3
|
||||
- Second attempt - Rebuilt for
|
||||
https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
|
||||
|
||||
* Mon Jul 27 2020 Fedora Release Engineering <releng@fedoraproject.org> - 3.3.2-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
|
||||
|
||||
* Thu May 07 2020 Fabio Valentini <decathorpe@gmail.com> - 3.3.2-1
|
||||
- Update to version 3.3.2.
|
||||
|
||||
* Sat Apr 25 2020 Fabio Valentini <decathorpe@gmail.com> - 3.3.1-1
|
||||
- Update to version 3.3.1.
|
||||
|
||||
* Fri Apr 03 2020 Fabio Valentini <decathorpe@gmail.com> - 3.3.0-1
|
||||
- Update to version 3.3.0.
|
||||
|
||||
* Tue Jan 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 3.2.0-3
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
|
||||
|
||||
* Thu Jan 16 2020 Kalev Lember <klember@redhat.com> - 3.2.0-2
|
||||
- Rebuilt for libgnome-desktop soname bump
|
||||
|
||||
* Wed Jan 08 2020 Fabio Valentini <decathorpe@gmail.com> - 3.2.0-1
|
||||
- Update to version 3.2.0.
|
||||
|
||||
* Thu Jul 25 2019 Fedora Release Engineering <releng@fedoraproject.org> - 0.3.1-0.31.20190712.gita790d2d
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
|
||||
|
||||
* Sun Jul 21 2019 Kalev Lember <klember@redhat.com> - 0.3.1-0.30.20190712.gita790d2d
|
||||
- Rebuilt for libgnome-desktop soname bump
|
||||
|
||||
* Tue Jul 16 2019 Fabio Valentini <decathorpe@gmail.com> - 0.3.1-0.29.20190712.gita790d2d
|
||||
- Bump to commit a790d2d.
|
||||
|
||||
* Wed Jul 03 2019 Fabio Valentini <decathorpe@gmail.com> - 0.3.1-0.28.20190701.git5f1dbf1
|
||||
- Bump to commit 5f1dbf1.
|
||||
|
||||
* Sat Jun 01 2019 Fabio Valentini <decathorpe@gmail.com> - 0.3.1-0.27.20190531.git1024813
|
||||
- Bump to commit 1024813.
|
||||
|
||||
* Mon May 20 2019 Fabio Valentini <decathorpe@gmail.com> - 0.3.1-0.26.20190514.git3ae100d
|
||||
- Bump to commit 3ae100d.
|
||||
|
||||
* Sat May 11 2019 Fabio Valentini <decathorpe@gmail.com> - 0.3.1-0.25.20190511.git4459c59
|
||||
- Bump to commit 4459c59.
|
||||
|
||||
* Tue Apr 16 2019 Adam Williamson <awilliam@redhat.com> - 0.3.1-0.24.20190307.git2c610b3
|
||||
- Rebuild with Meson fix for #1699099
|
||||
|
||||
* Wed Mar 13 2019 Fabio Valentini <decathorpe@gmail.com> - 0.3.1-0.23.20190307.git2c610b3
|
||||
- Bump to commit 2c610b3.
|
||||
|
||||
* Sun Mar 03 2019 Fabio Valentini <decathorpe@gmail.com> - 0.3.1-0.22.20190302.git395670e
|
||||
- Bump to commit 395670e.
|
||||
|
||||
* Tue Feb 12 2019 Fabio Valentini <decathorpe@gmail.com> - 0.3.1-0.21.20190128.git1a96644
|
||||
- Bump to commit 1a96644.
|
||||
|
||||
* Thu Jan 31 2019 Fedora Release Engineering <releng@fedoraproject.org> - 0.3.1-0.20.20190128.git6654145
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
|
||||
|
||||
* Tue Jan 29 2019 Fabio Valentini <decathorpe@gmail.com> - 0.3.1-0.19.20190128.git6654145
|
||||
- Bump to commit 6654145.
|
||||
|
||||
* Sun Dec 16 2018 Fabio Valentini <decathorpe@gmail.com> - 0.3.1-0.18.20181216.git7f1e392
|
||||
- Bump to commit 7f1e392.
|
||||
|
||||
* Fri Dec 07 2018 Fabio Valentini <decathorpe@gmail.com> - 0.3.1-0.17.20181205.git66a95e0
|
||||
- Bump to commit 66a95e0.
|
||||
|
||||
* Mon Nov 26 2018 Fabio Valentini <decathorpe@gmail.com> - 0.3.1-0.16.20181122.gitcf8d455
|
||||
- Bump to commit cf8d455.
|
||||
|
||||
* Sat Oct 20 2018 Fabio Valentini <decathorpe@gmail.com> - 0.3.1-0.15.20181020.gita1bad26
|
||||
- Bump to commit a1bad26.
|
||||
|
||||
* Mon Oct 08 2018 Fabio Valentini <decathorpe@gmail.com> - 0.3.1-0.14.20181003.gitfeffbf8
|
||||
- Make sure the right version of mutter is pulled in for builds.
|
||||
|
||||
* Mon Oct 08 2018 Fabio Valentini <decathorpe@gmail.com> - 0.3.1-0.13.20181003.gitfeffbf8
|
||||
- Bump to commit feffbf8.
|
||||
|
||||
* Fri Sep 28 2018 Fabio Valentini <decathorpe@gmail.com> - 0.3.1-0.12.20180918.git9747bd6
|
||||
- Bump to commit 9747bd6.
|
||||
|
||||
* Wed Sep 12 2018 Fabio Valentini <decathorpe@gmail.com> - 0.3.1-0.11.20180910.git1970bac
|
||||
- Bump to commit 1970bac.
|
||||
|
||||
* Wed Sep 12 2018 Fabio Valentini <decathorpe@gmail.com> - 0.3.1-0.10.20180910.git2995cd6
|
||||
- Bump to commit 2995cd6.
|
||||
|
||||
* Sun Sep 09 2018 Fabio Valentini <decathorpe@gmail.com> - 0.3.1-0.9.20180729.git15f722a
|
||||
- Use mutter328 compat package for now.
|
||||
|
||||
* Thu Aug 02 2018 Fabio Valentini <decathorpe@gmail.com> - 0.3.1-0.8.20180729.git15f722a
|
||||
- Bump to commit 15f722a.
|
||||
|
||||
* Fri Jul 13 2018 Fabio Valentini <decathorpe@gmail.com> - 0.3.1-0.7.20180710.git9502677
|
||||
- Bump to commit 9502677.
|
||||
|
||||
* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 0.3.1-0.6.20180607.git985baa0
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
|
||||
|
||||
* Wed Jun 13 2018 Fabio Valentini <decathorpe@gmail.com> - 0.3.1-0.5.20180607.git985baa0
|
||||
- Rebuild for granite5 soname bump.
|
||||
|
||||
* Wed Jun 13 2018 Fabio Valentini <decathorpe@gmail.com> - 0.3.1-0.4.20180607.git985baa0
|
||||
- Bump to commit 985baa0 and update default settings overrides.
|
||||
|
||||
* Sun Jun 03 2018 Fabio Valentini <decathorpe@gmail.com> - 0.3.1-0.3.20180603.git3661cbd
|
||||
- Bump to commit 3661cbd.
|
||||
|
||||
* Tue May 01 2018 Fabio Valentini <decathorpe@gmail.com> - 0.3.1-0.2.20180430.gitf02b776
|
||||
- Bump to commit f02b776.
|
||||
|
||||
* Sun Mar 18 2018 Fabio Valentini <decathorpe@gmail.com> - 0.3.1-0.1.20180318.gita71e8c1
|
||||
- Bump to version 0.3.1 snapshots, commit a71e8c1.
|
||||
- Remove obsolete ldconfig scriptlets.
|
||||
|
||||
* Thu Mar 15 2018 Fabio Valentini <decathorpe@gmail.com> - 0.3.0-2.20180314.git22f0d95
|
||||
- Update to commit 22f0d95.
|
||||
|
||||
* Mon Mar 12 2018 Fabio Valentini <decathorpe@gmail.com> - 0.3.0-1.20180311.git6d3253a
|
||||
- Update to commit 6d3253a and switch to meson.
|
||||
|
||||
* Thu Feb 15 2018 Fabio Valentini <decathorpe@gmail.com> - 0.3.0-0.git146.22e1.1
|
||||
- Update to latest snapshot (git 146-22e1).
|
||||
|
||||
* Wed Feb 14 2018 Fabio Valentini <decathorpe@gmail.com> - 0.3.0-0.git141.f90f.2
|
||||
- Rebuild for libgnome-desktop soname bump.
|
||||
|
||||
* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 0.3.0-0.git141.f90f.1.1
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
|
||||
|
||||
* Fri Jan 26 2018 Fabio Valentini <decathorpe@gmail.com> - 0.3.0-0.git141.f90f.1
|
||||
- Update to latest snapshot (git 141-f90f).
|
||||
|
||||
* Tue Jan 23 2018 Fabio Valentini <decathorpe@gmail.com> - 0.3.0-0.git140.d76c.1
|
||||
- Update to latest snapshot (git 140-d76c).
|
||||
|
||||
* Sat Jan 06 2018 Fabio Valentini <decathorpe@gmail.com> - 0.3.0-0.git139.439f.3
|
||||
- Remove icon cache scriptlets, replaced by file triggers.
|
||||
|
||||
* Wed Dec 27 2017 Fabio Valentini <decathorpe@gmail.com> - 0.3.0-0.git139.439f.2
|
||||
- Add patch so window buttons match fedora's default layout.
|
||||
|
||||
* Wed Dec 27 2017 Fabio Valentini <decathorpe@gmail.com> - 0.3.0-0.git139.439f.1
|
||||
- Update to latest snapshot (git 139-439f).
|
||||
|
||||
* Tue Nov 21 2017 Fabio Valentini <decathorpe@gmail.com> - 0.3.0-0.git138.a82b.1
|
||||
- Update to latest snapshot (git 138-a82b).
|
||||
|
||||
* Sat Nov 04 2017 Fabio Valentini <decathorpe@gmail.com> - 0.3.0-0.git136.60ee.2
|
||||
- Rebuild for granite soname bump.
|
||||
|
||||
* Fri Oct 13 2017 Fabio Valentini <decathorpe@gmail.com> - 0.3.0-0.git136.60ee.1
|
||||
- Update to latest snapshot (git 136-60ee).
|
||||
|
||||
* Thu Sep 21 2017 Fabio Valentini <decathorpe@gmail.com> - 0.3.0-0.git126.4fe5.1
|
||||
- Update to latest snapshot (git 126-4fe5).
|
||||
|
||||
* Wed Aug 23 2017 Fabio Valentini <decathorpe@gmail.com> - 0.3.0-0.git124.cd28.1
|
||||
- Update to latest snapshot (git 124-cd28).
|
||||
|
||||
* Sat Aug 05 2017 Fabio Valentini <decathorpe@gmail.com> - 0.3.0-0.git120.87f5a.1
|
||||
- Update to latest snapshot (git 120-87f5a).
|
||||
|
||||
* Mon Jul 31 2017 Fabio Valentini <decathorpe@gmail.com> - 0.3.0-0.git119.c7d5.1
|
||||
- Update to latest snapshot (git 119-c7d5).
|
||||
|
||||
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.3.0-0.bzr567.1.1
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
|
||||
|
||||
* Mon Feb 20 2017 Fabio Valentini <decathorpe@gmail.com> - 0.3.0-0.bzr567.1
|
||||
- Update to latest snapshot (rev 567).
|
||||
- De-remove other configurations, now the .desktop files are valid again.
|
||||
|
||||
* Sat Feb 18 2017 Fabio Valentini <decathorpe@gmail.com> - 0.3.0-0.bzr562.1
|
||||
- Update to latest snapshot (rev 562).
|
||||
- Filter provides to exclude internal plugins.
|
||||
- Remove explicit pkgconfig BR.
|
||||
- Remove unsupported / broken configurations.
|
||||
- Fix build with mutter-3.24.
|
||||
|
||||
* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.3.0-0.bzr552.4.1
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
|
||||
|
||||
* Mon Jan 23 2017 Fabio Valentini <decathorpe@gmail.com> - 0.3.0-0.bzr552.4
|
||||
- Make BR on /usr/bin/pkg-config explicit.
|
||||
|
||||
* Sat Jan 07 2017 Fabio Valentini <decathorpe@gmail.com> - 0.3.0-0.bzr552.3
|
||||
- Put plugins and the plugin directory into the right respective subpackages.
|
||||
|
||||
* Thu Jan 05 2017 Fabio Valentini <decathorpe@gmail.com> - 0.3.0-0.bzr552.2
|
||||
- Make sure no *.la files are in the packages.
|
||||
|
||||
* Thu Jan 05 2017 Fabio Valentini <decathorpe@gmail.com> - 0.3.0-0.bzr552.1
|
||||
- Initial package.
|
||||
|
Loading…
Reference in New Issue
Block a user