Commit Graph

9591 Commits

Author SHA1 Message Date
David Capello
8d435e02d8 Fix performance regression drawing/showing brush preview (fix #4174)
We were loading the whole list of dithering matrices on each mouse
move now just by chance. As a future refactor we should improve the
handling of dynamics options, e.g. avoid accessing preferences/
rebuilding the tools::DynamicsOptions object on each mouse movement.
2023-11-28 12:47:24 -03:00
David Capello
a8885105e9 Move rows array back to the beginning of ImageImpl buffer
We are not sure, but due to new bug reports about a lagging mouse
movement (#4174), it might be because some memory cache issues: having
the rows array at the end of the pixels data might not be the best
decision.

It was moved at the end because we didn't need that rows array to be
aligned, only the pixels data. But with this patch we're trying to see
if this fixes the issue. So now we moved back the rows array at the
beginning of the image buffer as it was before aeeef8e255
2023-11-28 11:34:50 -03:00
David Capello
6f3e9e21ad Fix crash reading corrupted files with invalid compressed data (fix #4171) 2023-11-26 22:27:14 -03:00
David Capello
7e331d95e2 Simplify main window title bar removing common suffixes
On Apple Silicon we can hide "-arm64", and on PCs we can hide "-x64".
For Intel chips on Mac we'll show "(x64)" suffix, and on PCs we'll
show "(x86)" for 32-bit version.
2023-11-26 22:13:08 -03:00
David Capello
700217c413 Remove cmake policies that aren't used anymore 2023-11-26 21:46:20 -03:00
David Capello
00af963ccb Update laf module 2023-11-26 21:44:54 -03:00
David Capello
28a140f736 Add missing #includes to use ASSERT() macro 2023-11-26 21:44:16 -03:00
David Capello
7fb4bea265 Fix include directories for pixman target
This is required to include the pixman-version.h
2023-11-26 21:43:31 -03:00
David Capello
bf69233bc7 Update link to a Tiled Mode demo (fix #4161) 2023-11-23 19:10:46 -03:00
David Capello
4da02d6770 Update libpng module (possible fix for #4037) 2023-11-23 09:50:19 -03:00
David Capello
3486dcca7e Add minor comment in DocExporter::createEmptyTexture() (#4127, #4135) 2023-11-23 09:47:12 -03:00
Gaspar Capello
9f0cac32b3 Fix palette is not generated from RGB sprite sheet file after Export Sprite Sheet (fix #4127) 2023-11-23 09:42:19 -03:00
Gaspar Capello
8226e5285a Fix Dialog.bounds doesn't work as expected (fix #3898)
Prior to this fix, the 'Dialog:show()' function overrode bounds when
they were defined before the 'show' command.
2023-11-22 18:22:20 -03:00
David Capello
aeb7157277 Fix possibility to edit tileset base index (fix #4163)
Regression from 242555ab06
2023-11-22 16:11:49 -03:00
David Capello
0cc8769e29 Add tileset options when we convert a layer to a tilemap (fix #4158) 2023-11-22 14:37:27 -03:00
David Capello
dec9bddd99 Fix button width when the text is too long due the translation or font (fix #4160) 2023-11-22 10:40:51 -03:00
David Capello
eafb779ef0 Possible fix to some RotSprite crashes (#2780) 2023-11-21 12:58:31 -03:00
TakWolf
55e65a1f8b Description object error 2023-11-20 20:10:59 -03:00
TakWolf
77ea4d40b8 Fix strings spelling typo: Difussion -> Diffusion. Notice, this is not compatible for translations. 2023-11-20 20:10:59 -03:00
David Capello
cbe14089af Enable FineControl for selection transformation only if we press the Ctrl key again (fix #3977)
Reimplement #3977 and #3990
2023-11-20 20:02:24 -03:00
David Capello
a27ea04f7d Revert "Fix after dropping a selection via Copy (Selection + Ctrl), handlers are not positioned correctly (fix #3977)"
This reverts commit 456113d015.
2023-11-20 16:38:12 -03:00
David Capello
fee543f9e1 Add option to disable Snap to Grid by default when we move the selection (fix #4153) 2023-11-20 15:19:38 -03:00
David Capello
8af4747635 Use configured dynamics of active tool w/o opening dynamics popup (fix #4151) 2023-11-20 14:50:52 -03:00
David Capello
cc0f8d0dc4 [lua] Fix crash calling io.open() without argument (fix #4159) 2023-11-20 14:34:50 -03:00
David Capello
1a3c32a93d Fix typo in en.ini file: extra " char (fix #4148) 2023-11-17 14:40:01 -03:00
David Capello
340ed3f68f Fix crash making a tileset bigger and pressing Remap (fix #4144)
This happens only if the tilemap already has tile references outside
the valid range of the tileset (and even bigger than the new tileset
size).
2023-11-15 20:58:00 -03:00
David Capello
a6d9dce339 Update About dialog copyright year 2023-11-15 20:38:32 -03:00
David Capello
1311944667 Add option to enable the Snap to Grid option for the brush preview (fix #4137) 2023-11-15 20:30:58 -03:00
David Capello
edb2393690 [osx] Fix mouse misalignment and show tabs area again when Screen Scaling=100% (fix #4142)
Originally reported here:
https://steamcommunity.com/app/431730/discussions/0/3954784199573459745/
2023-11-15 19:59:41 -03:00
David Capello
f92f14f261 Fix possible crash adding reference layer (fix #3949) 2023-11-13 10:51:19 -03:00
David Capello
d39a656bb4 Merge branch 'flip' (fix #3603)
Implemented a specific item of tilemap feature (#977) to allow flipped
tiles in X/Y/Diagonal axes.
2023-11-13 09:31:20 -03:00
David Capello
62bdd8af9f Add "Advanced Options" checkbox in Tileset selector
To hide "Base Index" & "Allowed Flips" options by default.
2023-11-10 17:19:41 -03:00
David Capello
a56c801041 Move the timeline button in the toolbar to the bottom 2023-11-10 15:42:52 -03:00
David Capello
dd5fb871b5 Remap tiles with flags correctly 2023-11-10 11:55:23 -03:00
David Capello
7f2d2185bd Add a workflow to close spammy PRs
First attempt, not sure if this will be useful at all.
2023-11-10 10:42:46 -03:00
David Capello
25015a6e18 Fix eyedropper in Tiles mode to pick tiles that are flipped and have masked areas
Sprite::pickCels() wasn't taking care of the tile flags to pick
tilemap layers correctly with flipped tiles.
2023-11-09 16:44:46 -03:00
David Capello
302d998218 Add support to match flipped tiles automatically in Auto/Stack modes
By default Aseprite will not try to match flipped versions of the
tiles (as it requires more CPU), but when we create a tileset we can
specify which flips can be matched automatically (new
Tileset::matchFlags() property).

These flags are just for the Auto mode, if we manually insert a
flipped tile, that is always supported, even when the matchFlags() are
not specified.
2023-11-09 16:44:46 -03:00
David Capello
25f61ff5f9 Fix bug w/auto tileset mode adjusting tiles when we replace a unique instance of a tile+flag with a new tile
The assert() in remove_unused_tiles_from_tileset() checking for the
tiles histograms was failing because we weren't adjusting the
histogram correctly when a tile w/a flag is replaced w/another without
flags.
2023-11-09 16:44:46 -03:00
David Capello
ed649e6bab Add Space+X and Space+Y alternatives to flip brush/tile flags
We already have Space+H and Space+V, but as the flags are XYD probably
Space+X/Y makes more sense.
2023-11-09 16:44:46 -03:00
David Capello
34bd6cf336 Show tile flags in the editor canvas when we use Ctrl key/move tool
Added build_tile_flags_string() utility to create the string used in
to show the tile flags (XYD) on the status bar, the editor canvas,
etc.
2023-11-09 16:44:46 -03:00
David Capello
75b10d40be Remove unused variable in lambda function 2023-11-09 16:44:46 -03:00
David Capello
39bdba4a7d Fix assert converting Color{index} to a tile from tilemap.lua test
We must be able to convert a app::Color::IndexType to a tile index.
2023-11-09 16:44:46 -03:00
David Capello
78cda70ab6 Add support to flip/rotate tiles to ChangeBrush command (like #1222) 2023-11-09 16:44:46 -03:00
David Capello
5760b96708 Fix painting with tiles and flags 2023-11-09 16:44:46 -03:00
David Capello
20826e8730 Fix tile information (index/flags) in StandbyState 2023-11-09 16:44:46 -03:00
David Capello
b7de90a82b Fix eyedropper for tiles w/flags when picking colors from "Current Layer" 2023-11-09 16:44:46 -03:00
David Capello
0796d3732c Fix painting on flipped tiles in manual mode 2023-11-09 16:44:46 -03:00
David Capello
3606a54826 Fix eyedropper to pick colors/tiles correctly from flipped tiles
* Added a new app::Color type for tiles, to store the flags of the
  picked tile.
* Fixed color bar/status bar with a new draw_tile() to draw tiles
  with flip flags.
2023-11-09 16:44:46 -03:00
David Capello
d3a8a10517 [lua] Add test about saving/loading/modifying tilemap w/flags
Something interesting is that Image:drawPixel() must ask for a rehash
to the tileset when the tile is modified, maybe we can find a better
way to handle this in the future.
2023-11-09 16:44:46 -03:00
David Capello
b43fbe2249 Add simple rendering of tiles w/flags (x/y/d flip) 2023-11-09 16:44:46 -03:00