3
0
mirror of https://github.com/hyprwm/Hyprland.git synced 2026-02-04 07:55:38 +00:00
Commit Graph

59 Commits

Author SHA1 Message Date
23d8c372b1 dekstop/window: read static rules before guessing initial size if possible (#12783) 2026-01-02 22:20:42 +01:00
12d6819621 desktop/window: go back to the previously focused window in a group (#12763) 2026-01-02 22:20:42 +01:00
e5d20b56bc keybinds: simulate mouse movement after bringing active window to top (#12703)
Fixes https://github.com/hyprwm/Hyprland/discussions/12702
2025-12-27 21:27:59 +01:00
42447a50d6 rules/windowRuleApplicator: fix min/max size effects (#12491)
fixes #12412
2025-12-27 12:43:45 +01:00
d7f26038ee keybinds: fix multikey binds breaking after scroll wheel events (#12638) 2025-12-26 23:16:31 +01:00
7bd207377c window: automatically pin child windows (#12224) 2025-12-20 22:17:56 +00:00
6175ecd4c4 debug: move to hyprutils' logger (#12673) 2025-12-18 17:23:24 +00:00
f8d5aad1a1 tests: fix a test case 2025-12-06 12:42:26 +00:00
d3c9c54b79 layouts: fix maximize size 2025-12-06 11:32:01 +00:00
222dbe99d0 keybinds: fix previous workspace remembering (#12399)
* swipe: Fix previous workspace remembering in workspace gesture

Fixes a bug that previous workspace does not exist after swiping to a workspace

* tests: Test that `workspace previous` works after workspace gesture

* moveActiveToWorkspace: remember previous workspace unconditionally
2025-12-05 20:43:30 +00:00
9264436f35 desktop: rewrite reserved area handling + improve tests (#12383) 2025-12-05 14:16:22 +00:00
40d8fa8491 compositor: Configurable behavior when window to be focused conflicts with fullscreen (#12033)
Renames `misc:new_window_takes_over_fullscreen` into
`misc:on_focus_under_fullscreen` and implements the following behavior:

- By default, when a tiling window is being focused on a workspace where
  a fullscreen/maximized window exists, respect
  the `misc:on_focus_under_fullscreen` config variable.
2025-11-25 22:44:26 +00:00
475e87b351 windowrules: fix persistent_size not applying (#12441) 2025-11-24 23:48:10 +00:00
c249a9f4b8 windowrules: fix group rule recalcs (#12403) 2025-11-20 16:57:31 +00:00
edc311544a dwindle: Revert rework split logic to be fully gap-aware (#12047)
This reverts commit 151b5f6978.

Fixes #12380
2025-11-18 00:59:21 +00:00
c2670e9ab9 windowrules: rewrite completely (#12269)
Reworks the window rule syntax completely

---------

Co-authored-by: Mihai Fufezan <mihai@fufexan.net>
2025-11-17 18:34:02 +00:00
64ee8f8a72 layout: include reserved area in float fit (#12289)
Ref https://github.com/basecamp/omarchy/issues/3327
2025-11-13 00:08:04 +00:00
308226a4fc config/keybinds: add a submap universal keybind flag (#12100) 2025-11-11 22:59:21 +00:00
6ade4d58ca layout: fit floating window on toggle to float (#12139) 2025-10-29 23:21:28 +00:00
34812c33db hyprctl: include color management presets and sdr information (#12019)
* move string parsing for eCMType to its own namespace, similar to how
`src/protocols/types/ContentType.cpp` is done
* expose cm type and sdr settings in `hyprctl monitors`, format floats
to .2f
2025-10-24 20:18:39 +01:00
151b5f6978 dwindle: rework split logic to be fully gap-aware (#12047) 2025-10-24 19:01:05 +01:00
36c0477dd0 tests: disable shortcut test for ci 2025-10-16 14:32:26 +01:00
7fcaf332e8 layouts: apply [min|max]size window rules to dwindle & master layouts (#11898)
Uses min/max rules in the tiled layouts, akin to pseudotiling
2025-10-13 13:08:40 +01:00
d599513d4a config: add automatic closing to submaps (#11760)
* Allow submaps to auto reset to parent.

* Really should be a stack instead.

If hyprlang would allow for { } i would be so happy.

* Fixed: Somewhat better way to do it..

Lets you define what submap you want to go to instead.

* squash! Fixed: Somewhat better way to do it..

* God i hate cf..

* Force clang-format on the whole thing..

* Removed {}.

* Added tests

Tests and reset fix.
2025-10-11 02:40:18 +02:00
da31e82aab internal: prevent early exit processes from being zombies (#11995)
Prevent `exec`/`exec-once` processes which terminate very early
(before Hyprland declares that it does not want to reap zombies)
from getting stuck as zombie processes.
2025-10-10 17:03:34 +02:00
2b0926dcd4 tests: disable one test as it fails on ci 2025-10-10 13:11:32 +01:00
ba24547d3d dispatchers: add set, unset and toggle to fullscreen (#11893)
Add set, unset and toggle to fullscreen
2025-10-08 11:07:55 +01:00
73f06434a4 keybinds: fix repeat and long press keybinds release (#11863) 2025-10-06 21:10:56 +02:00
38c1e72c9d rules: fix some monitor rules (#11873) 2025-09-29 20:10:34 +02:00
6f1d2e771d config: fix rules with no parameters not being counted as invalid (#11849)
Quite a big whoopsie to insert invalid rules.

Also adds special: cases.
2025-09-27 01:04:22 +02:00
ae445606e2 config: allow negative to be used with tags. (#11779) 2025-09-26 18:19:53 +02:00
4f3dd1ddb4 config: fix gesture dispatcher parsing with whitespaces (#11784)
* config: fix gesture dispatcher parsing with whitespaces

Some dispatcher functions (e.g., `moveFocusTo`) expect the given string to be
stripped of whitepsaces.

This fixes `gesture` line parsing: rather than calling dispatcher functions
with the original string, we reuse words parsed by `CConstVarList` and join
them with a comma.

* tests/gestures: Add a test for `movecursortocorner`
2025-09-26 15:49:07 +02:00
d8f615751a config: support more than 1 window rule per rule line. (#11689)
Adds support for specifying multiple rules in one line
2025-09-26 00:33:58 +02:00
ec9a72d9fb workspaces: fix persistence with no monitor specified (#11807) 2025-09-23 21:08:30 +02:00
29b103c376 exec: Spawn processes as direct children (#11735)
* exec: Spawn processes as direct children

Spawn processes as children rather than grandchildren.
This way, spawned processes may track Hyprland's state
by watching their parent, either directly or indirectly
(e.g., Linux's `PR_SET_PDEATH_SIG`).

Fixes #11728

* tests/exec: Add the test on process spawning

Add a test that ensures that:
- A spawned process remains a direct child of Hyprland;
- Upon termination, the process does not become a zombie.
2025-09-23 19:32:48 +02:00
41dad38177 config: fix multi-argument gesture dispatcher parsing (#11721)
* config: Fix multi-argument gesture dispatchers parsing

The `dispatcher` gesture handler used to only handle
the first argument to the dispatcher, while some dispatchers
(e.g., `sendshortcut`) want multiple arguments.

This fixes `ConfigManager` to handle all the arguments
provided to the dispatcher gesture handler.

Fixes #11684.

* test/gestures: Add a test for a gesture with a multi-argument dispatcher

* test/gestures: Factor out `waitForWindowCount`

Reduce code duplication in the gestures test.
2025-09-20 17:57:49 +02:00
150d693fe7 hyprctl: add an active layout index field in devices (#11531) 2025-09-09 14:19:51 +01:00
127aab8159 input: add per-device scroll-factor (#11241) 2025-09-02 13:16:43 +02:00
5bb8adbc32 dispatchers: allow window address in swapwindow (#11518) 2025-08-31 18:14:39 +02:00
ea42041f93 protocols: implement pointer-warp-v1 (#11469) 2025-08-29 22:16:40 +02:00
81bf4eccba input: Add fully configurable trackpad gestures (#11490)
Adds configurable trackpad gestures
2025-08-28 11:20:29 +02:00
0d45b277d6 internal: Solitary clients with single subsurface & verbose solitary/tearing/DS checks (#11228)
Adds more verbose checks for various conditional rendering mechanisms
2025-08-22 18:24:25 +01:00
10cec2b7e2 dwindle: simplify split_bias logic and set of possible values. (#11448) 2025-08-19 19:32:37 +01:00
21953ddf3d hyprctl: add getprop (#11394) 2025-08-18 16:41:17 +01:00
d890178610 internal: reference command-line arguments instead of copying them (#11422)
Eliminates the need to copy command-line arguments into a std::vector<std::string>, reducing memory usage and improving performance by referencing the original arguments directly.
2025-08-17 20:18:51 +01:00
1cbb62ed6a masterlayout: add previous mode for focusmaster command (#11361) 2025-08-16 14:42:23 +01:00
beee22a95e refactor: Use new hyprutils casts (#11377) 2025-08-14 15:44:56 +01:00
aa6a78f0a4 internal: Ensure unique identifiers for persistent workspaces (#11409) 2025-08-13 08:45:34 +01:00
d1c8dc5420 hyprtester: drop gcc flag 2025-08-06 22:46:26 +02:00
ec26b753a2 descriptions: fix bad json output (#11350)
---------

Co-authored-by: Mihai Fufezan <mihai@fufexan.net>
2025-08-06 16:28:07 +02:00