Commit Graph

115 Commits

Author SHA1 Message Date
084b561d5b [hyprland/workspaces] Update window count and sort workspaces AFTER their creation 2024-04-12 11:40:05 +02:00
cd3d588abd [hyprland/workspaces] Fix active workspace not getting updated on multi monitor setups 2024-04-12 11:33:29 +02:00
e30ddda23a Merge pull request #2987 from tomben13/master
[hyprland/workspaces] New options to change on click behaviour and active workspace status
2024-03-22 23:16:57 +01:00
736309ef1f Fixed segfault 2024-03-17 23:00:48 +01:00
ca17bdb214 Merge pull request #2968 from jramrath/hyprland_workspaces_monitor_class
Hyprland workspaces `hosting-monitor` css class
2024-03-17 13:06:50 +01:00
f014a7d2e5 man docs & different css class name 2024-03-16 21:22:01 +01:00
68889494d0 Removed option active-per-monitor 2024-03-05 11:12:46 +01:00
df7f1fffcf feat(hyprland/workspaces): added options move-to-monitor and active-per-monitor 2024-03-04 13:17:52 +01:00
b3ee94d87a Improve hyprland/workspaces persistency logic
Fixes #2945

Split the config and rule persistency in 2 attributes, one storing the
persistency as set in Waybar's config, the other one storing the
persistency as set in Hyprland.

It fixes some conflicts between the persistency state of a workspace as
set in Waybar's config and its dynamic state in Hyprland.

It allows to remove a persistent workspace in Waybar if this workspace
is removed from Hyprland and if the workspace is not set as persistent
in Waybar's config.
2024-02-26 00:14:25 +01:00
9bc8de8876 fix clang complaints 2024-02-25 13:46:49 +01:00
4cc2800a78 add 'onThisMonitor' css class 2024-02-25 00:52:33 +01:00
16079eae09 update m_output 2024-02-25 00:51:52 +01:00
4a5444d196 fix click special 2024-02-19 16:16:46 -08:00
91b79a2e9e Merge pull request #2894 from jramrath/active-for-hyprland-special-workspaces
Add css classes to hyprland special workspaces
2024-02-19 23:02:17 +01:00
11310b89f0 hyprland/workspaces: Use hyprland's persistent workspaces configuration 2024-02-18 16:04:47 +01:00
d590d508ca feat: add module class to the root elements of the modules
Previously, the only way to select all the module labels was with the
following kind of selector:
```css
.modules-left > widget > label,
.modules-center > widget > label,
.modules-right > widget > label {
    /* ... */
}
```
(and a matching block for the `box` containers).

Now, this can be expressed as
```css
label.module, box.module {
    /* ... */
}
```
2024-02-14 22:41:13 -08:00
2f555a6936 refactor(bar): use Gtk enums for position and orientation
Ensure that the position and the corresponding CSS class on window are
always set.
2024-02-14 22:11:21 -08:00
acf6611098 clang-format 2024-02-10 17:35:46 +01:00
a2925fa5da fix 'visible' class for special workspaces 2024-02-10 17:26:44 +01:00
240b49f9d2 Add 'empty' css class to special workspaces 2024-02-10 16:59:53 +01:00
d4331ce7fe improve handling of special workspace name 2024-02-09 13:49:39 +01:00
692f8f4ea4 add/remove 'active' on 'focusedmon' IPC event 2024-02-07 22:42:05 +01:00
61be2267ab add 'visible' css class to special workspaces 2024-02-07 21:10:17 +01:00
c30541b954 remove whitespaces 2024-02-07 16:56:37 +01:00
3bfcd5e086 Add 'active' css class to special workspaces 2024-02-07 16:33:19 +01:00
9e08512927 feat: strip workspace qualifiers when creating windows 2024-01-10 02:24:51 -03:00
4339030c9d feat: fetch clients data when moving workspaces accross monitors 2024-01-08 20:11:39 -03:00
bc7acbde5c fix: rename windows while queued for creation
this avoids the window arriving with the wrong icon when its eventually
able to be created
2024-01-08 18:30:53 -03:00
512c6fb127 feat: add orphan windows attribute to workspaces
this attribute will keep every window that doesn't have an associated
workspace in the current bar
2024-01-08 18:30:53 -03:00
a34e3ccc86 Improvements for Hyprland workspace
1. Utilize `m_mutex` to safeguard member fields of `hyprland::Workspaces` as they are modified by multiple threads, including the event listener thread and UI thread. This applies to all member fields, not just `m_workspacesToCreate`.

2. Tidy up the create/remove workspace code.
2024-01-08 09:14:36 +08:00
4b20f522f0 Merge pull request #2789 from DreamMaoMao/master
fix:#2769
2024-01-04 15:33:26 +01:00
ff09ef6d71 hyprland/workspaces: allow using the original window class/title
This turns the values of window rewrite rules in hyprland/workspaces from static strings to format strings with the values {class} and {title} available.
2023-12-30 21:07:40 -05:00
e64d66ab24 fix:the workspace data is null in a small probability
update

fix clang-format warn

no manual unlock
2023-12-25 21:55:46 +08:00
4d5b715dc4 applied clang-tidy suggestions for hyprland workspaces 2023-12-06 21:58:26 +01:00
0162dbd485 add button single click check to hyprland workspaces 2023-11-27 16:20:05 -08:00
b6b495e1bc hyprland module: added sort_workspaces after rename occured
Signed-off-by: aserowy <serowy@hotmail.com>
2023-11-18 11:36:47 +01:00
375a38a489 Fix for #2646 2023-11-14 21:26:17 +01:00
8555456050 hyprland/workspaces: fix crash on monitor off/on 2023-11-01 22:04:19 +00:00
9012cebbf2 Happy Linter
Signed-off-by: Viktar Lukashonak <myxabeer@gmail.com>
2023-10-31 23:31:58 +03:00
1f0ce1a5d9 Fixed variable synchronization exception caused by the "hyprland/workspace" module receiving create or delete IPC requests too quickly 2023-10-27 14:17:43 +08:00
4aee5977d6 fix: set workspace as persistent on create_workspace 2023-10-23 21:07:37 -03:00
dab1493644 cleanup onEvent, dont use try/catch for flow control 2023-10-21 19:33:55 +02:00
acc911737d update window count inside the on_window_* functions 2023-10-21 18:53:53 +02:00
2d614c68f5 code review 2023-10-21 18:15:22 +02:00
ed65d9cdbd General cleanup in hyprland/workspaces 2023-10-21 16:52:23 +02:00
7d5577a2ed feat: create persistent workspaces after regular ones at init
feat: avoid recreating duplicate workspaces
2023-10-19 21:29:38 -03:00
a41225c4e0 Revert "fix: fill persistent workspaces' windows at init"
This reverts commit e14a3b8687.
2023-10-19 21:23:00 -03:00
a0d2d95b41 chore: remove unused function 2023-10-19 21:21:55 -03:00
e14a3b8687 fix: fill persistent workspaces' windows at init 2023-10-19 21:19:08 -03:00
846842be80 feat: emit dispatcher when any window is created during update 2023-10-19 10:45:00 -03:00