Commit Graph

8190 Commits

Author SHA1 Message Date
David Capello
49d279f84e Merge branch 'main' into beta 2022-04-06 00:30:08 -03:00
David Capello
7e2b7b6096 Fix json11 module on MSVC 2022-04-06 00:29:52 -03:00
David Capello
adce7ce23e Merge branch 'main' into beta 2022-04-06 00:12:20 -03:00
David Capello
e61888fc92 Fix compilation when ENABLE_UI is disabled and UIContext isn't defined 2022-04-06 00:10:49 -03:00
David Capello
ab2cef1c29 Merge branch 'main' into beta 2022-04-06 00:00:44 -03:00
David Capello
693a5777e7 Update json11 module 2022-04-06 00:00:23 -03:00
David Capello
2594892dd5 Fix crash when a Lua error happens in a Dialog onclose (fix #3237) 2022-04-05 23:57:36 -03:00
David Capello
16ca5a55db Merge branch 'main' into beta 2022-04-05 23:16:55 -03:00
David Capello
3ed969ff0a Close all docs correctly even in case of exception (fix #3162) 2022-04-05 23:07:08 -03:00
David Capello
2a908f79df lua: Dialog() must return nil if there is no UI available
This avoids some crashes when running in --batch mode and some script
tries to create a Dialog().
2022-04-05 20:45:34 -03:00
David Capello
66d74688e2 Merge branch 'main' into beta 2022-03-31 19:34:38 -03:00
Ryan Schmidt
be7c26da5e No longer add -stdlib=libc++ in CMakeLists.txt
Adding -stdlib=libc++ was needed when 10.7 was being targeted because on
10.8 and earlier libstdc++ is the default. Now that the target is 10.9
specifying -stdlib=libc++ is unnecessary since libc++ is the default on
10.9 and later.
2022-03-31 17:39:51 -03:00
Gaspar Capello
683747f412 Remove tag range adjust when exporting sprite sheets (fix #3210)
Before this fix, tag ranges were adjusted in the json data file, in the 'meta' sector, when the --list-tags and --ignore-empty flags were set.
Particularlly, when --split-layers, --list-tags, and --ignore-empty were on, the calculation of tag ranges could fail with cels with pure mask pixels.
2022-03-31 17:35:49 -03:00
Gaspar Capello
b70a29269d Fix wrong json export with linked, trimmed cels (fix #2600)
Before this fix, the json file associated with the exported sprite sheet had wrong 'spriteSourceSize' coordinates in particular cases like this:
- Linked cels
- Export Sprite Sheet options: TrimmedCels + Merge Duplicates + SplitLayers checked
2022-03-31 16:43:14 -03:00
Jeremy Behreandt
d429797359 Fix Lua Color HSL Constructor
Changed call from HSV to HSL for Lua Color HSL constructor.
2022-03-29 23:15:17 -03:00
David Capello
33e9359340 Update laf module 2022-03-29 18:11:55 -03:00
David Capello
4018e38d38 Update laf module 2022-03-29 18:08:58 -03:00
David Capello
ea97e90989 Merge branch 'main' into beta 2022-03-18 10:40:31 -03:00
David Capello
659f71b07f Update laf module 2022-03-18 10:40:04 -03:00
David Capello
c08dc44901 Revert "Fix multi layer movement in tilemap mode (fix #3144)"
This reverts commit bc050e8f15.
2022-03-15 13:40:46 -03:00
David Capello
3215051bc7 Merge branch 'main' into beta 2022-03-14 17:25:28 -03:00
David Capello
da4908474e Fix crash when showing the palette popup (fix #3189) 2022-03-14 17:21:54 -03:00
Gaspar Capello
bc050e8f15 Fix multi layer movement in tilemap mode (fix #3144)
Before this fix, a multi-layer mask move (with mixed layer types:
normal layer and tilemap layers with different grids) caused loss of
drawing areas.

The heart of this solution is to correctly align the 'selection mask'
and 'transform data' according to the layer's grid, and also, forcing
'site' TilemapMode/TilesetMode before each
reproduceAllTransformationsWithInnerCmds() iteration.

The scale transformation could have some things to improve in later
commits. Not fully tested yet.
2022-03-14 11:13:11 -03:00
David Capello
70a42c4c77 Add WheelAction to change InkType (related to #3195)
Mockup contributed here: https://community.aseprite.org/t/2468/10
2022-03-10 16:08:56 -03:00
David Capello
ffc7af2ee8 Merge branch 'main' into beta 2022-03-10 15:50:05 -03:00
David Capello
54c354f5d2 Fix forward declaration of os::Sampling 2022-03-10 15:44:56 -03:00
David Capello
8064179dfc Don't show clipboard error when we're trying to show the File > New dialog
The error is confusing because the user doesn't know that we're trying
to access the clipboard info only to fill Width/Height fields
automatically on File > New. Some errors (like "invalid image format")
should be displayed only when we use Edit > Paste explicitly.
2022-03-10 15:28:52 -03:00
David Capello
e5b0d9de8d Update tga module 2022-03-08 20:57:19 -03:00
David Capello
4ce2d1a340 Add option to simulate mouse wheel using key shortcut+drag mouse (fix #3195)
Now we can change several values (zoom, brush size, etc.) pressing a
keyboard shortcuts and dragging the mouse in a specific vector
direction (DragVector). It allows the modification of one, two, or
even more parameters at the same time (e.g. X axis to change the brush
size, Y axis the alpha value of the ink).
2022-03-08 20:40:11 -03:00
David Capello
7e1d3832f0 Merge branch 'main' into beta 2022-03-04 23:56:55 -03:00
David Capello
b86eea912d Update laf module 2022-03-04 23:55:51 -03:00
David Capello
c5ee08e3b5 Add required include directory to use doc/dio/fixmath libraries
This is used for the fuzz project.
2022-03-04 23:53:43 -03:00
David Capello
3dd47f913f Add missing strings for WheelActions to move through tiles 2022-03-03 18:07:51 -03:00
David Capello
18ba8f184b Merge branch 'main' into beta 2022-03-02 21:31:31 -03:00
David Capello
31ce326d5b Fix ink tests when ENABLE_UI=0
It looks like we cannot trust in the get_current_palette() content
when we are running scripts without UI. So it's preferable if we get
the palette directly from the sprite.

We should completely remove the get_current_palette() function.

Tests can be found in https://github.com/aseprite/tests/blob/main/scripts/inks.lua
2022-03-02 21:27:06 -03:00
David Capello
4b3b1f31e0 Fix ChangePixelFormatCommand so it can be compiled/linked when ENABLE_UI=0 2022-03-02 21:26:14 -03:00
David Capello
c40993e284 Merge branch 'main' into beta 2022-03-02 16:07:22 -03:00
Gaspar Capello
ef31179934 Fix painting with transparent color, opacity 255, Indexed color mode, in Alpha Compositing to behave as Simple Ink (fix #3047) 2022-03-02 15:28:25 -03:00
David Capello
e12fb556c1 Fix contour tool + pixel perfect when drawing just one pixel
Bug report: https://community.aseprite.org/t/13149
2022-02-25 15:05:29 -03:00
David Capello
2bb93247aa Fix modifying slice bounds before the 1st SliceKey frame (fix #3122)
This issue brought a lot of other related issues (like slice chunks
being saved incorrectly in .aseprite file, etc.). This is an
alternative fix to PR #3141 where a std::sort() was proposed.
2022-02-25 09:42:32 -03:00
David Capello
2100c45de2 Fix memory leaks when we use doc::Keyframes structure
Detected with LeakSanitizer on keyframes_tests but also reported in
PR #3141. We've finally solved this problem using std::unique_ptr.
2022-02-24 19:53:42 -03:00
David Capello
d16c34b247 Fix memory leaks in some tests found with LeakSanitizer 2022-02-24 19:43:22 -03:00
David Capello
cef7e7eed1 Don't show edge layers when we draw
If we have the View > Show > Layer Edges option enabled, the active
layer edges are always visible, and it is confusing when we're drawing
because we temporarily modify the cel position/bounds. It's better if
we hide the edges in the DrawingState.

Regression introduced in 31bf651d8b
2022-02-24 17:00:21 -03:00
Joshua Ogunyinka
31bf651d8b Fix panning canvas out of view clips in Auto Guides (fix #2994) 2022-02-24 16:51:43 -03:00
David Capello
04fa9a47ab Merge branch 'main' into beta 2022-02-24 16:42:05 -03:00
David Capello
b212a24479 Add sampling options to Edit > Preferences dialog too (#3183) 2022-02-21 16:21:07 -03:00
David Capello
5ccf414183 Add options to change the downsampling algorithm (fix #3183)
Also we've restored the default algorithm to bilinear + mipmapping,
which was the default on the Aseprite before we switched to Skia m96.
This was requested by some users.
2022-02-21 15:30:09 -03:00
David Capello
3162d224f7 Add editor_benchmark
This is a simple initial benchmark to test how well the editor perform
in common operations like scroll and zoom. We have plans to improve it
through caching (and GPU textures) progressively.
2022-02-21 10:31:54 -03:00
David Capello
7e76d81fcc Merge branch 'main' into beta 2022-02-18 19:32:33 -03:00
David Capello
2d3de1728c Add SkinTheme::get() to avoid using SkinTheme::instance() as much as possible
This was done to avoid some nullptr references using
SkinTheme::instance() (mainly from
StatusBar::IndicatorsGeneration::add()) when the application is being
closed because an exception was thrown. This might be useful to detect
certain kind of crashes from Sentry.
2022-02-18 19:01:46 -03:00