9232bc2c00
internal: move to hyprutils' scopeguard
...
bumps hyprutils dep to 0.2.2
2024-09-21 00:37:17 +01:00
darkwater
04421063af
config: add order rule for layers ( #7697 )
2024-09-09 10:10:08 +01:00
Ikalco
838ed87d6f
renderer: minor direct scanout fixes ( #7594 )
2024-08-31 15:07:52 +02:00
Vaxry
c5fd577181
config: Add a window rule to render while unfocused ( #7582 )
2024-08-30 17:37:52 +02:00
fbd6354393
presentation-feedback: minor fixups
2024-08-30 15:53:45 +02:00
1c9d56998d
xdg-dialog: implement new protocol
2024-08-30 15:53:44 +02:00
Vaxry
604eb21a7e
renderer: better lockscreen dead behavior ( #7574 )
...
---------
Co-authored-by: Mihai Fufezan <mihai@fufexan.net>
2024-08-29 23:30:12 +02:00
b9b8e6220f
renderer: fade out windows on silent moves
2024-08-28 21:54:49 +02:00
Ikalco
98e99cd03d
renderer: ensure buffer format on commit ( #7556 )
2024-08-28 15:07:13 +02:00
Tom Englund
72c7818ae6
misc: constify the remaining for loops ( #7534 )
...
now we roll loops at blazing constified speed.
2024-08-26 20:24:30 +02:00
Tom Englund
8d6c18076f
core: make most for loops use const references ( #7527 )
...
why not let the compiler optimise things for us at hyprspeeds when we
can.
2024-08-26 17:25:39 +02:00
50348a3ddb
renderer: pass custom modelines to aq
...
ref #7390
2024-08-18 20:19:13 +02:00
912e7ba82d
render: fixup format mismatch after leaving DS
...
fixes #7373
2024-08-17 19:27:20 +02:00
Tom Englund
1840a907a8
renderbuffer: ensure framebuffer gets deleted ( #7363 )
...
after commit 4b4971c
it uses m_iFbAllocated and deletes if upon calling
release() but Renderbuffer generates directly on m_iFb without calling
alloc() meaning it wont be deleted on release(), set m_iFbAllocated to
true after generating the buffer.
2024-08-16 10:09:01 +01:00
davc0n
197f880790
logs: Add file path to asset ERR log ( #7336 )
2024-08-14 18:35:07 +01:00
Tom Englund
3fa6db1e7a
core: fix data race and a unsigned int rollover ( #7278 )
...
* keybindmgr: avoid uint rollover on mouse keycode
mouse keycode is 0, and the switch case checks for 0 - 8 and rolls over,
just return early if keycode is 0.
* watchdog: avoid data races in watchdog
asan thread sanitizer reported data races in the watchdog from reading
and setting the bool variables make them std::atomic bools. also add a
atomic bool for the main thread to wait for to avoid data race when
reading the config values.
* hyprdebug: change non unicode character to name
asan created false positives and didnt like this bit, so for the sake of
easier debugging rename it to something unicode.
2024-08-12 18:19:03 +01:00
Walt Bringenberg
01ff5fdf6a
cursor: make inactive_timeout setting a float ( #7268 )
2024-08-10 21:42:45 +01:00
Tom Englund
4b4971c06f
internal: introduce new types to avoid unsigned int rollover and signed int overflow ( #7216 )
...
* framebuffer: avoid gluint overflow
GLuint was being initialized to -1 and rolling over to unsigned int max,
its defined behaviour but very unnecessery. add a bool and use it for
checking if allocated or not.
* opengl: avoid gluint rollover
-1 rolls over to unsigned int max, use 0xFF instead.
* core: big uint64_t to int type conversion
there were a few uint64_t to int implicit conversions overflowing int
and causing UB, make all monitor/workspaces/windows use the new
typedefs. also fix the various related 64 to 32 implicit conversions
going around found with -Wshorten-64-to-32
2024-08-08 21:01:50 +02:00
2d552fbaa2
renderer: fixup nvidia driver version checks
2024-08-07 18:54:45 +02:00
2e3dc17a7e
renderer: guard layer in renderLayer
...
ref #7181
2024-08-07 13:31:32 +02:00
d597ae41b9
renderer: fixup crashes on inaccessible files for bg
2024-08-06 16:57:15 +02:00
Vaxry
640d161851
renderer: Explicit sync fixes ( #7151 )
...
Enables explicit sync by default for most platforms
`misc:no_direct_scanout` -> `render:direct_scanout`
2024-08-06 15:52:19 +02:00
5dd2c27b63
CMake, Meson: install config and wallpapers to DATADIR/hypr
...
OpenGL: get wallpapers dir from DATAROOTDIR
2024-08-04 15:19:37 +03:00
MightyPlaza
51ffd7fa6f
decorations: fix infinite recursion on no_gaps when only ( #7169 )
...
modified: src/layout/DwindleLayout.cpp
modified: src/layout/MasterLayout.cpp
modified: src/render/decorations/CHyprBorderDecoration.cpp
2024-08-03 19:50:08 +02:00
60571cd5cc
border: fixup infinite recursion
...
ref #7127
2024-08-01 12:36:15 +02:00
Vaxry
37e1411e8d
core/surface/buffer: Buffer lock/release fixes ( #7110 )
2024-07-31 21:47:26 +02:00
MightyPlaza
e989a0bcff
internal: refactor fullscreen states ( #7104 )
...
* refactor fullscreen
modified: src/Compositor.cpp
modified: src/Compositor.hpp
modified: src/config/ConfigManager.cpp
modified: src/config/ConfigManager.hpp
modified: src/debug/HyprCtl.cpp
modified: src/desktop/LayerSurface.cpp
modified: src/desktop/Window.cpp
modified: src/desktop/Window.hpp
modified: src/desktop/Workspace.cpp
modified: src/desktop/Workspace.hpp
modified: src/events/Windows.cpp
modified: src/helpers/Monitor.cpp
modified: src/layout/DwindleLayout.cpp
modified: src/layout/DwindleLayout.hpp
modified: src/layout/IHyprLayout.cpp
modified: src/layout/IHyprLayout.hpp
modified: src/layout/MasterLayout.cpp
modified: src/layout/MasterLayout.hpp
modified: src/managers/KeybindManager.cpp
modified: src/managers/KeybindManager.hpp
modified: src/managers/input/IdleInhibitor.cpp
modified: src/managers/input/InputManager.cpp
modified: src/managers/input/Swipe.cpp
modified: src/protocols/ForeignToplevelWlr.cpp
modified: src/render/Renderer.cpp
modified: src/render/decorations/CHyprGroupBarDecoration.cpp
* clean up
modified: src/config/ConfigManager.cpp
modified: src/debug/HyprCtl.cpp
modified: src/desktop/Window.hpp
modified: src/desktop/Workspace.cpp
modified: src/events/Windows.cpp
modified: src/managers/KeybindManager.cpp
modified: src/managers/input/Swipe.cpp
* fix mapWindow fullscreen
modified: src/events/Windows.cpp
* fix typo
modified: src/desktop/Workspace.cpp
* add fullscreenstate
modified: src/config/ConfigManager.cpp
modified: src/events/Windows.cpp
* change syncFullscreen to lower
modified: src/config/ConfigManager.hpp
* initialize fs state
modified: src/desktop/Window.hpp
2024-07-31 19:55:52 +02:00
cc7c117fe7
output: minor tearing fixes
2024-07-30 15:50:14 +02:00
1c221240d0
output: submit damage to kms
2024-07-30 15:46:41 +02:00
Tom Englund
9c38b0fdbe
core: add a destructor to CHyprOpenglImpl and avoid wl_container_of undefined behaviour ( #7101 )
...
* protocols: avoid undefined behaviour in C macro
to safely use wl_container_of with a class the class has to be no
virtual functions, no inheritance, and uniform access control (e.g all
public)
work around this by putting this into a destroywrapper struct.
* opengl: clean memory on destruction
add a destructor and free the allocated memory and close the fd
2024-07-29 19:29:08 +02:00
70468857da
egl: attempt a 3.2 egl context first
2024-07-29 14:27:05 +02:00
87699575e1
egl: require gles 3.0 only
...
No clue what could break, hopefully nothing
ref #6973
2024-07-29 14:23:19 +02:00
141cd09bd3
renderer: use session lock alpha for rendering lacking locks
2024-07-27 18:13:41 +02:00
Ikalco
ec672b1ab9
protocols: move screencopy and toplevel export to hyprwayland-scanner ( #7065 )
...
* move screencopy and toplevel export to hyprwayland-scanner
* oops
2024-07-27 16:02:02 +01:00
76610d9fb0
opengl: destroy cairo image surface after use
2024-07-27 13:03:43 +02:00
57371b93a0
renderer: drastically optimize bg texture creation
...
stop loading 20MB images every time, dumbass
2024-07-26 19:53:24 +02:00
b16fb9770c
egl: support getting the device via platform_device
...
a neat EXT
2024-07-24 18:53:51 +02:00
Sam Lakerveld
3c758db95c
renderer/layer-shell: use explicitly set exclusiveEdge ( #6984 )
2024-07-22 23:36:58 +02:00
7c68236a51
egl: avoid setting debug mode and handle legacyrenderer
...
ref #6973
2024-07-22 23:05:22 +02:00
1797319a07
renderer: untransform textures matching display transform
...
fixes #6754
This will break if the client uses a transform that is not equal to the display, reverting to old behavior. Combining transforms is left as a todo for the future.
2024-07-22 13:01:55 +02:00
5979ceb56b
surface: fixup logical damage size calculations
...
fixes #6618
2024-07-22 12:38:05 +02:00
672bf1f867
compositor: ignore setting surface scanout if DS is disabled
2024-07-21 23:52:16 +02:00
33e933e2a0
renderer: drop redundant spammy trace log
2024-07-21 22:09:29 +02:00
Vaxry
016da234d0
Core: Move to aquamarine ( #6608 )
...
Moves Hyprland from wlroots to aquamarine for the backend.
---------
Signed-off-by: Vaxry <vaxry@vaxry.net>
Co-authored-by: Mihai Fufezan <mihai@fufexan.net>
Co-authored-by: Jan Beich <jbeich@FreeBSD.org>
Co-authored-by: vaxerski <vaxerski@users.noreply.github.com>
Co-authored-by: UjinT34 <41110182+UjinT34@users.noreply.github.com>
Co-authored-by: Tom Englund <tomenglund26@gmail.com>
Co-authored-by: Ikalco <73481042+ikalco@users.noreply.github.com>
Co-authored-by: diniamo <diniamo53@gmail.com>
2024-07-21 13:09:54 +02:00
Party Wumpus
293e687389
renderer: Make shader time always count from zero ( #6903 )
...
* testing out an initialtime variable
* Make time universally start at zero instead of exposing an initial time
* Appease the CI
2024-07-16 22:03:10 +02:00
Mihai Fufezan
da956c8a97
config: use hyprutils helper ( #6891 )
...
* flake.lock: update
nix/overlays: remove xwayland overlay (merged upstream)
* config: use hyprutils helper
* flake.lock: update
* CMake & Meson: update required versions
2024-07-16 21:23:37 +02:00
MightyPlaza
ed6c701144
renderer: partially revert previous xray fix ( #6868 )
...
modified: src/render/OpenGL.cpp
2024-07-13 20:29:07 +02:00
13bc7e1e14
style: fix clang-format
2024-07-13 12:36:35 +02:00
Junxuan Liao
7486576fa7
session-lock: send locked
after the lock screen is properly rendered ( #6850 )
...
The protocol says:
> The locked event "must not be sent until a new "locked" frame (either from a
> session lock surface or the compositor blanking the output) has been presented
> on all outputs and no security sensitive normal/unlocked content is possibly
> visible".
This helps users ensure the screen is properly locked before suspending
the machine. (e.g. with swaylock --ready-fd)
2024-07-13 12:32:08 +02:00
MightyPlaza
f85c6416c6
renderer: fix a few xray regressions ( #6855 )
...
* fix xray unset
modified: src/render/OpenGL.cpp
* fix xwray unset
modified: src/render/OpenGL.cpp
2024-07-12 23:05:19 +02:00