1
0
Fork 0
forked from wry/wry
Commit graph

59 commits

Author SHA1 Message Date
Julian Orth
a4e197d92a ext-workspace: implement v1 2025-01-26 12:38:05 +01:00
Julian Orth
fac5445f2e wayland: implement commit-timing-v1 2024-10-11 21:03:33 +02:00
Julian Orth
19b07fa7dc xwayland: allow windows to scale themselves 2024-10-08 11:14:30 +02:00
Julian Orth
e377470f3f all: use expect attribute where possible 2024-09-06 11:08:22 +02:00
Julian Orth
b4ca15fec0 metal: allow configuring framebuffer formats 2024-09-04 21:43:04 +02:00
Julian Orth
9bab4f7ce1 metal: preserve mode across reconnects 2024-09-04 21:43:04 +02:00
Julian Orth
49f6304716 metal: implement tearing 2024-07-18 15:36:24 +02:00
Julian Orth
2d7c13b0b4 metal: implement VRR 2024-07-18 14:20:01 +02:00
Julian Orth
84d7632341 all: address clippy lints 2024-07-02 17:13:20 +02:00
Julian Orth
8cee61122e all: remove dead code 2024-05-02 19:37:19 +02:00
Julian Orth
c27bf4d597 wayland: allow binding to removed outputs 2024-04-25 20:05:24 +02:00
Julian Orth
4651f760f0 wayland: don't store direct output references 2024-04-25 19:38:19 +02:00
Julian Orth
c6864a6d85 tree: fix per-workspace capture tracking 2024-04-20 13:30:34 +02:00
Julian Orth
acb391335b wire: generate trait for request handling 2024-04-08 20:02:29 +02:00
Julian Orth
e3a1a0b30f wayland: make object versions type safe 2024-04-08 14:47:50 +02:00
Julian Orth
1b4492c670 render: propagate errors 2024-03-27 18:15:53 +01:00
Julian Orth
3eb0f61ec1 tree: make scale and position of outputs persistent 2024-03-16 01:38:57 +01:00
Julian Orth
558bea47b7 config: allow retrieving the modes 2024-03-04 16:09:53 +01:00
Julian Orth
b7d2964e19 all: implement output transforms 2024-02-28 20:11:40 +01:00
Julian Orth
9fba5f9b45 render: support shm screencopy from direct scanout 2024-02-28 16:51:58 +01:00
Julian Orth
9de63bddf3 render: don't require framebuffer to perform shm screencopies 2024-02-28 13:41:08 +01:00
Julian Orth
58cdfbcb26 metal: scan out in more circumstances 2024-02-23 15:27:38 +01:00
Julian Orth
da84e9ec27 metal: implement direct scanout 2024-02-19 12:30:37 +01:00
Julian Orth
4d8e744c2f video: render hardware cursor in screencasts 2024-02-16 19:15:05 +01:00
Julian Orth
d4fc672fb3 tree: move output scale to global 2024-02-16 19:15:03 +01:00
Julian Orth
cf332e8436 render: implement a vulkan renderer 2024-02-08 15:24:02 +01:00
Julian Orth
0ac1bb8507 wayland: remove Object::num_requests 2024-02-06 12:05:03 +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
913b9d7213 wayland: update wl_output to v4 2022-12-31 21:49:02 +01:00
Julian Orth
28e91e0c5d metal: support multi-gpu systems via copying 2022-11-13 21:35:14 +01:00
Julian Orth
5b2eb5855a tree: update to latest version of wp_fractional_scale 2022-11-12 15:05:58 +01:00
Julian Orth
e52a60b3b6 wayland: implement scaling
This involves many subsystems:

- config:
    - allow setting the connector scale
    - allow setting the cursor size
- cursors:
    - load server cursors for all requested sizes and scales
- wl_surface:
    - track the output the surface belongs to
    - send wl_surface.enter/leave
- wl_output:
    - implement wl_output.scale
- text:
    - pre-render texts for all used scales
- renderer:
    - properly align scale textures and rectangles
- wp_fractional_scale:
    - new interface for fractional scaling
2022-05-30 17:00:25 +02:00
Julian Orth
95327685c1 wayland: implement surface transformations
- buffer scale
- buffer transform
- viewporter
2022-05-28 18:18:29 +02:00
Julian Orth
7476e6f2d9 tree: restore workspaces after monitor reconnect 2022-05-20 12:55:45 +02:00
Julian Orth
d42add4d18 all: implement screen locking 2022-05-19 23:39:11 +02:00
Julian Orth
d2913449ea metal: handle gpu reset
Unfortunately this doesn't seem to work on amdgpu [1]. I've tested that
it works on i915.

[1] https://gitlab.freedesktop.org/drm/amd/-/issues/1749
2022-05-06 16:45:56 +02:00
Julian Orth
9904717c71 all: fix memory leaks 2022-05-02 22:11:59 +02:00
Julian Orth
3d4a6b21f3 autocommit 2022-04-30 13:45:20 CEST 2022-04-30 13:45:20 +02:00
Julian Orth
ed0beb8ff5 autocommit 2022-04-28 20:33:24 CEST 2022-04-28 20:33:24 +02:00
Julian Orth
1242a6c1e1 autocommit 2022-04-28 19:49:51 CEST 2022-04-28 19:49:51 +02:00
Julian Orth
19aef8c58a autocommit 2022-04-28 15:19:15 CEST 2022-04-28 15:19:15 +02:00
Julian Orth
86ca98c38a autocommit 2022-04-11 13:11:56 CEST 2022-04-11 13:11:56 +02:00
Julian Orth
be32036824 autocommit 2022-04-07 17:31:31 CEST 2022-04-07 17:31:31 +02:00
Julian Orth
1d33088dba autocommit 2022-04-05 21:08:07 CEST 2022-04-05 21:08:07 +02:00
Julian Orth
a3e9f21fc5 autocommit 2022-04-05 18:28:42 CEST 2022-04-05 18:28:42 +02:00
Julian Orth
e897d271af autocommit 2022-04-04 14:29:04 CEST 2022-04-04 14:29:04 +02:00
Julian Orth
1f71290dab autocommit 2022-04-04 00:28:58 CEST 2022-04-04 00:28:58 +02:00
Julian Orth
2dd433aa04 autocommit 2022-04-01 01:44:10 CEST 2022-04-01 01:44:10 +02:00