The purpose of this fix is enable drawing of one pixel with contour
tool is active and we drag the cursor inside of the same
pixel (https://community.aseprite.org/t/3509).
Added 3 tests in polygon_tests.cpp to test polygon function when the
expected results is a simple pixel.
When we were viewing an huge sprite, a temporal buffer (os::Surface*)
used to render it would increase its size to the size of the
canvas. After that, whatever other sprite that we saw (even for the
smallest one) we were unnecessary clearing the entire (huge) internal
buffer with os::Surface::clear() on each render.
This problem was visible only using the new render engine.
* Fixed Jumble tool behavior: When brush is circular, all the brush
bounds (square) where randomized. And at the end all the pixels were
re-randomized.
* Solved the double-point in IntertwineAsLines from
62802cfbdfbd85edd5a339361de70c36d74925dc in an alternative way: Just
don't draw the first point when we join consecutive 2 points
strokes (the issue here is that freehand controller generates
strokes of two points, so every call on joinStroke() of
IntertwineAsLines has only two points, we have to check if we're
drawing the first stroke, and if we are drawing the second 2 points
stroke, we skip the first pixel to avoid drawing it two times,
solved with IntertwineAsLines::m_firstStroke).
The purpose of this fix is draw correctly the
first stroke point as result of a joinStroke() execution
from class IntertwineAsLines when following
conditions are meet:
- pencil tool
- pixel perfect OFF,
- custom brush
- try to draw a line of 2 pixel.
The original issue was detected by the tests functions
based in useTool function on Lua scripts.
The issue was presented in tool.lua.
The purpose of this fix is that createUnion handles situations
which union results in contiguous segment collapses.
Added some treatments of eventual illogical inputs arguments like:
- pairs.size() < ints
- ints is 1
- ints is a odd number
Fixed treatment of some union cases like:
- x == pairs[i+1] + 1
- x == pairs[i+1]
Simplification of some vector::insert execution.
Added a bool return type to know if the function was
successfully executed when is called (used in tests).
We change the “static void createUnion(…)” to
“bool algorithm::createUnion(…)” to conditioning it to
future tests.
Added some comments modifications.
Added tests to polygon_tests.cpp
Change the way we calculate the first-execution of the
program (without depending on the UUID of the updater, e.g. because
the server didn't return an UUID, etc.).
* Change the Home status bar text
* Show the full path of the document (if the user preferences allow
us) when we move the mouse over the document tab
* We weren't calling onWorkspaceViewSelected() from
WorkspacePanel::setActiveView()
Added special treatment in cases of horizontal lines which input
argument to createUnion is “ints == 0”. Conditionals were sorted, it
was being generate extra scan segment pair next to pair in analysis,
instead of an augmentation of it.