Christian Meissl
f7b58b146c
fixed formatting in gles2 version.rs
2021-05-15 20:41:48 +02:00
Christian Meissl
3ceff8ec67
check for gl version in gles renderer...
...
...in case the version is greater or equal 3.0 the
check for GL_EXT_unpack_subimage is not needed
2021-05-15 20:41:44 +02:00
Victor Brekenfeld
149c923876
cargo fmt
2021-05-15 18:17:43 +02:00
Victor Brekenfeld
b4f216d7b8
anvil: Update to new renderer changes
2021-05-15 16:12:13 +02:00
Victor Brekenfeld
f0e7ff3312
cleanup + docs
2021-05-15 16:12:13 +02:00
Victor Brekenfeld
0b0067a3fd
egl: Make EGLBufferReader clonable
2021-05-15 16:12:13 +02:00
Victor Brekenfeld
75b2a2d801
renderer: allow caching resources on WlBuffer
...
- renderer: Change the renderer api to not import different buffer types directly,
but import any supported wl_buffer
- renderer: Remove destroy_texture call and move responsibility into implementation
- gles2: Cache egl images as well as textures on wl_buffer userdata
- gles2: Implement delayed destruction of textures to avoid leaking or changing global state on drop
2021-05-15 16:12:13 +02:00
Victor Brekenfeld
2200d09841
drm: adjust RenderSurface to swapchain changes and AsDmabuf
2021-05-15 16:12:13 +02:00
Victor Brekenfeld
5cf328a1b8
allocator: Introdce AsDmabuf
2021-05-15 16:12:13 +02:00
Victor Brekenfeld
378f826c26
swapchain: do not convert buffers automatically anymore
2021-05-15 16:12:13 +02:00
Christian Meissl
7016e82bed
replace hardcoded type casts...
...
...with platform types in the gles2 renderer
2021-05-15 16:12:13 +02:00
Victor Brekenfeld
5245595037
fix: Compiling anvil without egl
2021-05-15 16:12:12 +02:00
Victor Brekenfeld
1839756f68
fix: Try shm-buffer imports, even if we do not have an egl-buffer reader...
2021-05-15 16:12:12 +02:00
Victor Brekenfeld
e490116d9a
Use newer drm-fourcc version
2021-05-15 16:12:12 +02:00
Victor Brekenfeld
c33ccde56d
Move to stable drm-rs and gbm.rs versions
2021-05-15 16:12:12 +02:00
Victor Brekenfeld
4665f829e8
ci: Adjust to new feature set
2021-05-15 16:12:12 +02:00
Victor Brekenfeld
6c25dde36e
Fix some missing Debug implementations
2021-05-15 16:12:12 +02:00
Victor Brekenfeld
7e47d648d4
First pass of adding documentation
2021-05-15 16:12:12 +02:00
Victor Brekenfeld
52c01535d0
rustfmt
2021-05-15 16:12:12 +02:00
Victor Brekenfeld
36bf5618ed
clippy fixes
2021-05-15 16:12:12 +02:00
Victor Brekenfeld
e329adcbd8
fix warnings
2021-05-15 16:12:12 +02:00
Victor Brekenfeld
ccd86cd8c1
anvil: Do not throw rendering errors away
2021-05-15 16:12:12 +02:00
Victor Brekenfeld
795903d7e0
anvil: Fixup compiling egl support
2021-05-15 16:12:12 +02:00
Victor Brekenfeld
ca6ed6b684
allocator: Expose dumb buffer handle
2021-05-15 16:12:12 +02:00
Victor Brekenfeld
46462b20b6
drm: Fix unnecessary Clone requirement
2021-05-15 16:12:12 +02:00
Victor Brekenfeld
05f11cffeb
examples: fix raw_drm
2021-05-15 16:12:12 +02:00
Victor Brekenfeld
0661ebebb8
anvil: Properly free textures
2021-05-15 16:12:12 +02:00
Victor Brekenfeld
85bef5fec6
renderer: rename Texture to TextureId to better convey nature of the handle
2021-05-15 16:12:12 +02:00
Victor Brekenfeld
ab6dd61592
renderer: add destroy_texture function
2021-05-15 16:12:12 +02:00
Victor Brekenfeld
30a8693789
anvil: Reintroduce egl buffer support
2021-05-15 16:12:12 +02:00
Victor Brekenfeld
cb8d637d38
drm: Fixup missing reexport
2021-05-15 16:12:12 +02:00
Victor Brekenfeld
50b0083269
renderer: Implement import_egl for wl_drm
2021-05-15 16:12:12 +02:00
Victor Brekenfeld
348c63b350
egl: EGLBuffer add accessor for EGLImages, remove old code
2021-05-15 16:12:12 +02:00
Victor Brekenfeld
8e3b0c0b9b
egl: Do not expose multi-planar buffers for now
2021-05-15 16:12:12 +02:00
Victor Brekenfeld
1f70aa6a08
egl: Rename EGLImages to EGLBuffer
2021-05-15 16:12:12 +02:00
Victor Brekenfeld
45cd37373a
anvil: Render software cursors again
2021-05-15 16:12:12 +02:00
Victor Brekenfeld
3d8cf0e458
renderer: Add importing bitmaps as textures
2021-05-15 16:12:12 +02:00
Victor Brekenfeld
43d3e9cd14
anvil: Fixup udev/tty backend, so that it runs at least
2021-05-15 16:12:12 +02:00
Victor Brekenfeld
243afb1030
drm: Introduce RenderSurface for compatibility/ease-of-use
2021-05-15 16:12:12 +02:00
Victor Brekenfeld
73554aaf7f
reexports: fixup gbm, remove unused image dependency
2021-05-15 16:12:12 +02:00
Victor Brekenfeld
2c9c150e5e
renderer: Remove `Frame` trait and merge into `Renderer`
...
Tracking of Frames, so that only one unique one can exist at a time
(gles does not allow multiple frames being rendered in parallel)
lead to very unfriendly lifetime-heavy code. A renderer is already
*unique*, just move the code there and add an error variant to catch
misuses.
2021-05-15 16:12:12 +02:00
Victor Brekenfeld
66fbb3eb06
egl: less busy logging
2021-05-15 16:12:12 +02:00
Victor Brekenfeld
cb825910a6
drm: fixup test_buffer
2021-05-15 16:12:12 +02:00
Victor Brekenfeld
93edc842b2
drm: allow commit/page_flip calls to *not* trigger an event
2021-05-15 16:12:12 +02:00
Victor Brekenfeld
c8b370a030
drm: change logger visibility
2021-05-15 16:12:12 +02:00
Victor Brekenfeld
0414417f3c
egl: Allow creation of shared contexts
2021-05-15 16:12:12 +02:00
Victor Brekenfeld
c6df50cb67
egl: Rexport EGLContext on toplevel
2021-05-15 16:12:12 +02:00
Victor Brekenfeld
347507fc92
drm/legacy: Assume Argb8888 is at least supported like we used to
2021-05-15 16:12:12 +02:00
Victor Brekenfeld
1f86faf1e6
drm: re-add device_id() to DrmDevice
2021-05-15 16:12:12 +02:00
Victor Brekenfeld
c05a7aafdf
swapchain: export Error type
2021-05-15 16:12:12 +02:00