John Nunley
a6042f664d
x11: Implement image transfer using the MIT-SHM extension ( #46 )
...
* Implement shared memory transfer for X11
* Change to x11rb
* Fix leak + review from psychon
* Add waits to prevent illegal writes to SHM
* @ids1024 code review
2023-01-05 19:27:54 -08:00
John Nunley
0f1effe958
chore: Alphabetize dependencies ( #58 )
2023-01-05 22:37:30 +00:00
Ian Douglas Scott
a90c7bca04
Use cfg_aliases crate to make Wayland/X #[cfg(..)] less redundant
2023-01-03 12:45:18 -08:00
Ian Douglas Scott
4f6542ceaa
Add support and CI tests for BSDs
...
This adds a fallback using `shm_open`/`shm_unlink` for platforms where
`memfd_create` doesn't exist. This seems to be how this is normally
handled, though it's a bit ugly.
This also builds the wayland/x11 code for NetBSD/OpenBSD/DragonFlyBSD.
Add CI builds for FreeBSD and NetBSD. We would need some kind of
virtualisation though to actually run tests on such targets.
I've tested the `shm_open` logic on Linux, but haven't run it on any
BSDs.
2023-01-03 12:45:15 -08:00
Ian Douglas Scott
0109b1538a
Specify rust-version in Cargo.toml
2022-12-27 12:20:07 -08:00
Ian Douglas Scott
ca3988a2f7
Use stable 0.30 release of wayland-client
2022-12-27 12:18:14 -08:00
John Nunley
3eeafad834
x11: Add XCB support to the X11 backend ( #52 )
2022-12-27 09:14:54 -08:00
David Johnson
ddb1b9bfeb
Updated Cargo.toml to reflect swbuf+softbuffer merge
2022-12-22 18:39:56 -06:00
Ian Douglas Scott
f193f10ec0
Add wayland-dlopen feature, like winit
2022-12-21 19:45:27 -07:00
Ian Douglas Scott
c73bd4b836
Add feature flags for x11 and wayland
...
Winit has features for these, so it makes sense to offer the same.
2022-12-21 16:20:15 -08:00
jtnunley
85b4f189bd
Port to win32
2022-12-20 09:11:45 -07:00
Ian Douglas Scott
33fe3ae3c7
Enable Wayland and x11 code on FreeBSD
2022-12-20 07:11:10 -07:00
Ian Douglas Scott
3dc11f75c1
Improvements to wayland backend
...
- Use wayland-client `0.30.0-beta.14`
- Use `memfd` instead of temporary file
- Make sure buffer and buffer pool objects are destroyed
2022-12-20 07:11:10 -07:00
Jeremy Soller
7351d68814
Add Redox/Orbital support
2022-12-20 07:11:09 -07:00
Jeremy Soller
939bcc44d8
Fork to swbuf
2022-12-20 07:07:57 -07:00
David Johnson
d30d3255c2
Updated winit to 0.27.2 for examples and raw-window-handle to 0.5.0
2022-08-24 00:16:20 -05:00
Liam Murphy
ea6f97e15e
Enable needed features of winapi
...
Previously, `softbuffer` wouldn't successfully build on its own on Windows; the examples only worked because dependencies happened to enable the needed features.
2022-07-01 17:49:40 +10:00
David Johnson
08883d76c5
Bumped version to 0.1.1, updated README.md, added changelog to README.md
2022-05-22 18:20:40 -05:00
Ryan Hileman
ba3b823e1c
use CALayer for macOS backend
2022-04-24 07:31:19 -07:00
Liam Murphy
7b4717fdc4
Don't use rayon in examples on wasm
2022-02-23 19:13:26 +11:00
Liam Murphy
d735510f72
Add web support
...
A limitation of this implementation is that it can't coexist with anything which creates a canvas context other than `CanvasRenderingContext2D`, since only one context can exist per canvas.
2022-02-12 20:24:18 +11:00
David Johnson
bc900e69e7
Added animation demo
2022-01-31 22:03:48 -06:00
David Johnson
4311b27193
Modified Cargo.toml and README.md to prepare for publication to crates.io
2022-01-19 21:57:09 -06:00
David Johnson
d8087a68a0
Added Wayland support
2022-01-19 21:26:20 -06:00
Seo Sanghyeon
7ff0d65793
Add macOS support using Core Graphics
2022-01-19 13:18:09 +09:00
David Johnson
a23b7f9876
Added fruit example to show a more recognizable image for debugging
2022-01-18 22:07:17 -06:00
David Johnson
b5573de387
Added decription to Cargo.toml
2022-01-16 09:02:22 -06:00
David Johnson
dc6fc474be
Added better error handling
2022-01-16 09:01:02 -06:00
David Johnson
e4b1917333
Correctly ser version, authors, and license in Cargo.toml
2022-01-16 08:45:01 -06:00
David Johnson
d89a0c92aa
Added windows support and made example render something fancier
2022-01-16 08:03:20 -06:00
David Johnson
384f2dc9a3
Added X11 support
2022-01-15 08:17:17 -06:00