| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
|
| |
These are: pointer_shape from the cursor-shape-v1 protocol prepared for v2, along with left_ptr...bottom_right_corner and killing (Hyprland specific)
pointer_shape_previous with
pointer_switch_time to blend between shapes
pointer_size scaled size as used by the normal cursor
pointer_pressed_positions[32] with
pointer_pressed_times[32] and
pointer_pressed_killed(32 bits) for click/touch animations and if they killed something
pointer_inactive_timeout with
pointer_last_active to smoothly fade the pointer out
pointer_hidden to hide it when the cursor is hidden (excluding by cursor:invisible as this config value can be used to turn off the normal cursor, which is useful when drawing it with the screen shader)
|
| |
|
|
|
|
|
| |
Bumps required hyprgraphics to 0.1.6
---------
Co-authored-by: Mihai Fufezan <mihai@fufexan.net>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 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>
|
| |
|
|
|
|
|
|
|
|
|
|
| |
* 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.
|
| |
|
|
|
| |
solitary/tearing/DS checks (#11228)
Adds more verbose checks for various conditional rendering mechanisms
|
| |
|
| |
Removes `animations:first_launch_animation` as it's useless now
|
| |
|
| |
Adds xdg popup fade-in and fade-out
|
| | |
|
| |
|
| |
Avoid rendering the workspace behind if we are locked
|
| |
|
|
|
|
|
|
|
| |
Implements a new render scheduling method, where we triple buffer when necessary.
Enabled by default, improves FPS on underpowered devices.
---------
Co-authored-by: Mihai Fufezan <mihai@fufexan.net>
|
| |
|
|
| |
were not used anymore, explicit is on by default
|
| | |
|
| | |
|
| |
|
|
|
| |
* render: refactor class member vars
* render: fix clang format
|
| |
|
|
|
|
|
|
|
| |
* cleanup eglSync
* properly release buffers in renderer
* add renderingDoneCallback and use it in screencopy
* use static constructor for CEGLSync
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
| |
(#9398)
The explicit settings ignore the aquamarine output.supportsExplicit
attribute, which creates glitches on drivers not supporting explicit
sync (example: freedreno).
If the output has been set as not supporting explicit, disable the
explicit settings.
|
| |
|
|
| |
in favor of const refs
|
| |
|
|
|
| |
* refactor: use weak pointers for session lock surfaces
* input: pass touch events to lock screens
|
| | |
|
| | |
|
| |
|
| |
Cleanup some unneeded includes to speed up compilation
|
| | |
|
| | |
|
| | |
|
| |
|
| |
This rewrites renderer scheduling. Occlusion is now unified in a new Pass type.
|
| |
|
|
|
| |
This adds a .clang-tidy file for us.
It's not a strict requirement to be compliant, but I tuned it to be alright.
|
| |
|
|
| |
ref #8221
|
| |
|
|
|
| |
* move monitors to sp
* XD
|
| | |
|
| | |
|
| |
|
|
|
| |
---------
Co-authored-by: Mihai Fufezan <mihai@fufexan.net>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
| |
|
|
|
| |
Enables explicit sync by default for most platforms
`misc:no_direct_scanout` -> `render:direct_scanout`
|
| |
|
|
|
| |
* move screencopy and toplevel export to hyprwayland-scanner
* oops
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
| |
|
|
|
|
| |
Moves CRegion, CBox and Vector2D over to hyprutils.
Requires hyprutils>=0.1.4
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* option to fix mouse breaking vrr
* skip damage on mouse move
* remove this-> & cleanup
* add cursor:min_refresh_rate to avoid cursor freezing
* run clang-format
---------
Co-authored-by: UjinT34 <ujin@uvpn.ru>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* renderer: add destructor and destroy event source
add destructor and destroy the event source.
one less leak on exit of compositor reported by asan.
* compositor: cleanup eventloop on exit
destruct hyprctl to release the event sources, and properly cleanup the
event loop on exit of compositor. less leaks on exit reported by asan
* threadmgr: destroy event source on destruction
destroy the event source on destruction.
* eventloopmgr: reset eventloopmgr on exit aswell
reset the eventloopmanager on exit of compositor and free the leaking
last idle frame on monitor destroy.
|
| |
|
|
|
| |
* wayland/core/dmabuf: move to new impl
it's the final countdown
|
| |
|
|
| |
Also bumps the hw-s dep
|
| |
|
|
|
|
|
| |
This moves wlr_cursor to a completely new impl mostly under
CPointerManager
Also adds beginSimple to OpenGL for simple render passes (e.g. cursor)
|
| | |
|
| |
|
|
|
| |
Makes all the pointers smart to avoid memory issues
Refactors layerSurface code to live inside desktop/layersurface
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Window storage rework - part 1
* format
* remove useless include
* fix pch
* format
* fix crash in dwindle
* fix vram leak
* prefer .expired() for bool checks
|
| |
|
|
| |
fixes #5711
|
| |
|
|
|
| |
* tearing: hl impl
* format
|
| |
|
|
|
| |
* refactor workspaces to use ptrs
* clang-format
|
| |
|
|
| |
offsets (#5297)
|