Kovid Goyal
aca13a619a
Retry all the ssh kitten tests on failure once
2024-03-26 19:45:20 +05:30
Kovid Goyal
dd879c413a
Initialize temp wayland buffer with background color
2024-03-26 19:31:27 +05:30
Kovid Goyal
351e96ca75
Ensure temp buffer is destroyed once normal swapping is in place
2024-03-26 17:13:31 +05:30
Kovid Goyal
610390ed69
abort ready loop if window receives a close event
2024-03-26 15:44:02 +05:30
Kovid Goyal
a40a36d191
Wayland: Remove the 120ms penalty from waiting for window creation
...
When showing the window we loop in the wayland backend using a
temporary buffer of blank pixels to force the compositor to finish
setting up the top level surface pronto.
TODO: Set the color of the temmporary buffer to the background color
2024-03-26 15:40:13 +05:30
Kovid Goyal
073f78badb
...
2024-03-26 14:09:19 +05:30
Kovid Goyal
0c5e8be49a
...
2024-03-26 14:06:39 +05:30
Kovid Goyal
f7a7765ba2
Clean up debug rendering output
2024-03-26 13:06:08 +05:30
Kovid Goyal
adf5917325
Wayland: Only launch child after OS Window achieves its final size
...
Avoids a bunch of SIGIWNCH during child startup as not all programs
handle these correctly. Sadly adds about 0.1 seconds of latency to
startup. Will have to look into reducing that. The Wayland protocol is
*so badly* designed.
2024-03-26 12:48:45 +05:30
Kovid Goyal
f5314cb862
...
2024-03-26 11:48:57 +05:30
Kovid Goyal
6398dd5b75
Move xdg confugure response into its own function
2024-03-26 11:17:27 +05:30
Kovid Goyal
2edd332759
Flag to indicate that we expect scale from compositor
2024-03-26 10:41:40 +05:30
Kovid Goyal
006a047276
Also output pointer shape changes when debugging
2024-03-26 09:18:06 +05:30
Kovid Goyal
db3a49fc4b
Wayland KDE: Fix mouse cursor hiding not working in Plasma 6
...
kwin in Plasma 6 now requires usage of pointer_enter_serial instead of
last received serial for wl_set_cursor_image(). Hopefully, this wont
break any other compositors.
Fixes #7265
2024-03-26 09:02:59 +05:30
Kovid Goyal
a58187943d
...
2024-03-25 18:31:02 +05:30
Kovid Goyal
396def91e5
kwin requires layer properties to be set at creation time
2024-03-25 17:40:14 +05:30
Kovid Goyal
0dd2c3ea27
Edge panels now work
...
Tested under sway
2024-03-25 13:52:20 +05:30
Kovid Goyal
d56fbb88e5
More work on getting layer to actually render
2024-03-25 12:46:31 +05:30
Kovid Goyal
e9689ea50d
Fix wayland backend windowfocused() implementation
2024-03-25 10:33:27 +05:30
Kovid Goyal
5f7e53bfde
...
2024-03-25 08:54:10 +05:30
Kovid Goyal
de1dee6c3b
Debug setting of exclusive zone
2024-03-24 21:57:52 +05:30
Kovid Goyal
0b6943fb5a
...
2024-03-24 20:48:20 +05:30
Kovid Goyal
333ea519ed
Infrastructure to go from panel CLI opts all the way to wayland layer shell implementation
2024-03-24 20:48:20 +05:30
Kovid Goyal
fe5ccc144b
Finish glfw side support for layer shell
2024-03-24 20:48:20 +05:30
Kovid Goyal
0641ec2d89
GLFW API for configuring a window as a layer shell
2024-03-24 20:48:20 +05:30
Kovid Goyal
1c9f9a74e8
Wayland KDE: Add support for background_blur under kwin using a kwin private Wayland protocol
2024-03-22 13:41:44 +05:30
Kovid Goyal
83468535dd
Implement support for preferred buffer scale
2024-03-21 20:53:36 +05:30
Kovid Goyal
55115058d2
Scale pointer axis events by effective scale
2024-03-21 20:53:36 +05:30
Kovid Goyal
776bfa3d7e
Basic fractional scale protocol works
2024-03-21 20:53:36 +05:30
Kovid Goyal
6979f1c5eb
Add listener for fractional scale events
2024-03-21 20:53:36 +05:30
Kovid Goyal
eb42ad3a2b
Rename scale to integer_scale
...
We will presumably have a fractional_scale soon
2024-03-21 20:53:36 +05:30
Kovid Goyal
ce2e1b0813
Ensure we dont pass a NULL pointer to wl_pointer_set_cursor()
...
Possible fix for #7139
2024-02-20 23:31:18 +05:30
Kovid Goyal
1593baa9f9
remove unused include
2024-01-18 21:38:18 +05:30
Jin Liu
e20eff277b
Fix Wayland cursor-shape-v1 cursor not updating
...
According to https://wayland.app/protocols/cursor-shape-v1#wp_cursor_shape_device_v1:request:set_shape
> The serial parameter must match the latest wl_pointer.enter or
> zwp_tablet_tool_v2.proximity_in serial number sent to the client.
So we can't use wl.serial or wl.pointer_serial, because they are also updated in other places.
2024-01-04 19:54:03 +08:00
Kovid Goyal
c76db4bfb4
Wayland: Redraw titlebar title on font size change
...
Fixes #6945
2023-12-25 17:20:52 +05:30
Kovid Goyal
cff490f881
Wayland: Add support for the new cursor-shape protocol
...
It is currently disabled because no compositor seems to support it.
Hyprland reports it as available but using it causes Hyprland to crash.
Plasma 6 is supposed to have it but I am not installing a beta just for
this.
Typical Wayland.
2023-12-24 18:45:17 +05:30
Kovid Goyal
69a5c7e3b2
Wayland: Fix a regression in the previous release that broke copying to clipboard under wl-roots based compositors in some circumstances
...
As is usual in Wayland land, utter chaos. Divergent implementations,
incorrect interpretations of the spec, bla bla.
Fixes #6890
2023-12-08 08:38:08 +05:30
Kovid Goyal
114b8dff51
...
2023-11-03 20:01:33 +05:30
Kovid Goyal
61429c73c7
Wayland: Fix primary selections not working with the river compositor
...
Fixes #6785
2023-11-03 19:57:54 +05:30
Kovid Goyal
e9e1a7a7c3
Fix the diagonal resize shapes on Linux
2023-10-17 21:15:20 +05:30
Kovid Goyal
187fa996f8
Add the cell pointer shape
2023-10-16 20:33:12 +05:30
Kovid Goyal
4f1971c480
Rationalize mouse cursor shape handling
...
Now can use the full range of standard mouse cursor shapes similar to
those supported by browsers via the CSS cursor property.
Still needs to be fully implemented for cocoa backend.
2023-10-15 09:17:31 +05:30
Kovid Goyal
f63bbfc88c
Wayland: Do not request idle inhibition for full screen windows
...
Fixes #6613
2023-09-12 16:43:46 +05:30
Kovid Goyal
7d2dc252f1
...
2023-07-05 21:50:46 +05:30
Kovid Goyal
95d15648fa
Fix not building with wayland-protocols 1.32
...
Fix #6422
2023-07-05 10:33:56 +05:30
Kovid Goyal
89875af5e6
Fix jerky behavior when live resizing an OS window on platforms that report live resize being and end events
...
Also disable live resize begin/end events on Wayland since they are not
reliable.
On platforms that support live resize begin/end use a separately
configurable pause time before the screen is redrawn.
Fixes #6341
2023-06-07 14:31:39 +05:30
Luofan Chen
130315ce8d
Use strict function prototypes
...
Fixes clang error:
error: a function declaration without a prototype is deprecated in all versions of C [-Werror,-Wstrict-prototypes]
2023-02-09 13:16:00 +08:00
Kovid Goyal
3f65ce0e71
Make sizes explicit in a few reallocs
2022-12-13 12:11:37 +05:30
Kovid Goyal
fefafda9a0
Fix #5764
2022-12-12 21:26:54 +05:30
Kovid Goyal
4c72f92939
Wayland GNOME: Workaround for latest mutter release breaking full screen for semi-transparent kitty windows
...
Destroy the CSD surfaces when window goes full screen.
Fixes #5677
2022-11-28 14:19:13 +05:30