From 813abcaa49546c10b5bc46c19bac853b6dc9612d Mon Sep 17 00:00:00 2001 From: Aylur Date: Sun, 17 Nov 2024 16:16:42 +0000 Subject: fix #88: hyprland sync workspaces before signal emission --- lib/hyprland/hyprland.vala | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'lib/hyprland') diff --git a/lib/hyprland/hyprland.vala b/lib/hyprland/hyprland.vala index ea95cab..195a3f6 100644 --- a/lib/hyprland/hyprland.vala +++ b/lib/hyprland/hyprland.vala @@ -393,8 +393,8 @@ public class Hyprland : Object { case "closewindow": _clients.get(args[1]).removed(); _clients.remove(args[1]); - client_removed(args[1]); yield sync_workspaces(); + client_removed(args[1]); notify_property("clients"); break; -- cgit v1.2.3 From f9a35261aeb8ea135ff0f279acbf2d12164e427a Mon Sep 17 00:00:00 2001 From: Aylur Date: Thu, 21 Nov 2024 12:48:43 +0000 Subject: fix #114 create client on windowtitlev2 --- lib/hyprland/hyprland.vala | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) (limited to 'lib/hyprland') diff --git a/lib/hyprland/hyprland.vala b/lib/hyprland/hyprland.vala index 195a3f6..17c426c 100644 --- a/lib/hyprland/hyprland.vala +++ b/lib/hyprland/hyprland.vala @@ -381,13 +381,8 @@ public class Hyprland : Object { break; case "openwindow": - var addr = args[1].split(",")[0]; - var client = new Client(); - _clients.insert(addr, client); yield sync_clients(); yield sync_workspaces(); - client_added(client); - notify_property("clients"); break; case "closewindow": @@ -426,6 +421,17 @@ public class Hyprland : Object { minimize(get_client(argv[0]), argv[1] == "0"); break; + // first event that signals a new window not openwindow + case "windowtitlev2": + var addr = args[1].split(",")[0]; + var client = new Client(); + _clients.insert(addr, client); + yield sync_clients(); + yield sync_workspaces(); + client_added(client); + notify_property("clients"); + break; + case "windowtitle": yield sync_clients(); break; -- cgit v1.2.3 From 3f554403ff92d6603ff04d13f26a71aba41375df Mon Sep 17 00:00:00 2001 From: Aylur Date: Sun, 24 Nov 2024 20:21:30 +0000 Subject: fix(hyprland): client creation resolve #124 resolve #131 --- lib/hyprland/hyprland.vala | 27 ++++++++++++++------------- 1 file changed, 14 insertions(+), 13 deletions(-) (limited to 'lib/hyprland') diff --git a/lib/hyprland/hyprland.vala b/lib/hyprland/hyprland.vala index 17c426c..663eb19 100644 --- a/lib/hyprland/hyprland.vala +++ b/lib/hyprland/hyprland.vala @@ -318,8 +318,19 @@ public class Hyprland : Object { focused_workspace = get_workspace_by_name(argv[1]); break; + // first event that signals a new client case "activewindowv2": - focused_client = get_client(args[1]); + if (args[1] != "" && get_client(args[1]) == null) { + var client = new Client(); + _clients.insert(args[1], client); + yield sync_clients(); + yield sync_workspaces(); + client_added(client); + notify_property("clients"); + focused_client = client; + } else { + focused_client = get_client(args[1]); + } break; // TODO: nag vaxry for fullscreenv2 that passes address @@ -421,19 +432,9 @@ public class Hyprland : Object { minimize(get_client(argv[0]), argv[1] == "0"); break; - // first event that signals a new window not openwindow - case "windowtitlev2": - var addr = args[1].split(",")[0]; - var client = new Client(); - _clients.insert(addr, client); - yield sync_clients(); - yield sync_workspaces(); - client_added(client); - notify_property("clients"); - break; - + // nothing to update case "windowtitle": - yield sync_clients(); + case "windowtitlev2": break; // TODO: -- cgit v1.2.3 From ac304ef346be220dd5c5d3c818c8151bdb78d730 Mon Sep 17 00:00:00 2001 From: Aylur Date: Sun, 24 Nov 2024 20:23:59 +0000 Subject: fix(hyprland): sync monitors on activeworkspace close #130 --- lib/hyprland/hyprland.vala | 1 + 1 file changed, 1 insertion(+) (limited to 'lib/hyprland') diff --git a/lib/hyprland/hyprland.vala b/lib/hyprland/hyprland.vala index 663eb19..803380d 100644 --- a/lib/hyprland/hyprland.vala +++ b/lib/hyprland/hyprland.vala @@ -309,6 +309,7 @@ public class Hyprland : Object { switch (args[0]) { case "workspacev2": yield sync_workspaces(); + yield sync_monitors(); focused_workspace = get_workspace(int.parse(args[1])); break; -- cgit v1.2.3 From 3d9c50cb8ade0319c33fbd2daefeaaa698141256 Mon Sep 17 00:00:00 2001 From: Aylur Date: Sun, 24 Nov 2024 22:30:21 +0000 Subject: fix(hyprland): update title --- lib/hyprland/hyprland.vala | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) (limited to 'lib/hyprland') diff --git a/lib/hyprland/hyprland.vala b/lib/hyprland/hyprland.vala index 803380d..9825a91 100644 --- a/lib/hyprland/hyprland.vala +++ b/lib/hyprland/hyprland.vala @@ -433,9 +433,8 @@ public class Hyprland : Object { minimize(get_client(argv[0]), argv[1] == "0"); break; - // nothing to update - case "windowtitle": case "windowtitlev2": + yield sync_clients(); break; // TODO: -- cgit v1.2.3 From 7b4d2ebdf525f98d1fddffb433ab350c335d168f Mon Sep 17 00:00:00 2001 From: Aylur Date: Fri, 29 Nov 2024 15:35:22 +0100 Subject: fix(hyprland): sync monitors on focusedmon #147 --- lib/hyprland/hyprland.vala | 1 + 1 file changed, 1 insertion(+) (limited to 'lib/hyprland') diff --git a/lib/hyprland/hyprland.vala b/lib/hyprland/hyprland.vala index 9825a91..5bdff81 100644 --- a/lib/hyprland/hyprland.vala +++ b/lib/hyprland/hyprland.vala @@ -315,6 +315,7 @@ public class Hyprland : Object { case "focusedmon": var argv = args[1].split(",", 2); + yield sync_monitors(); focused_monitor = get_monitor_by_name(argv[0]); focused_workspace = get_workspace_by_name(argv[1]); break; -- cgit v1.2.3