Conversation
c42958f to
71ae6df
Compare
|
https://www.x.org/releases/X11R7.7/doc/damageproto/damageproto.txt
If we're using So I guess on X, we'd not use XDamage here, but could call |
|
Yep, iterating over rects and calling Now to look at how https://wiki.libsdl.org/SDL2/SDL_UpdateWindowSurfaceRects is implemented in other backends to see if it can be done elsewhere... Edit: Ah, |
007c74e to
0720d64
Compare
Supported on Wayland, X11, and Win32. Fixes #39. try_for_each
f36f86e to
7f78a60
Compare
Buffer::present_with_damage()Buffer::present_with_damage() and Buffer::age()
|
Everything here should work now, but is untested. |
Fixes #90.
|
Updated to use Still not properly tested, but there shouldn't be much that could go wrong here, and merging would help us work on other things without accumulating more conflicts. I still need to see about making use of both of these features in Iced's new software renderer. |
|
Updated to address conflicts with #104. |
|
I think we can merge this now. So more backend code changes can be made without adding conflicts. If any issues come up later, they can be fixed. |
* On MacOS, the contents scale is updated when set_buffer() is called, to adapt when the window is on a new screen (#68). * **Breaking:** Split the `GraphicsContext` type into `Context` and `Surface` (#64). * On Web, cache the document in the `Context` type (#66). * **Breaking:** Introduce a new "owned buffer" for no-copy presentation (#65). * Enable support for multi-threaded WASM (#77). * Fix buffer resizing on X11 (#69). * Add a set of functions for handling buffer damage (#99). * Add a `fetch()` function for getting the window contents (#104). * Bump MSRV to 1.64 (#81).
#39.
Implemented only for Wayland. Should be able to add an X implementation using
XDamage, but I haven't looked at how that works yet. Onwebwe could use this to update only the changed part of the canvas possibly. If we need to convert the format anyway. I don't see any API for damage that could be used on macOS or Windows.Also should be tested in some way.