1
0
Fork 0
forked from wry/wry
Commit graph

24 commits

Author SHA1 Message Date
Julian Orth
816315170f render: add support for explicit sync 2024-03-27 18:15:53 +01:00
Julian Orth
1b4492c670 render: propagate errors 2024-03-27 18:15:53 +01:00
Julian Orth
ea4a1f027b render: remove TextureReservations 2024-03-27 18:15:53 +01:00
Julian Orth
bc9b1c3638 scale: make wl representation private 2024-03-16 01:28:57 +01:00
Julian Orth
54d93f84da all: add (Clone)Cell::is_some and is_none 2024-03-02 18:09:40 +01:00
Julian Orth
e1488eca55 pipewire: force re-negotiation when buffers change 2024-02-28 16:52:52 +01:00
Julian Orth
fed2ceb8b5 drm: add unique identifiers to dmabufs 2024-02-19 12:27:28 +01:00
Julian Orth
451d7d9ef1 portal: fix handling of duplicate render devices 2024-02-19 11:02:50 +01:00
Julian Orth
250026f7f6 render: fix top-left clipping of surfaces 2024-02-15 00:05:29 +01:00
Julian Orth
cf332e8436 render: implement a vulkan renderer 2024-02-08 15:24:02 +01:00
Julian Orth
4ba8550da8 render: compute image width/height in single function call 2024-02-08 15:24:02 +01:00
Julian Orth
a04870388f text: re-use textures if possible 2024-02-08 15:24:02 +01:00
Julian Orth
bf90204db6 video: always use correct modifiers 2024-02-08 15:24:02 +01:00
Julian Orth
1500b10de3 render: remove clear OP 2024-02-08 15:24:02 +01:00
Julian Orth
e0ed29038e metal: use IN_FORMATS plane property 2024-02-08 15:24:02 +01:00
Julian Orth
d022d96fbf dmabuf: add PlaneVec 2024-02-08 15:24:02 +01:00
Julian Orth
24e410a5b5 render: hide graphics API behind traits 2023-10-22 20:42:35 +02:00
Julian Orth
d650b3375d render: split module into gfx_apis and renderer 2023-10-22 20:28:32 +02:00
Julian Orth
5e8a6eb86f render: split rendering into two phases
In the first phase we collect a list of simple operations (copying
textures and filling rectangles.)

In the second phase we send this list to the graphics API to be
executed.

As part of this, we also remove the use of scissors.
2023-10-22 16:10:12 +02:00
Julian Orth
036af4abaa all: address clippy issues 2023-02-04 14:20:10 +01:00
Julian Orth
9812a02f87 io: use io_uring for all io
There should no longer be any

- read
- write
- connect
- sendmsg
- recvmsg
- accept

calls in the codebase. Previously we were using a mix of io_uring and
these calls which had some negative effects: Since we were using the old
system calls, we had to set the file descriptors to non-blocking. But
our io_uring code did not handle EAGAIN. This lead to programs sometimes
being killed when the wayland IO was actually blocking.

Now all file descriptors are set to blocking, but io_uring makes it
non-blocking from our perspective. The one exception are evdev files
because they are read via libinput and libinput uses the old system
calls.
2022-12-31 17:56:58 +01:00
Julian Orth
5b2eb5855a tree: update to latest version of wp_fractional_scale 2022-11-12 15:05:58 +01:00
Julian Orth
35dbd483bc all: run rustfmt 2022-07-31 11:55:18 +02:00
Julian Orth
a162055f1d portal: add a desktop portal 2022-07-31 11:25:57 +02:00