Commit Graph

7836 Commits (master)

Author SHA1 Message Date
Joseph-Eugene Winzer da81c0266d Fix empty undo history crash (fix #3417)
m_undoHistory is not valid for tabs other than sprites. For example
opening the README or Home tab does not initialize the undo history,
thus aseprite will segfault when it tries to get its first entry.
2022-07-13 05:18:04 +02:00
David Capello 9a3958278b Fix bug moving a cel, flattening all layers, and then undoing (fix #3416)
The m_boundsF position read from doc::read_celdata() was overwritting
the position of the cel when it was restored from the undo
information.
2022-07-11 10:24:43 -03:00
David Capello 62c052dd40 Use a std::unique_ptr for m_boundsF in doc::CelData 2022-07-11 10:21:38 -03:00
David Capello d46724329f Minor improvement in FlattenLayers to avoid some cmds
Instead of creating cmd::SetLayerName and cmd::MoveLayer, we can add
the layer with its name and in the correct place directly.
2022-07-11 10:10:36 -03:00
David Capello 7ca66790c5 [win] Fix rounded corners on Windows 11 when some windows appear for first time 2022-07-10 22:22:57 -03:00
David Capello 6e0394b7dc Fix using MoveMask command without visible selection
Issue found testing #2796 without selection/without calling SelectTile
command.
2022-07-07 16:33:39 -03:00
David Capello daa7cc837a Minor change: Add const to some pointers in write_layer() 2022-07-07 16:10:51 -03:00
David Capello 8fe88606c6 Fix possible std::clamp() assert fail 2022-07-07 16:08:40 -03:00
David Capello 1b76076c52 Fix clicking a menuitem that is above another parent menubox/bar (fix #3386) 2022-07-07 16:07:22 -03:00
David Capello 59c6c06fa0 Add missing libc++abi-10-dev dependency on Linux (#3382) 2022-07-03 12:41:02 -03:00
David Capello 4f2eae6b77 Use C++17 [[fallthrough]] if needed 2022-06-29 20:14:03 -03:00
David Capello b01c28c48d Add missing override modifier 2022-06-29 20:05:58 -03:00
David Capello 7aa90db770 [lua] Add undo information in Sprite:newSlice() (fix #3393) 2022-06-29 19:46:37 -03:00
Martín Capello c00f4b0d26 Comment m_overlap->setImmutable() to avoid crashing when moving tabs while debugging on windows 2022-06-29 15:02:21 -03:00
Martín Capello 306e13dfad Clear the exported images with its mask color instead of 0 (fix #3391) 2022-06-28 18:43:23 -03:00
Gaspar Capello 1f5e4cfc4f Add '{title}' and '{layer}' functionality to the Export dialog (fix aseprite/aseprite#3363)
Also Add '{title}' functionality to CLI dialog on sprite-sheet file name
2022-06-28 18:42:33 -03:00
David Capello 3d0b5d809c Fix bug in move_or_copy_palette_colors() accessing out-of-range index 2022-06-28 15:17:29 -03:00
David Capello 3adfe13b7e Add RelWithDebInfo and Debug build types to GitHub actions 2022-06-28 14:55:36 -03:00
David Capello 0aeacd46de Disable ccache on Windows (fix #3404) 2022-06-28 14:33:12 -03:00
David Capello aaf779e399 Update laf module 2022-06-28 14:02:33 -03:00
David Capello 6d30f274f4 [msvc] Fix problem using invalid min/max bounds in std::clamp
There is an assert() in the std::clamp() impl on MSVC that checks if
the min/max values are valid.
2022-06-28 14:02:18 -03:00
David Capello b7d5d4a2c9 Editable resize factor in File > Export (fix #3007)
Related to #3008
2022-06-15 12:25:43 -03:00
David Capello af74f8bc84 Fix memory leak when the created cel is not used in ExpandCelCanvas 2022-06-14 23:25:10 -03:00
David Capello 4aa5fedfec New "on the fly" resize when saving/exporting image (fix #1112)
Implemented using a new FileAbstractImage interface to get scanlines
for each frame automatically resized (without modifying the original
sprite/without using SpriteSize command/adding new undo information).

Related to #3008
2022-06-14 23:19:39 -03:00
David Capello c58dae51fa Fix crash using a deleted surface in Overlay::restoreOverlappedArea()
Can happen when a resize event is received and m_captured stores the
surface with the old window size.

This was found opening a file from the CLI on Linux/X11.
2022-06-14 21:39:38 -03:00
David Capello e2798bc849 Fix crash creating the "No Recent File" w/AppMenuItem() (fix #3371) 2022-06-14 14:01:28 -03:00
David Capello 30b61e501e [lua] New Image(Image, Rectangle) ctor 2022-06-14 10:04:54 -03:00
David Capello 82cd244a6e Add support to use SaveFile commands from CLI (without UI) 2022-06-13 19:19:44 -03:00
David Capello ddc1b76214 Convert SaveFileBaseCommand to CommandWithNewParams
With this patch we fixed some use cases:
* We can show the ui with a default filename { filename=..., ui=true }
* We can specify fromFrame/toFrame for SaveFileCopyAs
2022-06-13 17:04:12 -03:00
David Capello d160fb8b91 Minor changes in SaveFileCommand to use enums instead of bool params 2022-06-13 12:46:11 -03:00
David Capello 25fbe786f8 [osx] Compile for macOS 10.9 in GitHub Actions 2022-06-09 19:10:31 -03:00
David Capello 4471dab289 [osx] We cannot use std::optional::value() if we want to support macOS 10.9
It looks like value() member was introduced in macOS 10.13 (error
detected because we use CMAKE_OSX_DEPLOYMENT_TARGET=10.9).
2022-06-09 19:07:08 -03:00
David Capello 71d885d2a0 Replace base::clamp -> std::clamp as now we use C++17 2022-06-09 19:05:48 -03:00
David Capello b2d46bf10b Use std::unique_ptr/optional in more App objects 2022-06-09 17:29:40 -03:00
David Capello 99c0d5b743 Fix SpriteEvents destruction (fix #3162)
Classic "static initialization order fiasco" but in the destruction
phase.
2022-06-09 16:28:25 -03:00
David Capello 1630416991 Fix a crash when a script generates a Fg/BgColor change when closing the app
If a script Dialog changes the app.fgColor/bgColor in its onclose
callback, it will notify all fgColor/bgColor preference
observers (ContextBar is one of them), if we don't disconnect from
these signals when we're deleting ContextBar, the signals will call a
deleted slot/connection from app::script::close_all_dialogs().
2022-06-08 16:24:36 -03:00
David Capello def9752199 Update laf module 2022-06-07 15:04:50 -03:00
David Capello 39ba883f90 Fix bugs executing plugin init/exit() functions in different situations
Reinstalling a previously enabled plugin extension wasn't running the
init() function, and uninstalling it wasn't calling its exit()
function.
2022-06-07 15:02:54 -03:00
David Capello a39e235b23 Don't store a Command* pointer in AppMenuItem (fix #3359, fix #3360)
Instead of storing a Command* we can store the command ID, which it's
less problematic in extreme cases where the Command that is being
referenced is deleted or recreated, i.e. when a plugin is
disabled/re-enabled.
2022-06-07 14:47:40 -03:00
David Capello fde8c1edb4 Add libcxx-devel as required package for Fedora in INSTALL.md (#3353) 2022-06-02 12:05:11 -03:00
David Capello c84210fa74 Don't use expat for libarchive (we don't need support for xar files) 2022-05-31 16:51:00 -03:00
David Capello 93dcc0349f Fix warning by ThreadSanitizer in HttpLoader 2022-05-30 19:41:41 -03:00
David Capello 6ce205e0db Add experimental option to disable shaders for color selectors (#960) 2022-05-30 19:35:01 -03:00
David Capello 1781ee0f15 Fix bug painting a spot w/brush size=max when releasing the mouse after auto-scrolling 2022-05-30 18:45:57 -03:00
David Capello 251323a4d5 Add new MouseMessage() ctor to copy full information of the original message
This is mainly to keep the pressure information when a MouseMessage is
copied, and any future property which could be added in MouseMessage.
2022-05-30 18:44:12 -03:00
David Capello 0d0cfa7bb6 [win] Fix double-clicking on Surface devices (fix #3347)
Fixed bug painting with full brush size when double-clicking on a
Surface device with Dynamics option enabled.
2022-05-30 14:34:52 -03:00
David Capello 23b269a6bc Use shaders for ColorWheel selector
This patch includes a fix for the RYB color wheel (the blue was not in
the correct hue angle).
2022-05-27 19:57:37 -03:00
David Capello b561a6fbfb Use Sentry breadcrumbs to get wintab32.dll information
Useful to detect which vendor is causing most of the crashes related
to wintab32.dll. Related to:
https://github.com/aseprite/aseprite/issues/2785#issuecomment-1033222868
2022-05-26 19:34:23 -03:00
David Capello 6277329176 Update harfbuzz module 2022-05-26 15:26:43 -03:00
David Capello e8ad293aca Update laf module 2022-05-26 15:06:00 -03:00