In this way we can get pixel from the window surface and put pixels in
the new cursor surface which will represent the crosshair on the
mouse/screen position. In this way we avoid an effect of a slow mouse
response on high refresh rates.
Maybe related to: https://community.aseprite.org/t/3354
Now we have an easy way to convert between:
Background <-> Layers <-> Tilemaps
Deprecated (they are kept only for backward compatibility):
BackgroundFromLayer
LayerFromBackground
Before this fix working the next context:
- Active layer is a tilemap layer.
- TilemapMode == Pixels.
- TilesetMode == Manual.
- At least a border of the tilemap cel bounds is made of noTiles and tiles with index ’X’ (or a border is made all of tile ‘X’).
- With the marquee tool select a rectangle which matchs or exceeds the bounds of tile ‘X’.
Then when you delete the selected pixels (with the ‘delete’ key), automatically Trim command was executed, and the trimmed border is lost in the undo information.
Now, we skip the trim command in the context:
- Active layer is a tilemap layer.
- TilemapMode == Pixels.
- TilesetMode == Manual.
This ui::Display is related to one native os::Window, so the dirty
region/invalid region is now part of a ui::Display instead of a
ui::Manager.
* Replaced ui::display_w/h() functions with ui::Display::size()
and ui::get_desktop_size()
* The ui::Manager contains the main ui::Display, and in the future an
ui::Window will have its own ui::Display
Before this fix, first row of pixels (or/and columns) of a tile were not rendered when a scroll down or/and right take place and the zoom was enough to get an image size that exceeds the editor window.
The issue can be reproduced:
- Make a tilemap layer.
- Put tiles on that layer.
- Zoom in until image size exceeds the editor window (and pan the image until hiding two tiles).
- Scroll down (or/and right) to show the hidden tiles.
Then, first pixel rows (or/and columns) of ex-hidden tiles won't be rendered.
The crash could be achieved by having just one group layer at the top
level (with some children) and trying to delete it using Layer >
Delete Layer menu option (without using the timeline range).
Report: https://igarastudio.zendesk.com/agent/tickets/1719
This can happen if the session folder cannto be deleted e.g. when the
folder is not empty (for example if we've copied/created a file in the
session folder manually).