Commit Graph

4899 Commits

Author SHA1 Message Date
Vaxry 172ee1cada data-device: minor fixups
ref #6543

firefox needs a re-enter after a dnd

don't destroy dnd on an offer destroy, it's not valid
2024-06-16 20:36:55 +02:00
Dashie 738530e62e
xdg-shell: Continue transform of popup until size fits (#6521) 2024-06-16 20:01:08 +02:00
Vaxry 069a21a34e xwayland: force default plain mime atoms on known types
ref #6247
2024-06-16 19:52:07 +02:00
Vaxry 2031af82fa wl_data_device: send drop_performed in completeDrag
ref #6509
2024-06-16 17:41:16 +02:00
Vaxry d0a6fa7aa6 wl_seat: accomodate for apps late-binding seat resources
Sends enter events when an app binds wl_keyboard or wl_pointer later than it should. Fixes some buggy apps.

Fixes #6131
2024-06-16 17:04:10 +02:00
Vaxry 648ac8a00b xdg-shell: properly check for resource version for TILED and SUSPENDED states
fixes #6535
2024-06-16 16:46:22 +02:00
memchr 43c75f17eb
input: add cursor:warp_on_changeworkspace (#6480)
* input: add cursor:warp_on_changeworkspace

If enabled, warp the cursor to the last focused window on the workspace in the `changeworkspace' dispatcher, except if the cursor is currently on the WLR top layer.

Respect persistent warps.

* warp_on_change_workspace: check if focused layer is a window.
2024-06-16 16:42:32 +02:00
Vaxry 1b5444494d seat/dnd: unfocus pointer from surfaces on dnd start
GTK is speshyal and requires this for functioning properly. Ugh.

It's technically not required by spec, f you gtk.

Ref #6509
2024-06-16 16:23:41 +02:00
memchr 3eaf35f1e2
hyprland.conf: update master section (#6537) 2024-06-16 16:44:13 +03:00
Vaxry 2566d81884 xwayland: fixup unfocus atom conditions
ref #6468
2024-06-16 12:38:09 +02:00
Vaxry 1f5fd7e64a hyprpm: add --no-shallow 2024-06-15 21:46:36 +02:00
Vaxry 908bec1564 wl_seat: send repeat data from current keyboard on bind
ref #6515
2024-06-15 21:24:34 +02:00
memchr 89f795da98
master: refine master layout new window handling (#6479)
* ## Open window relative to active window

`new_on_active`:
  - `none` (default):
  - `before`: above of the focused window
  - `after`: below the focused window

If the focused window is the solo master window, or the new window replaces master, this option has no effect and new_on_top are respected.

## Refine new window status control

**BREAKING CHANGE**: new_is_master removed in favour of new variable

`new_status`:
  - `slave` (default): new window open as slave
  - `master`: new window open as master
  - `inherit`: new window inherit status from active window, i.e. when the focused window is master, new window will become new master, otherwise new window are added to slaves

* refactor: rename a few variables
2024-06-15 21:17:38 +02:00
Vaxry 91fe58f8f2 window: improve swallowing functionality
cleanups, fixes, etc.

ref #6095
2024-06-15 18:20:41 +02:00
Vaxry 77f44bfcab output: avoid crashes when binding a defunct wl_output global
ref #6508
2024-06-15 17:56:44 +02:00
Vaxry 6c24dc0bb1 xdg-shell: fixup xdg-positioner's pointForAnchor with non-corner points
fixes #6157
2024-06-15 17:43:39 +02:00
Vaxry 46ef6653be data-device: abort drag on unaccepted offers
fixes #6509
2024-06-15 17:33:21 +02:00
Vaxry fb82f6bcd7 animations: fix overriding direction for slide
fixes #6512
2024-06-15 16:31:35 +02:00
Vaxry 32aca88752 keybinds: add custom event dispatcher
fixes #3439
2024-06-15 16:20:00 +02:00
Vaxry df0c014ba0 xwayland: use safeRemove for removing files
fixes #6514
2024-06-15 16:06:07 +02:00
vaxerski cb63398f07 [gha] Nix: update inputs 2024-06-14 20:00:53 +00:00
Vaxry 2f278dc883 egl: fixup format modifier lookups with implicit modifiers
ref #6485
2024-06-14 21:59:21 +02:00
Vaxry 12ce06f39b format: fix flipped r/b channels on legacy_renderer
We don't wanna use an extension, but for gles2 there is no other option.

fixes #6465
2024-06-14 19:10:12 +02:00
Vaxry a357fa3e0a window: use effective damage for tearing re-schedules
fixes #6377
2024-06-14 16:45:41 +02:00
UjinT34 a9d53a2252
vrr: add option to fix mouse breaking vrr (#6483)
* 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>
2024-06-14 13:45:32 +02:00
Alexander b2590b58c5
hyprctl: added --follow option to rolliglog (#6325)
Co-authored-by: Крылов Александр <aleksandr.krylov@hyperus.team>
2024-06-14 12:11:40 +02:00
outfoxxed 9cd5b3587c
layerSurface: fix layer being refocused every commit with on_demand (#6487)
* layerSurface: fix layer being refocused every commit with on_demand

Fixes #6477

The surface will now only receive focus when its keyboard
interactivity is more than the previous keyboard interactivity in the
order none -> on_demand -> exclusive.

* layerSurface: only kb focus if becoming exclusive
2024-06-14 11:52:37 +02:00
phonetic112 8055b1c00a
misc: Fix build warnings (#6486) 2024-06-13 23:23:23 +02:00
Vaxry 5de273a144 xwayland: drop some spammy logs to trace
fixes #6478
2024-06-13 17:32:32 +02:00
Jan Beich 4842eb83b4
helpers: make shm_open() portable after 8bcccf9f0f (#6471)
https://pubs.opengroup.org/onlinepubs/9699919799/functions/shm_open.html
https://man.freebsd.org/shm_open/2
https://www.man7.org/linux/man-pages/man3/shm_open.3.html
2024-06-13 14:20:14 +02:00
Tom Englund e6d10539af
core: fix a few small memory leaks on exit (#6470)
* 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.
2024-06-13 12:08:02 +02:00
Vaxry 9e781040d9 props: bump version to 0.41.1 2024-06-13 11:54:06 +02:00
Yang, Ying-chao a54f98c203
virtualkeyboard: check if VirtualKeyboard is valid before accessing client. (#6460)
This fixes crash when restarting fcitx (#6378)
2024-06-13 11:33:47 +02:00
Vaxry d677ac6f87 hyprpm: print all types of cmake errors during configure 2024-06-13 11:33:20 +02:00
Vaxry a9d7befc36 formats: fixup for legacy_renderer builds 2024-06-12 23:29:24 +02:00
Vaxry 0e18da8467 foreign-toplevel: fixup output resource finding
fixes #6457
2024-06-12 23:28:52 +02:00
Vaxry 18ee9ece9c layershell: minor fixes to re-mapping of layers
ref #2012
2024-06-12 22:57:06 +02:00
Ikalco 38132ffaf5
renderer: properly software lock cursors with zoom_factor (#6434) 2024-06-12 19:28:52 +02:00
Vaxry a99f314106 input: fallback to main surface if not found on window
fixes #6421
2024-06-12 18:39:52 +02:00
Vaxry 9d7d5ec3c8 seatmgr: fix missing nullcheck in updateActiveKeyboardData
sometimes we may set a keyboard that's about-to-be-deleted, we might as well check for that

additionally avoid setting null keyboards altogether
2024-06-12 17:03:12 +02:00
Vaxry c7e85e26f7 seat: fixup touch event handling
fixes #6353
2024-06-12 16:49:26 +02:00
Vaxry 1bae19ce85 datadevice: only send actions for ver >= 3
fixes #6444
2024-06-12 16:16:27 +02:00
Vaxry f687105eff compositor: update suspended states on moveworkspacetomonitor
fixes #6417
2024-06-12 16:02:25 +02:00
MightyPlaza 32283ed706
groupbar: fix groupbar position rounding (#6433)
modified:   src/render/decorations/CHyprGroupBarDecoration.cpp
2024-06-12 15:56:35 +02:00
Moritz G 8412ffcc42
keybinds: fix bindm (#6429)
* fixed mouse dispatcher

* no brakets

* move command up
2024-06-11 23:02:29 +02:00
MightyPlaza b6bf4afb48
layer: don't close special ws when restoring focus (#6424)
modified:   src/Compositor.cpp
modified:   src/Compositor.hpp
modified:   src/managers/input/InputManager.cpp
2024-06-11 22:56:35 +02:00
Moritz G e1b05f8eaf
binds: Add description to key binds (#6358)
---------

Co-authored-by: Yusuf Duran <firatyusuf.d@gmail.com>
2024-06-11 19:49:54 +02:00
outfoxxed 21b9e31bf4
layershell: Fix keyboard focus grabs (#4968) (#6394) 2024-06-11 19:35:30 +02:00
Maximilian Seidler 1c388e52fb
session-lock: fix refocus after unlocking (#6423) 2024-06-11 17:18:51 +02:00
Vaxry 8c64a4bad7
core: move to hyprutils for utils (#6385)
* 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>
2024-06-11 17:17:45 +02:00