Commit graph

6418 commits

Author SHA1 Message Date
46174f78b3
version: bump to 0.51.0 2025-09-10 13:41:05 +01:00
Maximilian Seidler
b8cff8a434
input: focus when first keyboard is added and m_lastFocus is set (#11645) 2025-09-10 12:22:45 +02:00
Levizor
150d693fe7
hyprctl: add an active layout index field in devices (#11531) 2025-09-09 14:19:51 +01:00
jmanc3
ecc9e4d8cd
window: fix centering calculation for floating windows (#11632) 2025-09-09 12:56:33 +01:00
1e3a06560f
gestures: add unset
ref https://github.com/hyprwm/Hyprland/pull/11490
2025-09-08 20:24:51 +01:00
vaxerski
b619f39555 [gha] Nix: update inputs 2025-09-08 09:08:22 +00:00
Vaxry
02bb350bb3
screencopy: add force 8 bit to fix 10b screensharing (#11623)
ref https://github.com/hyprwm/xdg-desktop-portal-hyprland/issues/270
2025-09-08 11:07:04 +02:00
Dominick DiMaggio
bce43f74eb
presentation: handle vrr for v1 clients (#11608) 2025-09-06 19:43:03 +02:00
0xFMD
56dd1124ab
animation: fix slide/slidevert to accept params (#11574) 2025-09-06 19:24:17 +02:00
4e785d12a9
protocols/kde-deco: fix tug of war in deco mode
fixes #11591
2025-09-04 10:16:54 +01:00
Vaxry
127aab8159
input: add per-device scroll-factor (#11241) 2025-09-02 13:16:43 +02:00
Matteo Golinelli
78e86d879f
config: fix crash when monitor position contains non-integer values before/after 'x' (#11573) 2025-09-02 13:16:26 +02:00
jmanc3
00423bb738
plugins: expose csd functionality (#11551) 2025-09-02 11:49:24 +02:00
jmanc3
8a64168a43
window: treat maximize as toggle request (#11564)
Breaks the spec, but fixes a few issues due to how we always communicate to the apps that they are maximized in xdg_shell.
2025-09-01 22:44:41 +02:00
641d85b14e
CMake: fix tests message 2025-09-01 22:57:25 +03:00
0xFMD
5bb8adbc32
dispatchers: allow window address in swapwindow (#11518) 2025-08-31 18:14:39 +02:00
Ikalco
ea42041f93
protocols: implement pointer-warp-v1 (#11469) 2025-08-29 22:16:40 +02:00
UjinT34
05a1c0aa73
renderer: Fix CM for DS and SDR passthrough (#11503) 2025-08-29 13:31:07 +02:00
Vaxry
790e544689
config: update environment if cfg changes live (#11508) 2025-08-29 11:16:11 +02:00
a209f9911c
window: allow rounding power of 1
supersedes #11510
2025-08-29 11:12:37 +02:00
jmanc3
4b2bfbd85f
xwayland: fix game permanent blackscreen (#11542) 2025-08-28 11:22:00 +02:00
jmanc3
4e8657568c
xwayland: handle minimize and maximize requests (#11536) 2025-08-28 11:21:36 +02:00
Vaxry
81bf4eccba
input: Add fully configurable trackpad gestures (#11490)
Adds configurable trackpad gestures
2025-08-28 11:20:29 +02:00
vaxerski
378e130f14 [gha] Nix: update inputs 2025-08-27 20:18:24 +00:00
d7cf95b515
tablet: remove old comment 2025-08-27 22:16:46 +02:00
0ed880f3f7
protocols/activation: revert send an invalid token when serial isn't valid (#11505)
This reverts commit d9cf1cb78e.

See discussion in #11505
2025-08-24 22:59:41 +02:00
Tom Englund
b329ea8e96
syncobj: use rendernode for timelines (#11087)
* syncobj: use rendernode for timelines

use rendernode for timelines instead of the drmfd, some devices dont
support to use the drmfd for this.

* opengl: use rendernode if available

use rendernode if available for CHyprOpenglImpl

* MesaDRM: use the m_drmRenderNodeFD if it exist

try use the rendernode we got from AQ if it exist.

* linuxdmabuf: use rendernode if available

use the rendernode if available already from AQ

* syncobj: prefer rendernode over displaynode

prefer the rendernode over the displaynode, and log a error if
attempting to use the protocol without explicit sync support on any of
the nodes.

* syncobj: check support on both nodes always

check support on both nodes always so it can be used later for
preferring rendernode if possible in syncobj protocol.

* syncobj: remove old var in non linux if else case

remove old m_bDrmSyncobjTimelineSupported from non linux if else case
that will fail to compile on non linux. the nodes sets support by
default to false, and if non linux it wont check for support and set it
to true.

* build: bump aq requirement

bump to 0.9.3 where rendernode support got added.

* flake.lock: update

* renderer: glfinish on software renderer

software renderers apparently bug out on implicit sync, use glfinish as
with nvidia case on implicit paths.

* flake.lock: update

---------

Co-authored-by: Mihai Fufezan <mihai@fufexan.net>
2025-08-24 22:32:13 +02:00
Tom Englund
ced38b1b0f
disable buffer readability checks on intel (#11515)
* dmabuf: disable buffer read check on intel

readability checks directly on buffer fds on some intel laptops is
broken, see https://gitlab.freedesktop.org/drm/intel/-/issues/9415

* sync: use rvalue ref in addwaiter doonreadable

use rvalue reference in addwaiter and doonreadable, because we store the
function in the SReadableWaiter a lot of the time, move it into place
there when that happends or let it go out of scope after function call.
2025-08-24 08:57:37 +01:00
Ross
d9cf1cb78e
protocols/activation: send an invalid token when serial isn't valid (#11505) 2025-08-23 11:45:00 +01:00
UjinT34
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
jmanc3
e95ba5bf59
renderer: add eRenderStage::RENDER_POST_WALLPAPER (#11501)
Comes after the wallpaper is rendered, but before all windows and docks are rendered
2025-08-22 18:19:00 +01:00
UjinT34
4e8875b5e9
hdr: scRGB, HLG and SDR -> HDR fixes (#11499) 2025-08-22 11:13:55 +01:00
Hleb Shauchenka
fdf1612f0f
windowrules: Add novrr dynamic window rule (#11370) 2025-08-22 10:48:42 +01:00
jmanc3
42caff5587
window: fix requestedMinSize crash (#11498)
There are cases where m_isX11 is true but m_xwaylandSurface doesn't exist.
2025-08-22 08:25:27 +01:00
50a242f16a config: add dim_modal
fixes #11486
2025-08-21 14:59:20 +02:00
1ac1ff457a touch: detach from pointer input
this detaches touch from pointer input. Touch should not affect where your cursor is, and it doesn't make much sense for it to move when we use touch
2025-08-20 13:01:31 +02:00
9a20206945 touch: fix popup coordinates for touch down
fixes #10626
2025-08-20 12:22:18 +02:00
Mike Will
10cec2b7e2
dwindle: simplify split_bias logic and set of possible values. (#11448) 2025-08-19 19:32:37 +01:00
Linux User
d0d728c6a6
render: include numbers header (#11475)
Fixes error `no member named 'numbers' in namespace 'std'` on llvm/musl
2025-08-19 19:31:01 +01:00
Aaron Tulino
3370a6a83d
monitor: fix dpms toggling animations when state is unchanged (#11480) 2025-08-19 19:30:26 +01:00
UjinT34
1d67987459
hdr: fix overrides and missing edid hdr metadata (#11476) 2025-08-19 19:28:52 +01:00
Tom Englund
1a0ed00f74
protocols/wayland: use UP and rvalue refs for callbacks (#11471)
use UP and rvalue refs in CWLCallbackResource and m_callbacks.
2025-08-18 16:42:19 +01:00
Luke Barkess
21953ddf3d
hyprctl: add getprop (#11394) 2025-08-18 16:41:17 +01:00
Hato
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
Kamikadze
bca96a5d3b
protocols: Fix fading out windows with noscreenshare being visible (#11457) 2025-08-17 20:17:22 +01:00
dfe58c4809 compositor: mark createNewWorkspace as nodiscard
discarding this makes the call do nothing but waste cycles
2025-08-17 20:33:04 +02:00
e8731883a5 compositor: fix new workspace being lost in moveWorkspaceToMonitor
with the move to refcounting workspaces, createNewWorkspace would've lost the ref

fixes #11385
2025-08-17 20:33:04 +02:00
Vaxry
0840103ae0
renderer: improve modeset timings (#11461)
some CRTCs will just happily eat frames and we can't do much. Some will eat one.

Adds a 5-frame buffer to DPMS and Added animations. Better than nothing.
2025-08-17 17:14:29 +01:00
Vaxry
251288ec59
renderer: add dpms animations (#11452) 2025-08-17 08:37:13 +01:00
Vaxry
3d4dc19412
renderer: improve zoom in anims (#11453)
Removes `animations:first_launch_animation` as it's useless now
2025-08-16 20:02:15 +01:00