https://github.com/waycrate/exwlshelleventloop
winit like binding for layershell and sessionlock
https://github.com/waycrate/exwlshelleventloop
layershell sessionlock sway wayland
Last synced: 2 months ago
JSON representation
winit like binding for layershell and sessionlock
- Host: GitHub
- URL: https://github.com/waycrate/exwlshelleventloop
- Owner: waycrate
- License: mit
- Created: 2023-12-15T10:22:23.000Z (over 2 years ago)
- Default Branch: master
- Last Pushed: 2026-03-25T03:39:09.000Z (3 months ago)
- Last Synced: 2026-03-26T07:15:21.012Z (3 months ago)
- Topics: layershell, sessionlock, sway, wayland
- Language: Rust
- Homepage:
- Size: 4.13 MB
- Stars: 124
- Watchers: 3
- Forks: 41
- Open Issues: 13
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
- awesome-iced - iced_layershell - Layershell binding for iced (Projects Using iced)
README
# Extra wayland shell event loop and their iced bindings
We want to make program with iced for layershell and sessionlock, so we made this project.
Take winit as reference a lot, to make easilier program on layershell and ext-session-lock.
This project bind `ext-session-lock` and `layershell` with the similar way of winit, which storing message and handle it in callback
## Here are five subprojects
### waycrate_xkbkeycode
[](https://crates.io/crates/waycrate_xkbkeycode)
Take a lot of reference from winit (mainly from winit). Mainly handle the xkbcommon events.
### layershellev
[](https://crates.io/crates/layershellev)
Winit like layershell event crate.
We use it make a virtual-keyboard program, please take a look at `starcolorkeyboard`. Next we will make the program with iced-layershell instead, to provide a more beautiful virtual-keyboard program.
### sessionlockev
[](https://crates.io/crates/sessionlockev)
Winit like sessionlock event crate. It handles the sessionlock event, like lock and unlock, and provides base support for iced binding for sessionlock
### iced-layershell
[](https://crates.io/crates/iced-layershell)
iced binding for layershell
#### Feature:
- support to open new layershell and support popup window.
- support ext-virtual-keyboard


With this crate, you can use iced to build your kde-shell, notification application, and etc.
### iced-sessionlock
[](https://crates.io/crates/iced-sessionlock)
iced binding for sessionlock
Session lock is the wayland protocol for lock. This protocol is supported in river, sway and etc. We use it make a beautiful lock program in [twenty](https://github.com/waycrate/twenty). You can also use it to build your sessionlock. This will become very easy to use our crate with pam crate.