Gaspar Capello
99e6e7bd82
Fix nested tag with "Ping-Pong" repeat mode causes to skip the first frame of the parent tag ( fix #4271 )
2024-04-12 10:41:18 -03:00
David Capello
d886e20f6c
[lua] Secure io.popen() access (and enable popen on Linux)
2024-04-10 12:01:29 -03:00
David Capello
6a12c7014d
Select "English" if the current language is not found in Preferences
...
If the user preferences file (aseprite.ini) contained a non-existent
language, the first option of the languages combo box was selected,
which might lead to a confusing situation where just opening the
preferences dialog will change from English to other
language (non-English, the first language in the combobox).
v1.3.6
2024-04-08 13:23:38 -03:00
David Capello
4d5bf53be8
Fix crash accessing empty list of sprites updating ContextBar fields ( fix #4407 )
...
Not sure if this will be the final solution for this crash, as a Doc
shouldn't have an empty list of sprites.
2024-04-08 10:44:44 -03:00
David Capello
fd2a98c0e6
[win] Fix title bar flickering selecting menus/dialogs
2024-04-07 11:39:16 -03:00
David Capello
86ae7024d2
Update laf
2024-04-05 22:48:02 -03:00
David Capello
e21859c4af
Migrate clip module from aseprite to laf
2024-03-26 13:31:22 -03:00
David Capello
ec4e82bdc0
Fix crashes with SpriteJob(s) that weren't locking the doc correctly ( fix #4315 )
...
This was mainly found in SpriteSizeJob crash reports. In these reports
deleted image buffers were still used to paint the Editor canvas
because the doc was write-locked in the main thread (same thread where
the canvas is painted). This produced a re-entrant lock in the
Editor::onPaint() as we can still read-lock from the same thread where
we write-locked the doc.
With this change we write-lock the doc from the SpriteJob background
thread (not the main thread) only if it's necessary (i.e. when the doc
is not already locked in the main thread, e.g. when running a script).
This makes that the main thread (Editor::onPaint) cannot read the doc
until we finish the whole SpriteJob transaction/Tx.
2024-03-25 18:53:12 -03:00
David Capello
427ee6f5b5
Use target_sources() instead of variables to list app-lib sources
...
target_sources() was added on cmake 3.1, long time ago, although we
started with the 2.6 versions, so now we can modernize the cmake file
a little.
2024-03-19 16:04:50 -03:00
Charles Bradley
571a3965e9
Fix copy+move cursor icon bug ( fix #3887 )
...
Add logic to show the correct curson icon when holding the
copy key (alt) while hovering over a selected layer.
2024-03-15 11:47:04 -03:00
David Capello
8709219d68
Update laf ( fix #4368 )
2024-03-15 11:26:27 -03:00
David Capello
e129fefb2e
Hide "Play subtags" option in File > Export if there are no tags ( fix #4308 )
2024-03-12 15:54:05 -03:00
David Capello
30f55d196b
Show "Apply pixel ratio" option in File > Export only when needed ( #4308 )
...
If the sprite doesn't have a custom pixel aspect ratio configured
there is no need to show this option.
2024-03-12 15:14:45 -03:00
David Capello
a0e469624a
Use make_shader() helper function to create ColorSelector shaders
2024-03-11 17:48:11 -03:00
David Capello
7905acf38a
Handle some extra CannotWriteDocException cases when ContextWriter is used ( #4367 )
...
One fix that this patch includes for #4367 (crash by unhandled
CannotWriteDocException exception) is when we drag-and-drop a tag
border to resize its limits. This is a fix for that case but we don't
know if this include all cases of #4367 crashes (so we cannot close
the issue).
Anyway we have added some try { } catch in cases where it's better to
avoid propagating the exception, e.g. in
MovingSelectionState::onLeaveState() to avoid throwing exceptions in
Editor::backToPreviousState() which might be problematic in several
cases. (Maybe related to #2829?)
2024-03-11 17:15:13 -03:00
David Capello
7f659d2f86
Handle exceptions that DocDestroyer can throw (probably #4367 )
2024-03-11 11:06:57 -03:00
David Capello
b8514ad1c6
Add helper functions make_shader(), make_skimage/skcanvas_for_docimage()
...
These functions can be used to create a new Skia shader from SkSL
code, and a new SkImage/SkCanvas to modify a doc::Image*
2024-03-11 10:34:05 -03:00
David Capello
50d4f9d802
Don't try to clone strings repo if Git isn't available ( fix #4357 )
...
This can happen when the source code is downloaded as a .zip and the
Git command is not available to clone the strings repo.
2024-03-06 09:59:20 -03:00
David Capello
4584d67b69
Update modules
2024-03-05 19:39:50 -03:00
David Capello
9c611cfaf9
Update laf
2024-03-04 14:57:19 -03:00
David Capello
73fe8099d9
[win] Add 20x20 and 28x28 versions of Aseprite icon ( fix #3034 )
...
This is to fix the appearance of the icon when Windows is configured
with 125% DPI or 175% DPI. In the past we've done something similar
for 150% DPI (713a2eac80c76f0e53cfcbc3efdb6de41a9a0fc8) with a 24x24
icon.
2024-02-29 23:20:44 -03:00
David Capello
cfb663f820
Some fixes to readability-else-after-return
2024-02-29 10:26:47 -03:00
David Capello
667335be62
Update laf
2024-02-28 21:10:57 -03:00
David Capello
32bdb3a695
Minor rename of header guard
...
In this way we avoid problems with clang-tidy and defined identifiers
that starts with __
2024-02-28 21:10:07 -03:00
David Capello
4ea0390623
Add [[nodiscard]] to Tx as we have to create an instance of Tx when we use it
2024-02-28 21:09:23 -03:00
David Capello
83d83cd8c6
Add const to lock_guards
2024-02-28 12:32:08 -03:00
David Capello
d37bfa6c43
Fix compilation of tests when LAF_BACKEND=none
2024-02-28 10:45:52 -03:00
David Capello
166124526f
Update laf
2024-02-28 10:16:53 -03:00
David Capello
32a1b327a6
Fix typo
2024-02-28 10:16:36 -03:00
David Capello
edc248d418
Removing some unnecessary #includes
2024-02-28 10:16:11 -03:00
David Capello
1a067bb223
Update json11 module
2024-02-28 08:30:23 -03:00
David Capello
b5288d85e7
Update some clang tidy checks
2024-02-27 23:20:12 -03:00
David Capello
8fc7592066
Make clang tidy action work in PRs from forks using split_workflow
2024-02-27 19:07:53 -03:00
David Capello
619b5cbada
Run clang tidy in the context of the merge commit
2024-02-27 15:41:07 -03:00
David Capello
03403953f3
Fix cmake -B param in clang tidy action
2024-02-27 14:11:02 -03:00
David Capello
351d9c863f
Add config_file parameter to clang tidy action
2024-02-27 13:55:43 -03:00
David Capello
be891230da
Remove Ninja from clang tidy action
2024-02-27 13:49:32 -03:00
David Capello
f19215ea9d
Update laf module
v1.3.5
2024-02-27 13:23:04 -03:00
David Capello
7aca017a58
Fix use-after free in ase_ungroup_all()
...
Anyway this code is not used anymore, it was for v1.1 when v1.1 and
v1.2 branches were developed at the same time (layer groups feature
was added in v1.2, so v1.1 just moved groups children to the root).
2024-02-27 13:20:13 -03:00
David Capello
52afc9e9a7
Use build directory for cmake command on clang tidy
...
It's required by freetype library as it looks like it doesn't allow to
build in the same source directory.
2024-02-27 12:20:26 -03:00
David Capello
104f80b334
Change job name of clang tidy to avoid confusion with the build process
2024-02-27 12:20:04 -03:00
David Capello
a86b0a7d0c
Fix clang_tidy.yml path
2024-02-27 12:07:19 -03:00
David Capello
1d1b25d425
Update laf module
2024-02-27 11:54:11 -03:00
David Capello
924eaddf75
Add clang tidy workflow action
2024-02-27 11:50:07 -03:00
David Capello
908677edbb
Update clang-tidy checks
2024-02-27 11:04:03 -03:00
David Capello
b813c1ad5f
Fix regression introduced in 9e2728992d5aa1c971afd64cde8d303fff6b3a6c
...
Some info here:
https://github.com/aseprite/aseprite/pull/4299#discussion_r1503955328
2024-02-27 10:45:26 -03:00
Gaspar Capello
9e2728992d
Fix slice tool doesn't work correctly in a tilemap layer when we are in Manual mode ( fix #4290 )
2024-02-27 10:43:44 -03:00
Martín Capello
7b9594f4e0
Avoid moving the playback cue when decrementing a ping-pong tag's repeat field that has only one frame ( fix #4336 )
2024-02-26 22:07:31 -03:00
David Capello
c64756ebde
Keep testing loading/saving properties as they are in userdata_codec.lua
2024-02-26 17:44:56 -03:00
David Capello
9f75260d25
Change userdata_codec.lua test to check pre-saved user data properties
2024-02-26 17:40:15 -03:00