Commit Graph

4892 Commits

Author SHA1 Message Date
Kamikadze
69c2b2926e internal: refactor to use empty() (#10599) 2025-05-31 19:49:50 +01:00
Kamikadze
4078e1d17c refactor: replace all typedef with using (#10594) 2025-05-31 14:02:02 +01:00
Kamikadze
9190443d95 refactor: use std::ranges whenever possible (#10584) 2025-05-30 14:25:59 +01:00
littleblack111
9bf1b49144 snap: add option to respect gaps (#10524) 2025-05-28 14:20:03 +01:00
vaxerski
5cc6cb4945 groupbar: force recalc on visibility changes
fixes #10566
2025-05-28 15:18:30 +02:00
vaxerski
9b327ddfd1 monitor: mark 0, 0 presentation timestamps as invalid
fixes #10562
2025-05-27 21:26:47 +02:00
Kamikadze
24915a3a9b windowrules: Add noscreenshare (#10482) 2025-05-27 16:10:22 +01:00
Nikolaos Karaolidis
90d0b8ecae core: add auto-center arrangements (#10527)
Signed-off-by: Nikolaos Karaolidis <nick@karaolidis.com>
2025-05-27 15:51:59 +01:00
littleblack111
ddb9f8394d config: fix inconsistant hint of default value (#10556)
similar to https://github.com/hyprwm/hyprland-wiki/pull/1093
2025-05-27 15:50:00 +01:00
littleblack111
a62ccb169a config: fix crash on misnamed variable (#10549) 2025-05-27 08:33:17 +01:00
Nikolaos Karaolidis
c2805aad92 config: add maxwidth monitor resolution mode (#10528)
Signed-off-by: Nikolaos Karaolidis <nick@karaolidis.com>
2025-05-26 19:25:58 +02:00
littleblack111
4c4c9bb324 dwindle: add better automatic window drag and drop direction detection (#9704) 2025-05-26 19:15:11 +02:00
Vaxry
292a7456af eventLoop: fixup headers 2025-05-26 16:53:35 +02:00
Vaxry
2347050285 pass/surface: make sure popup blurs are marked for require live blur
fixes #10535
2025-05-25 18:48:32 +02:00
Vaxry
a58ab20e8b debug/pass: show live/precompile blur in debug 2025-05-25 18:45:28 +02:00
Vaxry
55076edaac versionkeeper: don't pop up on initial launch 2025-05-24 20:39:36 +02:00
Virt
81cd526f92 cursor: fix screencopy cursor pos and duplicate shape with sw cursors (#10519)
* cursor: account for hotspot with overridePos

* cursor: don't draw cursor on screencopy if using sw anyways
2025-05-23 23:41:35 +02:00
darkwater
185c96849e input: unhide cursor on tablet events after touch events (#10484) 2025-05-21 23:44:21 +02:00
zacoons
b90910c0dc renderer: add wrapping options to renderTexture method (#10497) 2025-05-21 16:41:40 +01:00
Vaxry
eb3b38d40b eventLoop: fixup event source callbacks 2025-05-19 01:27:30 +02:00
Vaxry
d9c8a37811 input: always allow focus to permission popups 2025-05-18 19:34:20 +02:00
Vaxry
158c0f2911 permissions: add permission management for keyboards (#10367) 2025-05-18 19:13:20 +02:00
zacoons
44cb8f769e internal: added error log when getEdgeDefinedPoint is impossible (#10462) 2025-05-18 19:10:06 +02:00
Vaxry
705b97c4ac input: revert #10416 and #10418
fixes #10451
2025-05-17 19:43:12 +02:00
Vaxry
bb5cd5b2dd screencopy: store a fb before permission popup if the permission is pending (#10455)
stops rendering the permission popup on stuff like grim when it asks
2025-05-17 19:03:35 +02:00
outfoxxed
2aa21625bd input: ensure seat grabs from exclusive layers can be dismissed (#10418) 2025-05-17 13:06:48 +02:00
outfoxxed
2946009006 input: do not send mouse events when outside of a surface (#10416) 2025-05-16 23:39:28 +02:00
outfoxxed
b0cc49218d protocols: simulate mouse movement after activating a toplevel (#10429) 2025-05-16 23:38:45 +02:00
outfoxxed
dfb841c303 desktop: prevent layers from dismissing their own seat grabs on map (#10417) 2025-05-15 10:16:03 +01:00
Tom Englund
5ceb0ec15d core: drop the legacy renderer (#10408)
* core: drop the legacy renderer

the legacy renderer is broken and barely used, drop it.

* Nix: drop support for legacyRenderer

---------

Co-authored-by: Mihai Fufezan <mihai@fufexan.net>
2025-05-15 10:13:24 +01:00
outfoxxed
f707d86912 protocols/hyprland-surface: account for scaled monitor positions (#10415) 2025-05-15 10:12:55 +01:00
Yukari Chiba
75f2cb5f65 xwayland: do not include xcb.h when xwayland is disabled (#10407)
xcb.h should not be included when xwayland is disabled. 
This allows hyprland to not use X11 libraries at all when xwayland is disabled.
2025-05-14 19:31:19 +01:00
Vaxry
a51e639d81 input: disallow virtual keyboards from changing LED state (#10402) 2025-05-14 17:48:17 +01:00
Tom Englund
59b2340680 opengl: add missing vao for screenshader (#10397)
missed creating vertex array objects in 04124988e8
add it.
2025-05-13 23:46:29 +01:00
outfoxxed
da3583fd5e opengl: publicize shader creation/usage functions (#10378)
Allows plugins to create and use shaders again
2025-05-12 14:15:47 +02:00
Tom Englund
04124988e8 opengl: optimize shaders and reduce unneeded drawcalls (#10364)
* opengl: remove unnecessery glflush calls

glflushing forces the driver to break batching and issue commands
prematurely and prevents optimisations like command reordering and
merging.

many glFunctions already internally glflushes and eglsync creation still
has a glflush at end render. so lets reduce the overhead of these calls.

* opengl: reduce glUseProgram calls

apitrace shows cases where the same program gets called multiple times,
add a helper function that keeps track of current program and only call
it once on same program. reduces slight overhead.

* opengl: use more efficient vertex array object

use a more modern vertex array object approach with the shaders, makes
it a onetime setup on shader creation instead of once per drawcall, also
should make the driver not have to revalidate the vertex format on each
call.
2025-05-11 18:36:20 +02:00
Vaxry
390a357859 renderer: use alpha for the lockttytext texture
ref #10348
2025-05-11 13:15:03 +01:00
Vaxry
9a87498bb1 renderer: minor damage fixes 2025-05-10 23:53:05 +01:00
Vaxry
f58bb72d3a renderer: render blur on fade out (#10356) 2025-05-10 19:31:26 +02:00
vaxerski
60cd5b7a48 renderer: always render snapshots as 8bit
fixes issues with transparent windows on 10b
2025-05-09 22:16:21 +01:00
Vaxry
239cdd67fd socket2: fix order of window events on map (#10341) 2025-05-08 22:10:31 +02:00
s1dd
f01e3043b8 desktop: cleanup code and use std::ranges (#10289) 2025-05-08 21:01:49 +02:00
Vaxry
04c98abd1f layout: properly assign workspace and monitor when moving a child to the parent (#10338) 2025-05-08 21:00:28 +02:00
nyx
53bfb92d65 layout: allow interacting with pinned windows when fullscreened (#10326)
* layout: allow interacting with pinned windows when fullscreened

* IHyprLayout: format code

* e
2025-05-08 20:59:51 +02:00
Vaxry
f909b0f114 opengl: fix legacyrenderer 2025-05-08 18:22:44 +01:00
MightyPlaza
fa1e343b04 compositor: set fullscreenstate on movetoworkspace (#10303)
modified:   src/managers/KeybindManager.cpp
2025-05-08 18:29:47 +02:00
davc0n
22b12e3013 refactor: cshader class to sshader struct (#10324) 2025-05-08 00:07:35 +02:00
Tom Englund
6abb5b0c7e renderer: precompute fullalpha (#10319)
precompute it once instead of calculating it every single call, was showing
up as a lot of time wasted in profiling.
2025-05-07 19:02:07 +02:00
Tom Englund
0dfcba9825 DMABuffer: reserve vector and avoid UB (#10317)
actually reserve the vector instead of initializing it with the
m_attrs.fd.size() adding 4 invalid fd entries, and later emplace_back
the valid ones.

sync_merge_data name is defined as char name[32] a fixed size array, and
c++ technically doesnt allow assigning string literals directly to array
fields in aggregate initializers, it may compile but is technically
undefined behaviour or ill formed. zero initalise it and use
std::ranges::copy_n instead.
2025-05-07 18:15:27 +02:00
davc0n
e5df8cdc62 xwayland: refactor class member vars (#10312)
* xwayland: refactor class member vars

* xwayland: fix pure wayland build
2025-05-07 15:21:44 +02:00