54 Commits
Author SHA1 Message Date
VaxryandGitHub d8e657eaea renderer/gl: implement swappable blur variants (#15661)
Adds multiple variants to the blur shader
2026-08-22 17:27:16 +02:00
VaxryandGitHub 0f97a22d11 config/lua: allow get_monitors with a table for specifying args (#14693)
adds { all } to get all monitor objects including disabled ones
2026-08-21 13:26:23 +02:00
VaxryandGitHub 8d50be06aa keybinds: fix subchord matching for release binds (#15904) 2026-08-20 17:24:01 +02:00
VaxryandGitHub af0d014cb2 desktop: refactor views, major cleanups (#15779)
Tons of stuff cleaned up, etc.
2026-08-17 22:26:04 +02:00
Lucas RitzdorfandGitHub 006bcc69a1 config/lua: display dispatcher names in binds list and when stringifying (#15722) 2026-08-08 22:41:40 +02:00
VaxryandGitHub 64962f89e4 renderer/transformer: make window transformers adapt to viewport constraints (#15759) 2026-08-05 20:38:11 +02:00
VaxryandGitHub d10194c63b keybinds: refactor, clean up code, move to new style (#15568) 2026-08-05 13:26:45 +02:00
VaxryandGitHub 901881c9f2 render: always render in normal transform (#15714)
fixes a lot of effects needing to know about the output transform, screencopy, etc.
2026-08-04 14:33:08 +02:00
MikoandGitHub 88c6386994 chore: replace string concatenation with std::format (#15652)
* chore: replace string concatenation with std::format

* Fix " Preserve the root API prefix when formatting" suggestion

* Fix missing slash; add explicit getenv safety check
2026-08-01 18:02:50 +02:00
VaxryandGitHub 2f9169f05f renderer/wobble: fix wobble on transformed outputs (#15694)
* renderer/wobble: fix wobble on transformed outputs

* sc
2026-08-01 18:01:50 +02:00
VaxryandGitHub ff672deb68 config: add deprecation notices (#15669) 2026-07-31 21:10:39 +02:00
VaxryandGitHub e8a6164298 renderer: implement window wobble (#14920)
Adds a new window transformer, and wobble framework.
2026-07-31 19:11:53 +02:00
VaxryandGitHub 2b1723adda config/lua: fix forwarding of details to lua values (#15651) 2026-07-29 21:48:50 +02:00
VaxryandGitHub 65e81c116a config/lua: do not nuke package.path (#15622) 2026-07-27 15:34:25 +02:00
VaxryandGitHub 44d16e9bd1 config/lua: allow wildcards or absolute paths in require (#15461) 2026-07-17 14:27:54 +02:00
0b0d7ede21 input-capture: impl protocol (#7919)
Co-authored-by: Gerben Meijer <infernix@gmail.com>
Co-authored-by: Emerson Matos <emegson@live.com>
Co-authored-by: Mihai Fufezan <mihai@fufexan.net>
Co-authored-by: Ashley Stonham <reddrop@reddrop.net>
Co-authored-by: extra-salad <87635414+extra-salad@users.noreply.github.com>
2026-07-15 23:56:05 +02:00
VaxryandGitHub 781d6070ba config/lua: allow disabling workspace rules (#15362) 2026-07-10 18:49:37 +02:00
VaxryandGitHub 14fa1fd027 core: various SHM handling fixes (#15315) 2026-07-03 22:21:46 +02:00
VaxryandGitHub 9405c7133e desktop/groups: fix crash on dissolution (#15135) 2026-06-27 09:22:53 +01:00
NotPppp1116GitHubPppp1116Pppp1116 <ACCOUNT1_NOREPLY>
ce36ee360a renderer: reject invalid damage regions (#15064)
* seat: skip empty pressed-key copy

* protocols: track infinite surface input regions

* renderer: reject invalid damage regions

* seat: avoid raw key array copy

---------

Co-authored-by: Pppp1116 <pcaiadoguerreiro@gmail.com>
Co-authored-by: Pppp1116 <ACCOUNT1_NOREPLY>
2026-06-25 23:45:07 +02:00
davc0nandGitHub 049595e196 config: monitors default to "preferred" res, "auto" pos and scale (#15193) 2026-06-23 15:57:06 +01:00
VaxryandGitHub 8f91ba920f tests: fix failing cases (#15200) 2026-06-21 17:28:47 +01:00
Daniel KrupińskiandGitHub 735c0e0224 config/lua: do not wrap std::function in std::optional (#15197) 2026-06-21 11:38:30 +01:00
Vaxry 88262e1f86 tests/misc: remove isDirection(char)
this shouldn't be used because it might cause longer strings to incorrectly truncate to dirs
2026-06-15 21:21:34 +02:00
VaxryandGitHub d5b8d7288d config: fix description matching for default workspaces (#15074) 2026-06-12 15:38:43 +01:00
VaxryandGitHub 70fd412d95 state/workspace: refactor workspace state, add querying, move off of CCompositor (#15075)
Another round of refactors, moves workspaces off of ccompositor.

Very similar to the monitor one.
2026-06-11 19:14:06 +01:00
VaxryandGitHub 4d7ae07549 monitor: refactor inheritance, expand query, add unit tests for position and query (#15073) 2026-06-11 17:24:15 +01:00
VaxryandGitHub 0aa7a84351 state/monitor: refactor monitor state, init fallback state (#14547)
Instead of a broken unsafe state, support proper fallback, with a real output, and pure headless runs
2026-06-08 16:11:28 +01:00
zacoonsandGitHub 50b5169b91 plugins: add api for registering and dispatching events (#14734)
* plugins: add api for registering and dispatching events

* config/lua: change various Lua*::push to take PHL*REF instead of PHL*

* plugins/lua: add tests for custom events
2026-06-08 13:00:42 +01:00
Ivo ŠmerekandGitHub faecc5950a config/monitor: allow per-monitor vrr to inherit misc:vrr (#14746)
* config/monitor: allow per-monitor vrr to inherit misc:vrr

Signed-off-by: BlueManCZ <ivo97@centrum.cz>

* keep std::optional<int> for m_vrr

Signed-off-by: BlueManCZ <ivo97@centrum.cz>

---------

Signed-off-by: BlueManCZ <ivo97@centrum.cz>
2026-05-28 13:55:44 +01:00
VaxryandGitHub b94f149854 config: allow hashes for parsing colors (#14337) 2026-05-08 15:31:02 +01:00
ImperishableSecretandGitHub 336dc6c04e config/lua: fix device bool int reads (#14313)
* config/lua: fix device bool int reads

* config/lua: fix device typed reads
2026-05-06 20:48:30 +01:00
VaxryandGitHub c7b8fe13c1 tests: fix gtests crashing (#14244) 2026-05-01 23:50:57 +01:00
Maxim AndreevandGitHub e2ba19535d tests: fix ConfigLuaValueTypes - boolBadType test, 0 and 1 are allowed integer values for bool type (#14240) 2026-05-01 12:39:16 +01:00
VaxryandGitHub 94b90a2cb0 config/lua: add ExpressionVec2, allow using a table for vec2 rules (#14197) 2026-04-28 18:10:25 +01:00
VaxryandGitHub 5ba33f8461 config/lua: init lua config manager, use lua if available (#13817)
Adds a new lua config manager, which will automatically be used if there is a lua config present.
2026-04-26 15:16:36 +01:00
Tom EnglundandGitHub 809b9b9e78 egl: move over to use hyprgraphics (#12988)
use the hyprgraphics helpers instead.
2026-04-05 19:37:07 +01:00
Ioannis TzavarasandGitHub d7edc50eb4 tests: add unit tests for CDamageRing (#13995)
Adds GTest unit tests for CDamageRing in src/helpers/DamageRing.hpp.

Covers:
  - setSize: initial full damage, same-size no-op, resize re-damage, zero-size
  - damage: in-bounds accept, empty/out-of-bounds reject, partial clip
  - damageEntire: normal path and zero-size no-op
  - rotate: clears current, preserves as previous, wraps beyond ring length
  - getBufferDamage: age<=0 and age>ring return full screen, age=1 current only,
    age=2 accumulates previous, full ring accumulation, coalescing fallback,
    empty ring returns empty
  - hasChanged: false initially, true after damage/damageEntire, false after
    rotate, false for out-of-bounds damage

27 new test cases, all passing.
2026-04-05 14:47:58 +01:00
Ioannis TzavarasandGitHub a3d262d148 tests: add unit tests for CTagKeeper (#13970)
Cover all public methods of the tag management helper:

- applyTag: set (+prefix), unset (-prefix), toggle (no prefix)
- applyTag with dynamic=true: star suffix appended
- isTagged: exact match, dynamic/star matching, strict mode
- isTagged: negative prefix inversion
- removeDynamicTag: removes star-suffixed entries
- getTags: returns full internal state
2026-04-04 13:26:54 +01:00
Pppp1116andVaxry 4c42269ce6 monitor: centralize solitary and scanout eligibility checks 2026-04-04 08:26:24 -04:00
Ioannis TzavarasandGitHub b2a29e1bf2 tests: add unit tests for MiscFunctions helpers (#13934) 2026-04-02 22:14:42 +01:00
Ioannis TzavarasandGitHub 36f184ead8 tests: add unit tests for Math transform utilities (#13935) 2026-04-01 00:16:23 +01:00
Ioannis TzavarasandGitHub 179e1de507 tests: add unit tests for match engine types (#13903)
* tests: add unit tests for match engine types

* clang-format: fix formatting in TagMatchEngine test
2026-03-31 16:38:18 +01:00
Ioannis TzavarasandGitHub fdd2607b9b tests: add unit tests for Math::CExpression (#13924) 2026-03-31 16:37:49 +01:00
Ioannis TzavarasandGitHub 1fdba8a8da tests: add unit tests for Format utilities (#13923) 2026-03-31 16:37:23 +01:00
Ioannis TzavarasandGitHub 6474f46b72 tests: add unit tests for CMonitorRuleParser (#13895) 2026-03-30 14:31:59 +01:00
Ioannis TzavarasandGitHub ef2e8dfd5f tests: add unit tests for TransferFunction helpers (#13889) 2026-03-28 21:41:14 +00:00
Ioannis TzavarasandGitHub fdf0e7a305 tests: add unit tests for CHyprColor (#13891) 2026-03-28 21:40:44 +00:00
Ioannis TzavarasandGitHub 0be78d099b tests: add unit tests for CMType helpers (#13888) 2026-03-28 21:40:14 +00:00
VaxryandGitHub 83d3babd4e desktop/reserved: do not crash on invalid box init (#13880)
ref #13879
2026-03-28 21:38:10 +00:00