Commit graph

2009 commits

Author SHA1 Message Date
Christian Meissl
fe1f9f2057 gbm: detect gbm_bo_get_fd_for_plane
When available or forced with feature
backend_gbm_has_fd_for_plane use fd_for_plane
which allows the use of multi planar formats
which expose multiple planes with different fds.
2022-10-03 09:54:07 +02:00
Victoria Brekenfeld
76a878698e
Merge pull request #771 from ids1024/egl_debug_log
Fix `egl_debug_log`
2022-09-30 12:55:34 +02:00
Ian Douglas Scott
76957b754e Fix egl_debug_log
https://registry.khronos.org/EGL/extensions/KHR/EGL_KHR_debug.txt

As defined by the spec, `message` can be `NULL`, so this needs to handle
that possibility.

The first argument is not "severity", it is an error code. The severity
is instead the third argument, `messageType`.

Since message can be null, converting the error code to a string can be
necessary to actually convey useful information.
2022-09-29 14:07:51 -07:00
Victoria Brekenfeld
625cbca549
Merge pull request #769 from Smithay/fix/layer_popups 2022-09-27 20:03:45 +02:00
Victoria Brekenfeld
79293c4ce7 desktop/layer: Don't calculate geometry including popups
When calculating `layer_geometry` the user expects to get geometry
relative to the origin of the layer_surface. Popups extending
negatively from the surface might shift that, if the calculation
happens based on `bbox_with_popups()` (e.g. for Bottom anchored
layer_shell surfaces). This can e.g. break input in interesting ways
as it is not easily possible to calculate surface-relative coordinates
this way.
Additionally change layer_under to still use the bbox_with_popups to
catch cursors over layer_surface popups correctly.
2022-09-27 17:07:13 +02:00
Victoria Brekenfeld
402de27d27
Merge pull request #767 from ids1024/dmabufbuilder 2022-09-27 00:27:49 +02:00
Ian Douglas Scott
f29f6d3b65 Make DmabufBuilder::add_plane() take an OwnedFd
Converting an arbitrary `RawFd` to an `OwnedFd` in a safe function is
unsound. This provides a more correct API.
2022-09-26 12:45:34 -07:00
Victoria Brekenfeld
274147e593
Merge pull request #766 from VideowindoW/keys-hashset
Replace Vec for tracking of pressed keys with HashSet
2022-09-25 15:56:25 +02:00
Francisco Ayala Le Brun
72ba2a8926 Add tracking of pressed keys with hash set 2022-09-25 14:58:39 +02:00
Victoria Brekenfeld
42c30e8a47
Merge pull request #763 from Smithay/fix/msrv
ci: Enforce 1.59 MSRV
2022-09-23 18:55:04 +02:00
Victoria Brekenfeld
9708dc1d49 ci: Enforce 1.59 MSRV 2022-09-23 12:05:41 +02:00
Victoria Brekenfeld
d07b1b92c0
Merge pull request #759 from Smithay/fix/clippy_1_64 2022-09-23 11:03:05 +02:00
Victoria Brekenfeld
749d954a6e clippy: fixes for rust 1.64 2022-09-22 17:58:59 +02:00
Victoria Brekenfeld
f6efdbefb2
Merge pull request #758 from wash2/fix-unreachable
fix: add arm for primary_device_manager::Request::Destroy
2022-09-22 17:22:26 +02:00
Ashley Wulber
d1968c4bac
fix: add arm for primary_device_manager::Request::Destroy 2022-09-21 14:42:04 -04:00
Victoria Brekenfeld
3c14346251
Merge pull request #752 from cmeissl/fix/egl_buffer_segfault
Fix/egl buffer segfault
2022-09-21 14:12:16 +02:00
Victoria Brekenfeld
556004e3df
Merge pull request #753 from cmeissl/egl_display_segfaults
egl: make EGLDisplay::new unsafe
2022-09-21 11:48:24 +02:00
Christian Meissl
05b1606eb5 egl: check buffer is alive
* fixes occasional segfaults when accessing a EGL buffer that
  has already been destroyed (either explicit or implicit due
  to the client disconnected)
2022-09-19 11:48:43 +02:00
Christian Meissl
9b8b86ad43 update wayland-rs to 0.30.0-beta.10
* adds io_lifetimes to make use of Owned/BorrwoedFd on rust < 1.63
* liveness tracking for external objects like EGL buffers (fixes
  occasional segfaults when a egl client disconnects that does not
  use dmabuf)
2022-09-19 11:48:43 +02:00
Christian Meissl
0b8ee64588 egl: make EGLDisplay::new unsafe
and document safety requirements around
the native display handle
2022-09-16 09:28:58 +02:00
i509VCB
355513d3f6
Merge pull request #729 from i509VCB/vulkan/drm-phd-props
vulkan: Add PhysicalDevice::get_format_modifier_properties to get modifiers for Vulkan format
2022-09-06 15:04:26 -05:00
Victoria Brekenfeld
3b67a4127c
Merge pull request #740 from Smithay/fix/popup_eq 2022-09-05 21:32:29 +02:00
Victoria Brekenfeld
c6f37488a2
Merge pull request #741 from Smithay/fix/layer_surface_send 2022-09-05 21:30:16 +02:00
Victoria Brekenfeld
b7b94b49be desktop: Make layer_surface Send 2022-09-05 20:52:26 +02:00
Victoria Brekenfeld
a151551333 popup: Derive PartialEq for PopupKind 2022-09-05 20:49:20 +02:00
i509VCB
2e458466d7
vk-allocator: Use PhysicalDevice::get_format_modifier_properties 2022-09-05 12:51:24 -05:00
Akane
5d4200cc4f
anvil: xkbcommon library update (#736)
* xkbcommon library update

* Updated xkbcommon(smithay) from 0.4 to 0.5
2022-09-05 14:13:13 +02:00
Victoria Brekenfeld
d8f37af834
Merge pull request #738 from PolyMeilex/make-use-of-client-clone
Make use of `Client::clone` & Remove outdated TODOs
2022-09-05 13:34:51 +02:00
Victoria Brekenfeld
73d8e1d00e
Merge pull request #730 from Smithay/feature/split_output
output: Split wayland::output
2022-09-05 13:34:20 +02:00
Victoria Brekenfeld
a97f34ef8b output: Split wayland::output 2022-09-05 13:19:12 +02:00
Bartłomiej Maryńczak
2c59d0b28b
Merge pull request #721 from chrisduerr/destroy_everything
Add destroy hooks to XDG/Layer shell handlers
2022-09-05 11:32:47 +02:00
Victoria Brekenfeld
f04ec0d2d4
Merge pull request #718 from Smithay/fix/input_popups 2022-09-05 09:13:16 +02:00
Christian Duerr
a56151974b
Remove unnecessary borrows 2022-09-05 03:40:50 +02:00
Christian Duerr
468e2bc28e
Fix code formatting 2022-09-05 03:40:50 +02:00
Christian Duerr
2b28e4ecfb
Drop locks before calling handler functions 2022-09-05 03:40:50 +02:00
Christian Duerr
0cd0fb0472
Pass removed objects to handlers 2022-09-05 03:40:50 +02:00
Christian Duerr
ae2090aee2
Add destroy hooks to XDG/Layer shell handlers
This adds `destroyed` methods for handling the death of XDG
toplevel, XDG popup and layer shell surfaces.

Providing these methods for the handlers directly allows for easy state
access and should simplify the likely different handling for the
individual shell surface types.
2022-09-05 03:40:50 +02:00
Poly
0971f80c88 Remove unneeded TODOs 2022-09-05 01:11:44 +02:00
Poly
74920c43ba xwayland: Make use of Client::clone 2022-09-05 01:11:44 +02:00
Poly
a89507b0fb anvil: Make use of Client::clone 2022-09-05 01:11:39 +02:00
Bartłomiej Maryńczak
003726dd74
Merge pull request #687 from PolyMeilex/shortcuts_inhibit
Shortcuts inhibit protocol
2022-09-05 00:57:51 +02:00
Poly
8181c56fda Anvil: Keyboard shortcuts inhibitor implementation 2022-09-05 00:44:57 +02:00
Poly
41e2d4921d Use new input::Seat for keyboard_shortcuts_inhibit 2022-09-05 00:35:48 +02:00
Poly
62c38a4ee1 Add inhibitor_for_surface utility 2022-09-05 00:14:30 +02:00
Poly
88dbb8d3b2 Introduce shortcuts inhibit protocol 2022-09-05 00:14:30 +02:00
Akane
07f709106c
Fixed typo (#737) 2022-09-04 23:07:57 +02:00
Victoria Brekenfeld
97e276bc10
Merge pull request #731 from Smithay/vberger/wayland-rs-beta-9
Update wayland-rs to 0.30.0-beta.9
2022-09-02 13:27:25 +02:00
Victor Berger
9cc2606e87 Update wayland-rs to 0.30.0-beta.9 2022-09-01 10:38:25 +02:00
i509VCB
434d44b6da
vulkan: Add PhysicalDevice::get_format_modifier_properties to get modifiers for Vulkan format
This moves code that is common between the Vulkan renderer and allocator to PhysicalDevice
2022-08-30 16:23:04 -05:00
Victoria Brekenfeld
d35a46e8ca
Merge pull request #724 from Smithay/fix/update_mem
gles2: Fix update_memory
2022-08-30 21:46:46 +02:00