Skip to content

Instantly share code, notes, and snippets.

@Tireg
Tireg / fix-reorder-workspaces-mutter-334.patch
Created November 8, 2019 14:27
Fix gala's workspace reorder with mutter 3.34
diff --git a/src/Widgets/MultitaskingView.vala b/src/Widgets/MultitaskingView.vala
index cede706..35a1f28 100644
--- a/src/Widgets/MultitaskingView.vala
+++ b/src/Widgets/MultitaskingView.vala
@@ -92,6 +92,9 @@ namespace Gala
manager.workspace_added.connect (add_workspace);
manager.workspace_removed.connect (remove_workspace);
+#if HAS_MUTTER334
+ manager.workspaces_reordered.connect (() => update_positions (false));
@Tireg
Tireg / fix-multitasking-view-remove-workspace.patch
Created November 8, 2019 14:24
Fix gala's multitasking view with mutter 3.3x
diff --git a/src/Widgets/MultitaskingView.vala b/src/Widgets/MultitaskingView.vala
index cede706..ef997df 100644
--- a/src/Widgets/MultitaskingView.vala
+++ b/src/Widgets/MultitaskingView.vala
@@ -389,29 +389,20 @@ namespace Gala
// FIXME is there a better way to get the removed workspace?
#if HAS_MUTTER330
unowned Meta.WorkspaceManager manager = display.get_workspace_manager ();
+ unowned List<Workspace> existing_workspaces = null;
+ for (int i = 0; i < manager.get_n_workspaces (); i++) {
@Tireg
Tireg / fix-workspace-manager-cleanup-last-index.patch
Created November 8, 2019 14:01
Fix last index of the gala cleanup function
diff --git a/src/WorkspaceManager.vala b/src/WorkspaceManager.vala
index e2da277..c49fe4c 100644
--- a/src/WorkspaceManager.vala
+++ b/src/WorkspaceManager.vala
@@ -389,13 +389,13 @@ namespace Gala
#if HAS_MUTTER330
unowned Meta.Display display = wm.get_display ();
unowned Meta.WorkspaceManager manager = display.get_workspace_manager ();
- var last_index = manager.get_n_workspaces () - 1;
unowned List<Meta.Workspace> existing_workspaces = null;
@Tireg
Tireg / fix-workspace-manager-cleanup-loop.patch
Created November 8, 2019 13:54
Fix workspace manager cleanup loop with mutter 3.3x (gala)
diff --git a/src/WorkspaceManager.vala b/src/WorkspaceManager.vala
index dd4a09e..e2da277 100644
--- a/src/WorkspaceManager.vala
+++ b/src/WorkspaceManager.vala
@@ -390,8 +390,12 @@ namespace Gala
unowned Meta.Display display = wm.get_display ();
unowned Meta.WorkspaceManager manager = display.get_workspace_manager ();
var last_index = manager.get_n_workspaces () - 1;
+ unowned List<Meta.Workspace> existing_workspaces = null;
for (int i = 0; i < manager.get_n_workspaces (); i++) {
@Tireg
Tireg / fix-workspace-manager-cleanup.patch
Created November 8, 2019 13:42
Fix workspace manager cleanup with mutter 3.3x
diff --git a/src/WorkspaceManager.vala b/src/WorkspaceManager.vala
index dd4a09e..c49fe4c 100644
--- a/src/WorkspaceManager.vala
+++ b/src/WorkspaceManager.vala
@@ -389,9 +389,13 @@ namespace Gala
#if HAS_MUTTER330
unowned Meta.Display display = wm.get_display ();
unowned Meta.WorkspaceManager manager = display.get_workspace_manager ();
- var last_index = manager.get_n_workspaces () - 1;
+ unowned List<Meta.Workspace> existing_workspaces = null;
@Tireg
Tireg / fix-workspace-manager-workspace-removed.patch
Created November 8, 2019 13:22
fix-workspace-manager-workspace-removed.patch
diff --git a/src/WorkspaceManager.vala b/src/WorkspaceManager.vala
index dd4a09e..24515e6 100644
--- a/src/WorkspaceManager.vala
+++ b/src/WorkspaceManager.vala
@@ -132,10 +132,16 @@ namespace Gala
void workspace_removed (Meta.WorkspaceManager manager, int index)
{
+ unowned List<Workspace> existing_workspaces = null;
+ for (int i = 0; i < manager.get_n_workspaces (); i++) {
@Tireg
Tireg / gala-fix-mutter-33x-aio.patch
Created November 8, 2019 12:01
Fix gala bugs agains mutter 3.3x (All-In-One patch)
diff --git a/data/20_elementary.pantheon.wm.gschema.override b/data/20_elementary.pantheon.wm.gschema.override
new file mode 100644
index 0000000..ef292ee
--- /dev/null
+++ b/data/20_elementary.pantheon.wm.gschema.override
@@ -0,0 +1,6 @@
+[org.gnome.mutter:Pantheon]
+dynamic-workspaces = true
+attach-modal-dialogs = false
+button-layout = 'close:maximize'
@Tireg
Tireg / tmp-fix-gala-cleanup2.patch
Created November 4, 2019 22:40
Temporary fix to be able to run gala against mutter 3.3x+
diff --git a/src/WorkspaceManager.vala b/src/WorkspaceManager.vala
index dd4a09e..e35ae7b 100644
--- a/src/WorkspaceManager.vala
+++ b/src/WorkspaceManager.vala
@@ -135,8 +135,7 @@ namespace Gala
var it = workspaces_marked_removed.iterator ();
while (it.next ()) {
var workspace = it.@get ();
- if (workspace.index () < 0)
- it.remove ();
@Tireg
Tireg / tmp-fix-gala-remove-workspace.patch
Created November 4, 2019 19:08
Temporary workaround for broken functions under gala with mutter 3.32+
diff --git a/src/WorkspaceManager.vala b/src/WorkspaceManager.vala
index dd4a09e..0815683 100644
--- a/src/WorkspaceManager.vala
+++ b/src/WorkspaceManager.vala
@@ -149,7 +149,7 @@ namespace Gala
var prev_workspace = manager.get_workspace_by_index (from);
if (Utils.get_n_windows (prev_workspace) < 1
&& from != manager.get_n_workspaces () - 1) {
- remove_workspace (prev_workspace);
+ //remove_workspace (prev_workspace);
@Tireg
Tireg / gist:f5513ad7693e17dfddcf2f920dc8785f
Last active November 8, 2019 12:03
Backport support for reorder workspace for elementary/gala (with mutter 3.32, see: https://gist.github.com/Tireg/49b5efc9db4a79232e093452a0d29759)
diff --git a/src/Widgets/MultitaskingView.vala b/src/Widgets/MultitaskingView.vala
index 35a1f28..114d5ef 100644
--- a/src/Widgets/MultitaskingView.vala
+++ b/src/Widgets/MultitaskingView.vala
@@ -92,7 +92,7 @@ namespace Gala
manager.workspace_added.connect (add_workspace);
manager.workspace_removed.connect (remove_workspace);
-#if HAS_MUTTER334
+#if HAS_MUTTER332