Ian Douglas Scott
89910b8e75
Use double-buffering for screencopy
...
Currently this is unnecesssary, but it's needed if we use subsurfaces
(or import) instead of immedaitely converting to an image.
2024-01-25 15:58:34 -08:00
Ian Douglas Scott
6262329635
Clean up some of the screencopy code
2024-01-25 15:48:40 -08:00
Ian Douglas Scott
13b565e013
Add a ScreencopySession type
...
Allows cleaning up some of the relationship between `screencopy.rs` and
`capture.rs`, and groups variables that go together and are set to `Some`/`None`
together.
Should help for adding double buffering.
2024-01-25 15:44:30 -08:00
Ian Douglas Scott
43e9ef390a
Move attach_buffer_and_commit
2024-01-24 16:07:00 -08:00
Ian Douglas Scott
6f1b391b00
Destroy screencopy session when not capturing
2024-01-24 15:59:18 -08:00
Ian Douglas Scott
14d2a66c9d
Re-use screencopy session instead of creating one each frame
2024-01-24 15:29:03 -08:00
Ian Douglas Scott
5269356089
Use Weak<Capture> in session state
2024-01-24 13:59:18 -08:00
Ian Douglas Scott
80e4fb0227
Work around panic
2023-12-12 11:59:32 -08:00
Ian Douglas Scott
c939486ce6
Fix a panic
2023-12-06 15:35:25 -08:00
Ashley Wulber
791441ca10
refactor: single instance
2023-11-21 19:26:12 -05:00
Ian Douglas Scott
0c19ea7167
Add CaptureImage type
2023-11-16 19:38:42 -08:00
Ian Douglas Scott
39401bf3c3
screencopy: Pass the node we're using to attach_buffer
...
Seems to make sure the compositor renders workspace with that GPU, so it
actually captures successfully.
2023-11-09 13:45:28 -08:00
Ian Douglas Scott
c567cb30d3
Move Bufffer::new to AppData::create_buffer
...
Will be needed to add support for dmabuf buffers. Also slightly cleaner
in general.
2023-11-08 15:05:45 -08:00
Ian Douglas Scott
b1d986ee71
Remove workaround for compositor issue that should be fixed
2023-11-08 14:09:34 -08:00
Ian Douglas Scott
9598a9f8e4
Use WlOutput instead of output names for matching
...
With a shared wayland connection between the code here and iced, if we
don't bind outputs outselves, we can have `WlOutput`s that match.
This simplifies things.
2023-11-08 13:59:53 -08:00
Ian Douglas Scott
4e2ef433fd
Handle global workspaces
2023-03-22 10:03:18 -07:00
Ian Douglas Scott
4ca7c9fb56
Handle toplevel info updates
2023-02-10 13:41:08 -08:00
Ian Douglas Scott
b5931cd240
Initial support for filtering what to capture to only what's needed
2023-02-10 10:12:26 -08:00
Ian Douglas Scott
b29f1149a4
Split up wayland code into more files
2023-02-09 16:04:36 -08:00