client-toolkit
client-toolkit copied to clipboard
Smithay's toolkit for writing wayland clients
Hello, I've implemented [a lockscreen project](https://github.com/imgurbot12/dynlock) making use of this library to interact with wayland and use the `ext-session-v1` protocol. However, I've run into an annoying issue that seems to...
This is still a work in progress. Some remarks: - I’ve got a different pattern going on from the normal udata, and I think it’s noticeably nicer in some regards,...
For given `buffer, canvas = SlotPool::create_buffer(..)`, `canvas` might be bigger than the one returned from `buffer.canvas()`. This happens because of buffer alignment at the allocation: https://github.com/Smithay/client-toolkit/blob/4cf0deff833012bc93e3b58d0f1c1c33bc0ee8bf/src/shm/slot.rs#L257 for the `Buffer::canvas` it...
A negatvie x, and y is perfectly acceptable for setting the window geometry. in fact it is desirable to do so when you want to include content above and/or to...
Building COSMIC apps on macOS is not possible because of this. ## Log ```log error[E0432]: unresolved imports `rustix::pipe::pipe_with`, `rustix::pipe::PipeFlags` --> /Users/eduardo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/smithay-client-toolkit-0.19.2/src/data_device_manager/data_offer.rs:439:24 | 439 | use rustix::pipe::{pipe_with, PipeFlags}; | ^^^^^^^^^ ^^^^^^^^^...
The crate `log` requires a mimimum version of 0.4.8. This version is release over 5 years ago. I found this using `cargo minimal-versions check --all-features`, which fails to compile.
For those that want to create Wayland native games using [winit](https://github.com/rust-windowing/winit) with the option to disable V-sync, my guess is that the [tearing protocol](https://wayland.app/protocols/tearing-control-v1) would need to be implemented here...
WGPU (latest version 27) and Vulkan uses over 170MB (or 300-400MB of GPU memory) of memory in release mode, so it is not viable for small apps. This is inherent...
Wayland allows reusing a surface for the same role it had previously.
I was working through the examples, and I noticed that some of the trait methods on `OutputHandler` and `CompositorHandler` were left as no-ops. This adds a default no-op implementation to...