Alexis Rouillard
37dbd59dac
Merge pull request #3017 from 0x000C0A71/master
...
[hyprland/workspaces] Add tooltips to hyprland/workspaces
2026-07-04 01:12:10 +02:00
Alexis Rouillard
78b9a38532
Merge pull request #4320 from LoricAndre/master
...
feat(hyprland/workspaces): add uniqueIcons option
2026-07-04 01:12:05 +02:00
Alex
8276f6a629
Merge remote-tracking branch 'origin/master' into pr-3017
...
# Conflicts:
# include/modules/hyprland/workspaces.hpp
# man/waybar-hyprland-workspaces.5.scd
# src/modules/hyprland/workspaces.cpp
2026-07-04 00:55:38 +02:00
Alexis Rouillard
24dba2bb24
Merge pull request #4694 from whymusticode/max-icons
...
feat(hyprland/workspaces): add deduplication and max-icons option to workspace-taskbar
2026-07-04 00:55:34 +02:00
Alex
05f32172df
Merge remote-tracking branch 'origin/master' into pr-4320
...
# Conflicts:
# include/modules/hyprland/workspaces.hpp
# man/waybar-hyprland-workspaces.5.scd
# src/modules/hyprland/workspace.cpp
# src/modules/hyprland/workspaces.cpp
2026-07-04 00:51:21 +02:00
Alex
08e457e3cd
Merge remote-tracking branch 'origin/master' into pr-4694
...
# Conflicts:
# src/modules/hyprland/workspace.cpp
2026-07-04 00:41:50 +02:00
Alexis Rouillard
423ca224f5
Merge branch 'master' into master
2026-07-04 00:32:08 +02:00
Alex
e792ed8f85
Merge remote-tracking branch 'origin/master' into pr-4861
...
# Conflicts:
# src/modules/hyprland/workspace.cpp
2026-07-03 23:51:19 +02:00
Alexis Rouillard
2f6720c053
Merge pull request #4981 from xiyori/max-windows
...
Add max-windows option to hyprland/workspaces
2026-07-03 22:58:37 +02:00
Alexis Rouillard
5ff20943a9
Merge branch 'master' into hide-active
2026-07-03 22:22:24 +02:00
yyyumeniku
2a05edaf6a
hyprland/workspaces: add debounce timer to prevent workspace button flicker
...
When switching between workspaces rapidly (especially empty ones),
Hyprland sends createworkspace and destroyworkspace events slightly
out of order. This causes workspace buttons to render in wrong
positions for a split second before snapping to their correct spots.
Add a 7ms debounce timer that batches workspace events before
calling dp.emit(), preventing the visual glitch.
Fixes #4376
2026-05-12 20:09:13 -04:00
xiyori
503d99b128
Add max-windows option to hyprland/workspaces
2026-04-09 14:15:56 +03:00
eonphi
f5d2ef1c4c
Merge remote-tracking branch 'upstream/master'
2026-03-10 14:27:40 +01:00
Austin Horstman
dd47a2b826
fix(hyprland/workspaces): stabilize reload and event handling
...
Hyprland workspace reloads could stack duplicate scroll-event connections,
causing a single wheel gesture to switch multiple workspaces after repeated
config reloads. The persistent-workspaces monitor-array form also created the
monitor name instead of the configured workspace name.
Disconnect and replace the scroll handler on reinit, fix the persistent
workspace name selection, normalize urgent-window address matching, and reject
malformed workspace payloads before they corrupt the local state machine.
Signed-off-by: Austin Horstman <khaneliman12@gmail.com >
2026-03-07 21:06:30 -06:00
Austin Horstman
4c71b2bf9f
perf(memory): optimize C++ string operations to reduce heap fragmentation
...
- Replaced pass-by-value std::string parameters with const std::string&
or std::string_view to prevent SSO overallocations.
- Refactored static mapping functions in UPower to return
std::string_view instead of constructing std::string literals, enabling
perfect cache locality.
- Optimized string concatenation in hot loops (network IPs, inhibitor
lists, sway window marks) by using std::string::append() and
pre-reserving capacity instead of overloaded operator+ which produces
temporary heap instances.
These optimizations reduce high-frequency memory churn and overall heap
fragmentation within the main rendering loops.
Signed-off-by: Austin Horstman <khaneliman12@gmail.com >
2026-03-02 22:54:07 -06:00
eonphi
736c053350
feat(hyprland/workspaces): grouping icons
2026-02-14 16:37:35 +01:00
vawvaw
5b595a4dfe
hyprland/workspaces: Add enable-bar-scroll option
2026-02-13 20:48:59 +01:00
mike b
85aac3fee7
feature to limit the number of icons displayed
2025-12-11 14:46:32 -05:00
Pol Rivero
45d01ce6e5
Implement "active-window-position"
2025-08-18 21:23:36 +02:00
Pol Rivero
691b7d427b
Implement "reverse-direction"
2025-08-18 20:49:14 +02:00
LoricAndre
383949795e
feat(hyprland/workspaces): add uniqueIcons option
2025-07-23 17:38:25 +02:00
Pol Rivero
c98cb7095d
Merge remote-tracking branch 'upstream/master'
2025-07-06 10:18:59 +02:00
Alexis Rouillard
77b42105a6
Merge pull request #4136 from Roc25/special-centered
...
hyprland workspaces: Add sorting Special Centered
2025-06-22 08:57:12 +01:00
Alexis Rouillard
71c6c6032b
Merge pull request #4133 from Roc25/persistent-only
...
Add persistent-only setting for hyprland/workspaces
2025-06-22 08:50:33 +01:00
Alexis Rouillard
6206cebd75
Merge pull request #3887 from torstehu/fix-typo
...
Fix typos in function, variable names and in documentation
2025-06-22 08:39:23 +01:00
gred
e3e8077342
Add hide-active
2025-06-07 12:11:22 +03:00
gred
24a30b7ffd
Add sorting with centered special workspaces
2025-05-21 01:01:23 +03:00
gred
4f55d7da90
Add persistent-only setting for hyprland/workspaces
2025-05-20 23:00:09 +03:00
Pol Rivero
4ae2b6f1ba
Implement ignore-list
2025-05-02 15:48:34 +02:00
Pol Rivero
61c5dad895
Fix some windows not being marked as active when opened
...
In some cases, the active event is arriving before the create event. We need to store the currently active address and initialize the windows accordingly
2025-05-01 21:03:46 +02:00
Pol Rivero
72404a77f0
Initial implementation of active window
...
TODO:
- Sometimes the active event arrives before the create, in which case the window is not activated.
- The window title event also looks unreliable in some cases, will need to investigate
2025-05-01 20:22:34 +02:00
Pol Rivero
4222032fa1
Merge remote-tracking branch 'upstream/master'
2025-04-29 19:59:42 +02:00
Pol Rivero
e541936df9
Merge remote-tracking branch 'upstream/master'
2025-03-08 17:18:31 +01:00
Matthew White
f7b4451564
fix(hyprland): support additional v2 events
2025-03-04 10:23:19 -07:00
Matt White
17cee0d876
feat(hyprland): support workspacev2
2025-02-26 18:56:11 -07:00
zjeffer
5b8839ab5c
Hyprland IPC improvements
...
Fixes IPC being blocked at shutdown
2025-02-19 20:45:47 +01:00
Pol Rivero
7b854112ed
workspace taskbars: Allow custom command on window click
2025-01-27 11:46:35 +01:00
Pol Rivero
5ee0d1c7fe
workspace taskbars: Fix windows not showing
...
Windows were not being shown or updated unless the window-rewrite config were present.
2025-01-27 11:46:35 +01:00
Pol Rivero
fdb9004048
workspace taskbars: More config options
...
- orientation
- icon-size
- icon-theme
2025-01-27 11:46:35 +01:00
Pol Rivero
1c07ca0099
workspace taskbars: Add config parsing
...
Use format from config instead of hardcoding
2025-01-27 11:46:35 +01:00
Pol Rivero
69e2e249a6
Initial implementation of workspace taskbars
...
Add a list of window titles and icons to each workspace (like wlr/taskbar but grouped by workspace).
Only implemented on hyprland for now.
2025-01-27 11:46:35 +01:00
Alex
481b01d9af
fix: lint
2025-01-25 09:31:32 +01:00
Torstein Husebø
6004316f1a
Fix typos in function, variable names and in documentation
2025-01-16 13:25:19 +01:00
Alex
6417782af6
chore: lint
2024-09-13 08:55:14 +02:00
Austin Horstman
f6482c36dc
hyprland: clangd cleanup
2024-06-28 13:06:14 -05:00
Austin Horstman
bac4d03813
modules/hyprland/workspaces: remove deprecated property
2024-06-15 18:34:45 -05:00
Austin Horstman
0055ee6910
modules/hyprland/workspaces: remove unneccesary visibleWorkspaces variable
2024-06-07 13:56:49 -05:00
alttabber
29e3d8c371
Hide non-visible special workspaces
2024-05-28 17:45:01 +02:00
Austin Horstman
f5bb086460
hyprland/workspaces: sort methods
2024-05-24 14:41:59 -05:00
Austin Horstman
07c91c200a
hyprland/workspaces: break up headers
2024-05-24 14:21:31 -05:00