summaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
...
* core: move to hyprutils for utils (#6385)Vaxry2024-06-1145-835/+90
| | | | | | | | | | | | | * core: move to hyprutils for utils Nix: add hyprutils dep * Meson: add hyprutils dep * flake.lock: update --------- Co-authored-by: Mihai Fufezan <mihai@fufexan.net>
* sessionLock: fix focus not being tied to mouse (#6414)outfoxxed2024-06-111-4/+7
|
* input: fix input regions being ignored on ls-es (#6413)outfoxxed2024-06-111-1/+1
|
* groupbar: Don't apply monitor scale twice to groupbar text (#6411)zakk42232024-06-111-4/+4
|
* wayland: consistently check mmap error after 6967a3145044 (#6402)Jan Beich2024-06-102-3/+3
| | | mmap() returns MAP_FAILED on error, not nullptr.
* groupbar: Fix window title rendering (#6392)zakk42232024-06-102-21/+35
|
* wlr-foreign-toplevel: fix fullscreen failing and add output support (#6360)outfoxxed2024-06-101-2/+18
| | | | | * wlr-foreign-toplevel: fix fullscreen failing and add output support * fix for core protocol rewrite
* build: ProtocolManager missing header LIstener.hpp (#6391)memchr2024-06-101-0/+1
|
* output: remove wl_output globals for mirrored displaysVaxry2024-06-106-3/+49
| | | | ref #6387
* egl: assume implicit modifiers are available for old driversVaxry2024-06-093-6/+15
| | | | fixes #6367
* seat: fix pointer frame events not being sent correctlyVaxry2024-06-091-4/+1
| | | | fixes #6384
* helpers: fix misuse of syscalls in sd namespace (#6379)Mykola Perehudov2024-06-091-6/+6
|
* buffer: track asynchronous buffers and don't release them until unrefVaxry2024-06-086-4/+23
| | | | synchronous buffers are read instantly and we can release them, but asynchronous ones have to be locked until they are unref'd from .current to avoid reading from a buffer after .release()
* input: fix virtual devices not updating capabilities (#6366)void0red2024-06-081-6/+10
| | | Signed-off-by: void0red <void0red@gmail.com>
* build: include missing header: "debug/Log.hpp" in Format.cpp (#6365)memchr2024-06-081-0/+1
|
* renderer: allow custom uv for surface no-blur passesVaxry2024-06-081-2/+2
|
* core: verify surface roles on creation of objectsVaxry2024-06-085-9/+55
|
* wayland: fix invalid wl_output_mode dimensions sentVaxry2024-06-081-1/+1
|
* xdg_shell: ignore outdated ack_configure eventsVaxry2024-06-081-1/+3
|
* wayland/core: move to new impl (#6268)Vaxry2024-06-08143-2241/+5210
| | | | | * wayland/core/dmabuf: move to new impl it's the final countdown
* xdg_shell: fix nested xdg_positioner calculationsVaxry2024-06-071-4/+4
| | | | ref #6240
* seat: send events to all bound seats for a clientVaxry2024-06-071-47/+99
| | | | | | some apps are legitimately braindead and bind wl_seat a bazillion times and expect the events to be sent to all of them ref #6159
* gestures: Add gestures:workspace_swipe_min_fingers option (#6342)John M. Harris, Jr2024-06-072-4/+6
| | | | | | | | | | When gestures:workspace_swipe_min_fingers is enabled, gestures:workspace_swipe_fingers is considered to be the minimum number of fingers required to swipe. This behavior is more similar to sway and macOS's default behavior. For example, this allows you to set workspace_swipe_fingers to 3, but swipe with 4 or more fingers instead of 3.
* input: add cursor:persistent_warps to maintain relative position within a ↵memchr2024-06-074-15/+56
| | | | | | | | | window (#6338) Allows the cursor to return to its last relative position within a window when the window is refocused. Allows the cursor to retain its relative position within a window when the window is swapped, moved, changed workspace, added to or removed from groups. controlled with cursor:persistent_warps
* xdg_shell: improve xdg_positioner slide behaviorVaxry2024-06-071-2/+2
| | | | ref #6240
* xdg_shell: improve xdg_positioner resize calculationsVaxry2024-06-071-6/+6
| | | | ref #6240
* hookSystem: Make needsDeadCleanup volatile (#6356)John M. Harris, Jr2024-06-071-2/+2
| | | | The value of needsDeadCleanup would be clobbered after longjmp, having an undefined value.
* core: free more memory on destruction (#6348)Tom Englund2024-06-065-10/+22
| | | | | | | | | | | | | | | | | | * pointermgr: add destructor to state and free buf if the pointer has a buffer set it wont be freed upon destruction, make asan more happy by adding a destructor and wlr_buf_unlock it on exit. * cursormgr: free the animation timer event source properly free the animation timer event source on destruction. * compositor: free the critsig event source on exit properly free the critical signal event source on exit. * popup: clang format style clang format.
* log: log with local timezone (#6331)giskard2024-06-051-3/+5
| | | | | * log: log with local timezone * log: backward compatability for clang 17 with libc++
* hyprctl: Allow setting name for custom/headless outputs (#6319)phonetic1122024-06-051-49/+40
|
* popup: minor safety improvementsVaxry2024-06-052-4/+22
|
* build: fix non-pch build (#6337)memchr2024-06-051-0/+1
|
* seat: discrete round away from zero + high res scrolling (#6317)Agent00Ming2024-06-033-5/+11
| | | | | | | | * Discrete scrolling round away from zero e.deltaDiscrete can be multiples of 30 instead of the usual 120 causing the rounded value to be 0 when too small causing erratic scrolling. * Send value120 alongside discrete Fixes sensitivity issues for clients that support value120 axis events
* xwayland: don't destroy server clientVaxry2024-06-031-2/+3
| | | | | | this potentially leaks, but avoids a UAF ref #6323
* toplevelexport: avoid locking software cursors during renderVaxry2024-06-031-5/+5
| | | | | | this may trigger a render begin/end and fuck up the pass fixes #6277
* window: avoid nullptr deref on monitor in box helpersVaxry2024-06-031-5/+7
| | | | fixes #6321
* layout: fix centering of new floating windowsvaxerski2024-06-031-1/+1
| | | | ref #6154
* core: fix a few asan reported issues and a coredump on exit (#6285)Tom Englund2024-06-036-4/+30
| | | | | | | | | | | | | | | | | | * xwayland: add destructor to CXWM and free resource the wl_event_resource was running upon destruction of the compositor causing a null pointer segfault in onX11Event so ensure the event is removed upon destruction, also free the memory allocated by xcb_errors_context_new and finally call xcb_disconnect on the connection to free the fd and its memory. * hyprctl: dont leak the fd on destruction add a destructor and properly free the fd on destruction * eventloop: add destructor and free event source properly free the wl_event_source upon destruction.
* Fix initial xdg-decoration toplevel decoration mode negotiationwouter@wouterbijlsma.nl2024-06-021-0/+2
| | | | | | | | | | | | Clients using zxdg_decoration_manager_v1::get_toplevel_decoration may expect a receiving a zxdg_toplevel_decoration_v1::configure event to determine the initial decoration mode, without having to go through a zxdg_toplevel_decoration_v1::set_mode request. Hyprland was not sending this event, resulting in unwanted decorations being drawn. Specifically, clients using libdecor, e.g. applications using recent GLFW, would draw GTK decorations with artefacts. This change fixes these.
* seat: don't send keymap on empty devicevaxerski2024-06-021-0/+3
|
* renderer: fix xwayland solitary rechecks (#6295)shezdy2024-06-011-2/+2
|
* pointer: Include monitor scaling in HW hotspot calculation (#6283)obivan2024-05-311-1/+1
|
* xwayland: verify new xsurf is valid in prop readsvaxerski2024-05-291-1/+1
| | | | fixes #6250
* config: add tag dispacther and window rule (#6211)giskard2024-05-288-51/+189
|
* hyprctl: Make setcursor better (support XCursor themes, give fail message) ↵Ikalco2024-05-283-11/+48
| | | | | | | | | (#6097) * add support for changing to X cursor themes * use new hyprcursor abi for options * remove unneeded struct
* windows: make new_window_takes_over_fullscreen use the new window's ↵Connor Wong2024-05-271-5/+5
| | | | | | | workspace (#6263) * fix new_window_takes_over_fullscreen behavior * missed a few things
* compositor: change monitor focus when no_warps is enabled (#6260)AERDU2024-05-271-1/+5
| | | fixes focus between monitors when moving using directions with no_warps = true
* hyprctl: add delimiter to hyprctl batch command (#6261)Flafy2024-05-271-2/+4
| | | adds a delimiter of 3 newlines to separate different command outputs
* meson: add more xcb-* dependencies after addd3e7f1aebJan Beich2024-05-271-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ld: error: undefined symbol: xcb_icccm_get_wm_hints_from_reply >>> referenced by XWM.cpp >>> src/Hyprland.p/xwayland_XWM.cpp.o:(CXWM::readProp(CSharedPointer<CXWaylandSurface>, unsigned int, xcb_get_property_reply_t*)) ld: error: undefined symbol: xcb_icccm_get_wm_size_hints_from_reply >>> referenced by XWM.cpp >>> src/Hyprland.p/xwayland_XWM.cpp.o:(CXWM::readProp(CSharedPointer<CXWaylandSurface>, unsigned int, xcb_get_property_reply_t*)) ld: error: undefined symbol: xcb_errors_get_name_for_major_code >>> referenced by XWM.cpp >>> src/Hyprland.p/xwayland_XWM.cpp.o:(CXWM::handleError(xcb_value_error_t*)) ld: error: undefined symbol: xcb_errors_get_name_for_minor_code >>> referenced by XWM.cpp >>> src/Hyprland.p/xwayland_XWM.cpp.o:(CXWM::handleError(xcb_value_error_t*)) ld: error: undefined symbol: xcb_errors_get_name_for_error >>> referenced by XWM.cpp >>> src/Hyprland.p/xwayland_XWM.cpp.o:(CXWM::handleError(xcb_value_error_t*)) ld: error: undefined symbol: xcb_xfixes_id >>> referenced by XWM.cpp >>> src/Hyprland.p/xwayland_XWM.cpp.o:(CXWM::gatherResources()) >>> referenced by XWM.cpp >>> src/Hyprland.p/xwayland_XWM.cpp.o:(CXWM::gatherResources()) ld: error: undefined symbol: xcb_composite_id >>> referenced by XWM.cpp >>> src/Hyprland.p/xwayland_XWM.cpp.o:(CXWM::gatherResources()) ld: error: undefined symbol: xcb_res_id >>> referenced by XWM.cpp >>> src/Hyprland.p/xwayland_XWM.cpp.o:(CXWM::gatherResources()) >>> referenced by XWM.cpp >>> src/Hyprland.p/xwayland_XWM.cpp.o:(CXWM::gatherResources()) ld: error: undefined symbol: xcb_xfixes_query_version >>> referenced by XWM.cpp >>> src/Hyprland.p/xwayland_XWM.cpp.o:(CXWM::gatherResources()) ld: error: undefined symbol: xcb_xfixes_query_version_reply >>> referenced by XWM.cpp >>> src/Hyprland.p/xwayland_XWM.cpp.o:(CXWM::gatherResources()) ld: error: undefined symbol: xcb_res_query_version >>> referenced by XWM.cpp >>> src/Hyprland.p/xwayland_XWM.cpp.o:(CXWM::gatherResources()) ld: error: undefined symbol: xcb_res_query_version_reply >>> referenced by XWM.cpp >>> src/Hyprland.p/xwayland_XWM.cpp.o:(CXWM::gatherResources()) ld: error: undefined symbol: xcb_render_query_pict_formats >>> referenced by XWM.cpp >>> src/Hyprland.p/xwayland_XWM.cpp.o:(CXWM::getRenderFormat()) ld: error: undefined symbol: xcb_render_query_pict_formats_reply >>> referenced by XWM.cpp >>> src/Hyprland.p/xwayland_XWM.cpp.o:(CXWM::getRenderFormat()) ld: error: undefined symbol: xcb_render_query_pict_formats_formats_iterator >>> referenced by XWM.cpp >>> src/Hyprland.p/xwayland_XWM.cpp.o:(CXWM::getRenderFormat()) ld: error: undefined symbol: xcb_render_pictforminfo_next >>> referenced by XWM.cpp >>> src/Hyprland.p/xwayland_XWM.cpp.o:(CXWM::getRenderFormat()) ld: error: undefined symbol: xcb_errors_context_new >>> referenced by XWM.cpp >>> src/Hyprland.p/xwayland_XWM.cpp.o:(CXWM::CXWM()) ld: error: undefined symbol: xcb_composite_redirect_subwindows >>> referenced by XWM.cpp >>> src/Hyprland.p/xwayland_XWM.cpp.o:(CXWM::CXWM()) ld: error: undefined symbol: xcb_xfixes_select_selection_input >>> referenced by XWM.cpp >>> src/Hyprland.p/xwayland_XWM.cpp.o:(CXWM::initSelection()) ld: error: undefined symbol: xcb_render_create_picture >>> referenced by XWM.cpp >>> src/Hyprland.p/xwayland_XWM.cpp.o:(CXWM::setCursor(unsigned char*, unsigned int, Vector2D const&, Vector2D const&)) ld: error: too many errors emitted, stopping now (use --error-limit=0 to see all errors)
* hyprctl: Add Config Flag to `hyprctl systeminfo` (#6160)Gabriel Ford2024-05-254-2/+32
|