Commit Graph
7296 Commits
Author SHA1 Message Date
Aaron Blasko a090000cc4 meta: update lua stubs for permissions (#14400) 2026-05-13 23:54:07 +01:00
Vaxry 68ebab1efe Minor fixes today (#14401)
* compositor: fix invalid capture in vectorToWindowUnified

* config/legacy: fix bad format log in handleSource
2026-05-13 23:54:07 +01:00
Vaxry c3fe09d01c renderer: set proper image description in snapshots (#14398) 2026-05-13 23:54:07 +01:00
Vaxry 71f7ce07e4 monitor: don't modeset on reserved changes (#14397) 2026-05-13 23:54:07 +01:00
Vaxry a37d78b382 gestures/scroll_move: guard col to avoid crash (#14394) 2026-05-13 23:54:07 +01:00
Virt f880a42bd4 config: fix plugin variables with dashes (#14379) 2026-05-13 23:54:07 +01:00
Vaxry af923e30d1 version: bump to 0.55.0 v0.55.0 2026-05-09 14:35:27 +01:00
littleblack111 74d4c53702 desktop/rule: recheck eating the applied rule (#14362)
tag mutates it, causing a recheck, with the applied rule is gone as it
is unregistered after first applying
2026-05-09 14:09:37 +01:00
UjinT34 6df053b70b renderer: fix decoration colors with linear FP16 (#14361) 2026-05-09 13:57:33 +01:00
Matteo Golinelli 11bd00cd18 input: fix touch monitor focus ordering (#14310) 2026-05-09 12:22:34 +01:00
Vaxry 09d13d387b gitignore: ignore pointer scroll test artifact 2026-05-09 12:03:04 +01:00
Maxim Andreev ed2cb532da input: keep pointer focus on layer surfaces during keyboard refocus (#14018)
Do not let sendMotionEventsToFocused() steal pointer focus from
non-window surfaces such as waybar when follow_mouse is disabled.

This keeps keyboard focus changes from workspace switches from moving
pointer focus off the bar under the cursor, which otherwise makes
workspace scrolling on waybar behave one event behind.
2026-05-09 12:01:03 +01:00
UjinT34 07a086afee renderer: handle HDR -> SDR with cm_auto_hdr (#14102) 2026-05-09 11:41:06 +01:00
Vaxry 8b78de5d90 compositor: recalculate workspace state after fs state update (#14369) 2026-05-08 23:22:07 +01:00
erstarr 1a164704e7 keybind/actions: cycle_next w/ tiled = true doesn't choose only tiled windows (#14164)
* fix tiling only selection: actually select only tiling when chosen

* clang-format

* test: cycle_next float only and tiled only
2026-05-08 19:34:54 +01:00
phanium 544268931a build: bump hyprutils to 0.13.1 (#14365)
Fail to build from source
2026-05-08 19:34:40 +01:00
erstarr bd7f695363 algo/scrolling: various scrolling view related bugfixes (#13974)
* fix scrolling view move when a grouped window is closed - prevent redundant space assignment for a grouped window that's about to be unmapped, add a `FOCUS_REASON` for unmapping grouped windows

* fix focus_fallback after unmapping a window floating moving view

* fix view change when changing workspaces (special and normal).

add an optional `RECALCULATE_REASON` parameter to `recalculate()` calls of all algorithms.
add an optional `RECALCULATE_MONITOR_REASON` parameter to `recalculateMonitor()` calls.
add 2 new `FOCUS_REASON`s, for workspace change and special workspace toggle

* Fix hyprctl keyword causing scrolling view move.
rename INPUT_MODE_KB to INPUT_MODE_HARD since it seems to have little to do with keybinds

* fix fullscreen/maximise moving the scrolling view

* fix opening of layer 3 programs moving scrolling view

* refactor, clean up and clang-format

* fix bad decisions

* fix includes, clang-format.

* remove TODO

* `focuswindow` no longer moves scrolling view when `follow_focus = 0`

* fix: changes in a group's current window no longer casues scrolling view shift when `follow_focus = 0`

* fix: `moveintogroup`, `movewindoworgroup` no longer causes scrolling view change if `follow_focus = 0`

* clang-format

* add `RECALCULATE_REASON_UNKNOWN`, `RECALCULATE_MONITOR_REASON_UNKNOWN`, `REMOVE_FROM_GROUP_REASON_UNKNOWN`

remove optional wrapper from their enums, refactor code to work with the change

* dispatches that call `switchtoWindow()` in CKeybindManager no longer cause scrolling view to move if `follow_focus = 0`.

They still cause the move if `follow_focus = 1`

Dispatches effected by this: `movefocus`, `cyclenext`, `focuscurrentorlast`, `focuscurrentorurgent`

* Fix for Lua: switchToWondow

* Fix for Lua: focus({window})

* Fix for Lua: Move Window Into Group

* clang-format

* Drop `hyprctl keyword` change

* test: `focus({window})` with `follow_focus = false`

* test: `focus({window})` with `follow_focus = true`

* test: test Focus Fallback

* test: Focus Fallback with groups

* test: workspace change

* test: special workspace toggle

* test: workspace change - special to special

also minor refactoring

* test: close window in a group

* test: move window into group `follow_focus = false`

minor fix in test: expect -> assert

* test: move window into group `follow_focus = true`

* test: new layer

* test: maximise

fix in test: expect to assert.

* test: fullscreen

* test: `dispatch window.focus({ direction })` when `follow_focus = false`

* test: `dispatch window.focus({ direction })` when `follow_focus = true`

test-fix: expect -> assert

* test: move focus within group when `follow_focus = false`

* test: move focus within group when `follow_focus = true`

* test-fix: kill all layers before killing all windows in layers test. prevents internal post test cleanup function failing to kill all layers

test-fix: maximized and fullscreen swapped between their tests

test-fix: testScrollingViewBehaviourMoveFocusInGroupFollowFocusTrue missing layout initialization

test-fix: testScrollingViewBehaviourWorkspaceChange, testScrollingViewBehaviourCloseWindowInGroup have stale window class in a comment

clang-format

* catch up with main: move to new test function

* clean-up the clean-up part of the tests: redundant

* clang-format

* pain

* suffering: fix rebase fail

* test: manually kill all layers since the cleanup function fails

* remove test: fullscreen and maximise. scrolling has its own behaviour now
2026-05-08 16:45:43 +01:00
Vaxry ac75bcab71 renderer: fix shadow CM calculations (#14364) 2026-05-08 15:31:12 +01:00
Vaxry b94f149854 config: allow hashes for parsing colors (#14337) 2026-05-08 15:31:02 +01:00
Vaxry a6a0cc308c desktop/workspace: fix visibility criteria matching (#14349)
ref https://github.com/hyprwm/Hyprland/discussions/14233
2026-05-08 15:00:38 +01:00
Vaxry 91eb3898ed layout/scrolling: fix edge detection in recalculate() (#14359)
ref #14339
2026-05-08 14:59:34 +01:00
Vaxry de9f8dc983 cmake: fix permissions for directories by default 2026-05-08 01:26:37 +01:00
erstarr fe76c536a4 repo: ignore the autogen file meta/hl.meta.lua (#14336) 2026-05-08 01:21:31 +01:00
Vaxry 6c2296722b config: always call refresh after config reload (#14346) 2026-05-08 01:20:22 +01:00
Mihai Fufezan f61ee4c25a config: find lua paths first (#14335)
* config: find lua paths first

* config/supplementary/jeremy: use designated initializer list
2026-05-08 00:47:47 +01:00
Vaxry 4c8c45d754 gestures: add scroll_move (#14063) 2026-05-07 22:29:43 +01:00
UjinT34andVaxry 39af3901b3 renderer: more FP16 fixes (#14070)
* fix fp16 blur with invalidation

* restore tonemap code

* fix fade outs

* add sdr compat for unaware surfaces

* use a better work space, not linear, only for sdr

* fix hl tf -> wp tf

* cache workbuffer descriptions

* linear not normalised WIP

* clear offload fb

* CM math

* fix includes

* use precalculated cm for shadows

* inner glow cm

* quad cm

* fix unmodified copy

* codegen

* cache color CM

* mark blur dirty when CM/DS changes

* avoid icc workbuffer

* fp16 blur finish hack

* fix output hdr luminances

* use srgb for mirroring/sharing with fp16

* defaults people

---------

Co-authored-by: Vaxry <vaxry@vaxry.net>
2026-05-07 22:28:34 +01:00
erstarr c18186a519 hl.mata.lua: add string to NotificationOptions's icon param. (#14334) 2026-05-07 20:01:16 +01:00
Nakaeri acba1c440b i18n: update brazillian portuguese (pt_BR) translation (#14248) 2026-05-07 15:59:11 +01:00
Vaxry 58833eb1d7 layout/scrolling: handle fullscreen manually (#14190)
Makes scroll handle fullscreen by itself, allowing for fs scrolls.
2026-05-07 15:21:06 +01:00
Maxim Andreev 6b8b201002 meta/stubs: fix notification icon type (#14320) 2026-05-07 12:05:50 +01:00
Vaxry 1dc8a0db81 cmake: remove dependence on hyprland.conf 2026-05-07 11:44:13 +01:00
Vaxry 4fab2afced config: use lua by default, generate lua if no config present 2026-05-07 00:39:04 +01:00
Vaxry 78b8ce229c example: remove old .conf file 2026-05-07 00:17:10 +01:00
Vaxry e9659382e9 propRefresher: fix misnamed value 2026-05-06 21:46:23 +01:00
Vaxry 74ed271d0f config/legacy: fix missing fallbacks crashing device getters 2026-05-06 21:46:23 +01:00
Vaxry ae0eeea114 config: fix propRefresher to not run on first launch 2026-05-06 21:46:23 +01:00
ImperishableSecret 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
Vaxry 1681bea42d config/lua: add simple layout API (#14258)
Adds a simple layout lua api
2026-05-06 13:56:12 +01:00
Vaxry 5f1350f522 config/refresher: refresh watcher state properly (#14307)
ref #14301
2026-05-06 13:35:37 +01:00
Vaxry 6dc42e0f6d config/refresher: fix refreshing of cursor zooms (#14283) 2026-05-06 12:41:06 +01:00
vaxerski a531c2ed6b [gha] Nix: update inputs 2026-05-05 15:32:56 +00:00
Maxim Andreev d6aa6af5b3 groups: add groupbar middle_click_close option (#14242) 2026-05-05 16:31:09 +01:00
ArchSavandMio Argillander 497b48e852 config: add device tags (#13728)
---------

Co-authored-by: Mio Argillander <mio@argillander.me>
2026-05-05 16:30:19 +01:00
fazzi eff3bfe261 windows/focus: add fallbacks when focussing workspaces (#14270) 2026-05-04 17:00:56 +01:00
Vaxry 2824ffdda0 config/legacy: fix crash on getConfigValue of plugin fns 2026-05-04 16:17:48 +01:00
davc0n 33044c3816 render: scale background to monitor resolution (#14250)
* render: scale background to monitor resolution

Currently the background is not scaled, e.g. 8k size image always uses
~128Mb of VRAM.
We could reduce the consumption for low-end devices and monitors with
lower resolution:
- ~8Mb for 1080p
- ~16Mb for 2k
- ~32Mb for 4k

* render: use gpu to scale bgtex and fix missing reset on size change
2026-05-04 16:08:27 +01:00
Visal Vijay 6d4bcaf075 tests: skip pointer tests in CI due to missing input environment (#14238)
* tests: skip pointer tests when pointer input is non-functional

* tests: skip pointer tests in CI due to unreliable cursor behavior

* tests: skip pointer tests when no reliable input environment is available

* tests: skip pointer tests when pointer behavior is unreliable

* tests: temporarily disable pointer tests due to unstable CI environment

* tests: enforce deterministic pointer behavior (flat accel + fixed sensitivity)

* tests: temporarily disable pointer tests due to unstable CI environment
2026-05-03 21:37:41 +01:00
Lichie 6a7abd0037 config/lua: add clear tag api (#14273) 2026-05-03 18:55:47 +01:00
Vaxry 21fa9b2ee2 config/lua: fix dispatcher shapes to not be callable (#14268)
this would only lead to abuse, explicitly forbid it
2026-05-03 15:41:44 +01:00