summaryrefslogtreecommitdiff
path: root/src/xwayland/XWM.cpp
Commit message (Collapse)AuthorAgeFilesLines
* cliplittleblack1112026-02-151-1/+30
|
* xwayland/xwm: fix _NET_WM_STATE_MAXIMIZED_VERT type (#13151)Tom Englund2026-01-301-2/+2
| | | add _ infront of the atom name. as it should be.
* xwayland/xwm: handle INCR clipboard transfer chunks correctly (#13125)Zynix2026-01-301-7/+28
| | | | | Handle XCB_PROPERTY_NEW_VALUE events for incremental selection transfers. Previously only DELETE was handled, causing INCR transfers to fail after the first chunk.
* xwayland/xwm: prevent onWrite infinite loop and clean orphan transfers (#13122)Zynix2026-01-291-8/+27
| | | | | | | | | | | | Fixes #11411 - Add return 0 after erasing completed non-incremental transfer to stop event source polling - Add removeTransfer() helper to SXSelection for cleaning transfers by window ID - Add removeTransfersForWindow() helper to CXWM for cleaning all selections at once - Clean orphan transfers in handleDestroy before surface removal - Clean orphan transfers in handlePropertyNotify on missing window or failed reply - Add m_dndSelection to handleSelectionPropertyNotify cleanup loop - Initialize SXTransfer members with safe defaults to prevent undefined behavior - Fix race condition in getTransferData by using window ID lookup instead of index
* debug: move to hyprutils' logger (#12673)Vaxry2025-12-181-88/+89
|
* desktop: cleanup, unify desktop elements as views (#12563)Vaxry2025-12-081-1/+1
|
* compositor: Configurable behavior when window to be focused conflicts with ↵Nikolai Nechaev2025-11-251-1/+2
| | | | | | | | | | fullscreen (#12033) Renames `misc:new_window_takes_over_fullscreen` into `misc:on_focus_under_fullscreen` and implements the following behavior: - By default, when a tiling window is being focused on a workspace where a fullscreen/maximized window exists, respect the `misc:on_focus_under_fullscreen` config variable.
* xwayland: set _NET_WORKAREA property (#12148)jmanc32025-10-291-1/+17
|
* xwm: attempt to guess mime in sendData for DnDVaxry2025-10-211-2/+48
|
* internal: fix clang-tidy "errors" (#11862)UjinT342025-09-291-4/+4
|
* xwayland: handle minimize and maximize requests (#11536)jmanc32025-08-281-0/+11
|
* xwayland: prevent infinite event loop in XWM clipboard transfers (#11427)Aditya Lohuni2025-08-151-1/+4
| | | | | | Only recreate event source when onWrite() returns 1 (needs continuation). Prevents infinite loop when no valid transfers are available, fixing high CPU usage and error spam.
* refactor: Use new hyprutils casts (#11377)Kamikadze2025-08-141-38/+38
|
* xwl: dont mark the even source as readableTom Englund2025-07-111-1/+0
| | | | | | wl_event_source_check makes the event trigger until onx11event returns non zero. but we arent removing the event source from the event loop so lets not mark it at all and recieve spurious constant calls.
* core: use new typed signals from hu (#10853)outfoxxed2025-07-081-7/+6
|
* xwayland: Fix crash when copying from wayland to xwayland (#10786)Jasson2025-06-191-98/+110
|
* xwayland: fix minor errors in previous refactor (#10763)Jasson2025-06-181-36/+39
|
* xwayland: Use RAII instead or freeing memory manually (#10677)Jasson2025-06-161-75/+78
| | | As suggested by clang-tidy
* xwayland: fix xwayland -> wayland clipboard (#10646)Jasson2025-06-041-0/+1
|
* xwm: Refactored functions in XWM.cpp (#10569)Jasson2025-06-011-116/+149
| | | | | | | | | | | | * Refactored SXSelection::onSelection in XWM.cpp - Made the function more readable and less redundant - Extracted repeated conditions into booleans. - Reduced nested conditionals - Reused (conn) pointer * Refectd readProp * Refactor initSelection
* refactor: use std::ranges whenever possible (#10584)Kamikadze2025-05-301-4/+4
|
* xwayland: refactor class member vars (#10312)davc0n2025-05-071-300/+303
| | | | | * xwayland: refactor class member vars * xwayland: fix pure wayland build
* protocols: refactor class member vars (u-z) (#10282)davc0n2025-05-041-5/+5
| | | | | * protocols: refactor class member vars (u-z) * protocols: fix clang format
* protocols: refactor class member vars (core) (#10259)davc0n2025-05-031-1/+1
|
* managers: refactor class member vars (#10242)davc0n2025-05-021-15/+15
|
* windows: refactor class member vars (#10168)davc0n2025-04-281-2/+2
|
* compositor: refactor class member vars (#10141)davc0n2025-04-221-5/+5
|
* debug: refactor class member vars (#10130)davc0n2025-04-211-1/+1
|
* xwayland: sync primary selection with wayland (#9952)nyx2025-04-081-17/+54
|
* internal: Fix compiler warnings (#9646)Lee Bousfield2025-03-171-1/+1
|
* xwayland: improve dnd and cleanup (#9405)nyx2025-02-241-30/+9
| | | | | | | Minor changes to xwayland dnd / regular dnd to fix various issues --------- Co-authored-by: Vaxry <vaxry@vaxry.net>
* anr: add xwayland support (#9456)Vaxry2025-02-211-10/+20
| | | Adds XWayland support to ANR dialogs
* xwayland: add INCR support for clipboard transfers (#9434)nyx2025-02-191-5/+24
| | | | | | add INCR protocol support for large transfers fix write handling for partial transfers fix an issue where wayland windows could die from a paste from an xwayland window
* xwayland: configure on a configure request and cleanup geometry conversion ↵Maximilian Seidler2025-02-161-4/+5
| | | | | | | | | (#9375) * xwayland: configure the window on a configure request * xwayland: move coordinate conversion handling to their own functions * xwayland: rename configure to configureRequest
* xwayland: fix a possible clipboard race condition (#9394)nyx2025-02-151-17/+64
|
* core: avoid .at() and use [] operator (#9347)Tom Englund2025-02-061-2/+2
| | | avoid .at() where it makes sense and use [] operator in loops.
* core: begin using CFileDescriptor from hyprutils (#9122)Tom Englund2025-01-301-12/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * config: make fd use CFileDescriptor make use of the new hyprutils CFileDescriptor instead of manual FD handling. * hyprctl: make fd use CFileDescriptor make use of the new hyprutils CFileDescriptor instead of manual FD handling. * ikeyboard: make fd use CFileDescriptor make use of the new CFileDescriptor instead of manual FD handling, also in sendKeymap remove dead code, it already early returns if keyboard isnt valid, and dont try to close the FD that ikeyboard owns. * core: make SHMFile functions use CFileDescriptor make SHMFile misc functions use CFileDescriptor and its associated usage in dmabuf and keyboard. * core: make explicit sync use CFileDescriptor begin using CFileDescriptor in explicit sync and its timelines and eglsync usage in opengl, there is still a bit left with manual handling that requires future aquamarine change aswell. * eventmgr: make fd and sockets use CFileDescriptor make use of the hyprutils CFileDescriptor instead of manual FD and socket handling and closing. * eventloopmgr: make timerfd use CFileDescriptor make the timerfd use CFileDescriptor instead of manual fd handling * opengl: make gbm fd use CFileDescriptor make the gbm rendernode fd use CFileDescriptor instead of manual fd handling * core: make selection source/offer use CFileDescriptor make data selection source and offers use CFileDescriptor and its associated use in xwm and protocols * protocols: convert protocols fd to CFileDescriptor make most fd handling use CFileDescriptor in protocols * shm: make SHMPool use CfileDescriptor make SHMPool use CFileDescriptor instead of manual fd handling. * opengl: duplicate fd with CFileDescriptor duplicate fenceFD with CFileDescriptor duplicate instead. * xwayland: make sockets and fds use CFileDescriptor instead of manual opening/closing make sockets and fds use CFileDescriptor * keybindmgr: make sockets and fds use CFileDescriptor make sockets and fds use CFileDescriptor instead of manual handling.
* xwayland: respect window size set by configure requests (#9190)DDoSolitary2025-01-281-2/+2
|
* core: move all shared_ptrs from the STL to hyprutils (#9143)Vaxry2025-01-231-4/+4
|
* xwayland: fix sending large clipboard data (#9134)DDoSolitary2025-01-221-21/+34
|
* xwayland: support sending clipboard change notification on focus (#9111)DDoSolitary2025-01-201-1/+12
|
* core: reserve vector sizes as much as we can (#9118)Tom Englund2025-01-191-0/+4
| | | | | avoid reallocations as much as possible with a few edge cases where the reservation overshoots a tiny bit. but a few bytes of memory short term is better used then the overhead of potential reallocation.
* xwm: fixup targets in selection requestsVaxry2024-12-181-1/+8
| | | | fixes #8719
* xwayland: Support cross DnD from Wayland (#8708)Vaxry2024-12-151-23/+124
| | | Adds support for drag-and-drop from Wayland clients to XWayland ones
* core: Add clang-tidy (#8664)Vaxry2024-12-071-13/+13
| | | | | This adds a .clang-tidy file for us. It's not a strict requirement to be compliant, but I tuned it to be alright.
* xwayland: minor fixups for stability (#8323)trianta2024-11-031-0/+3
| | | | | | | * xwayland: add inline safe closing of fds and fix LOCK_FILE_MODE permissions * xwayland: auto recreate xwayland instance if it crashes * xwayland: delay auto-restart until later
* xwm: avoid infinite parent lookup loop in lookupParentExistsVaxry2024-10-141-0/+7
| | | | ref #8045
* xwm: Minor cleanup, add wrappers for basic types (#7856)Jasson2024-09-201-22/+15
|
* xwayland: add option to enable/disable xwayland (#7633)trianta2024-09-051-0/+4
| | | | | | | | | | | | | | | | | | | * config: add xwayland enabled option to config * xwayland: use DISPLAY env variable for enable/disable of new launches * xwayland: close X11 windows when turning of XWayland * clang: format fix * config: add better description for xwayland:enabled * xwayland: close X11 windows on disable without crashes * xwayland: better method of informing CXWayland if xwayland enabled * xwayland: prevent closing non-xwayland windows on disable * misc: loop formatting
* xwm: read atom name from xcb (#7546)Tom Englund2024-09-011-10/+24
| | | | | expand the debug trace logging by actually reading the atom name from xcb if not found in HYPRATOMS, will also print the proper atom for xcb internal ones and not just the HYPRATOMS ones.