Commit Graph

7836 Commits (master)

Author SHA1 Message Date
David Capello cbbb4f12fa Update pixman module 2022-05-26 11:31:36 -03:00
David Capello 0e9001fbd3 Go to Desktop instead of showing an error if a parent folder is deleted in the middle of files navigation 2022-05-24 09:06:32 -03:00
Kukhyeon Heo c457f1680a [win] Fix crash browsing files when a folder is deleted (fix #2950) 2022-05-23 18:21:11 -03:00
David Capello f886e85af9 Restore Reference Layer bounds correctly if we delete a cel & undo it (fix #3264) 2022-05-23 18:01:38 -03:00
David Capello fd430603a0 [lua] Allow to compare different docobj types without failing (fix #3218)
Just return false if we compare a layer with a sprite, etc.
2022-05-23 17:15:15 -03:00
David Capello 3ac4ca8869 Create a custom widget for UndoHistory (fix #3281)
Several performance issues fixed (as we avoid keeping a ListBox with
ListItem in sync with the UndoHistory/UndoStates). There is still some
room for improvement: e.g. grouping several ui::View::updateView() in
just one if several onAddUndoState() will be called (e.g. when we are
running a script without transactions).
2022-05-23 16:19:06 -03:00
David Capello 1366a6948c Fix performance issues adding/deleting widgets (related to #3281) 2022-05-20 11:03:12 -03:00
Gaspar Capello 8aff048364 Fix auto show selection edges tool tip (fix #3288) 2022-05-20 08:41:53 -03:00
David Capello 4f9fe90304 Display the Hue bar in ColorTintShadeTone with saturation/value=1.0
This is the previous behavior, but might change in the future.
2022-05-17 13:43:22 -03:00
David Capello aca96c6d36 Use shaders for ColorTintShadeTone/ColorSpectrum selectors (#960)
This is the first step to optimize the painting code of ColorSelectors
which were using a background thread to paint their
surface. ColorWheel is still using the old method (without shaders).

This impl is already a lot faster on CPU, and it's ready for
GPU-acceleration in a future.
2022-05-17 13:24:53 -03:00
David Capello 4b99d3022a Minor change in ColorSelector to resize the previous rendered canvas 2022-05-17 09:07:52 -03:00
David Capello 922f99ef87 Use Graphics::drawSurface() with explicit Sampling/Paint options 2022-05-17 09:07:24 -03:00
Martín Capello feece489fe Fix "Expand menu bar items on mouseover" tooltip (fix #3284) 2022-05-17 09:06:20 -03:00
David Capello 38fca8ed61 Don't use std::iterator<> as it's deprecated in C++17 2022-05-16 11:50:12 -03:00
David Capello b5414c5d95 Merge branch 'fix-2776' of https://github.com/ruerob/aseprite into ruerob-fix-2776 2022-05-13 15:25:18 -03:00
David Capello 0a3644dfbb Update laf module with initial GPU support (#960)
Anyway this is incomplete and Aseprite is not yet ready to support GPU
acceleration (as the rendering phase is CPU intensive).
2022-05-13 11:41:44 -03:00
David Capello e823ee37e9 Fix crash using built-in zlib functions from freetype
We must define FT_CONFIG_OPTION_SYSTEM_ZLIB to use zlib instead of the
built-in zlib functions in FreeType (which crash the program).
2022-05-09 15:40:34 -03:00
David Capello 5864e84d47 Fix freetype compilation including the correct dir for ftconfig.h for Unix-like systems 2022-05-09 13:06:41 -03:00
David Capello ff397fe425 Update compilation instructions to new compilers and Skia-m102
The code is compatible with Skia-m96, so in the best case the update
of Skia is not mandatory yet.
2022-05-09 10:57:34 -03:00
David Capello adaef68bbb Minor change in macros to detect platform 2022-05-05 09:39:16 -03:00
David Capello 50707117f6 Merge branch 'invert-mouse-wheel-for-brush-size' into main
* Fixes #2364
* Introduced in PR #2715
* More information about this issue in:
    https://github.com/aseprite/aseprite/issues/2364#issuecomment-832321902
  and
    issue #2896
2022-05-05 09:33:08 -03:00
David Capello 7fea99a718 Move the "invert wheel for brush size" option to Edit > Keyboard Shortcuts > Mouse Wheel 2022-05-05 09:26:19 -03:00
David Capello 04903692f9 Add some comments & simplify code handling WheelAction::BrushSize 2022-05-05 09:15:00 -03:00
Thanos Kamber 2a00d41e95 Changed the default behaviour in Windows and Linux
This commit makes the default behaviour for changing the brush size to
be scroll up to increase brush size, this should already be the case
in macOS.

Note: It's correct in Windows and Linux, but I don't have a mac to test
it with.
2022-05-04 18:49:22 -03:00
Thanos Kamber b9dfad6b6b Option invert scrolling direction for brush size (closes #2364)
This commit adds the option to invert if the brush size increases or
decreases when holding CTRL and scrolling as mentioned in the issue #2364

By default, the previous behavior is kept.
2022-05-04 18:48:45 -03:00
David Capello e23cd003bb Merge branch 'Enfyve-fix-232' into main 2022-05-03 16:16:36 -03:00
David Capello c7827410bd Move the refresh button at the right of the file selector 2022-05-03 16:15:46 -03:00
David Capello 9248f53447 Don't invalidate the cached file system on each action
We can use the refresh button for this, and in a future we could
refresh it when the window loses focus and is activated again, or
listening the file system changes.
2022-05-03 15:46:01 -03:00
David Capello db84c02e94 Fix crash accessing an invalid iterator in FileSelector::onRefreshFolder() 2022-05-03 15:24:55 -03:00
David Capello debd22014c Fix program hanging when calling FileSelector::refresh()
The FileSystemModule is already locked, so if we use LockFS another
time it will try to lock a FileSystemModule::m_mutex for a second
time.
2022-05-03 15:14:44 -03:00
David Capello f41c6bc1c5 Fix compilation in macOS (and add Command+R to refresh) 2022-05-03 15:11:47 -03:00
David Capello a004b7dfe1 Merge branch 'fix-232' of https://github.com/Enfyve/aseprite into Enfyve-fix-232 2022-05-03 15:11:27 -03:00
David Capello d861f0760c Switch from C++14 to C++17 (#2999) 2022-04-29 10:01:23 -03:00
David Capello dfa357eb8d Add an experimental CommandResult for the execution of commands
This makes possible to return true or false after the execution of
each command app.command.CommandName() if it successes or fails.
Currently the Lua API documentation says something about this here:

  https://github.com/aseprite/api/blob/main/api/command/ReplaceColor.md#replacecolor

But this is not true, the function always returned nil. Now it will
return true or false.
2022-04-29 09:53:57 -03:00
David Capello cc7da16691 Run Console in background so commands can continue running and logging to the console if needed (fix #3227) 2022-04-28 21:58:15 -03:00
David Capello 94065571b5 [x11] Add possibility to set a user-defined string to detect styluses (#3176) 2022-04-28 16:33:21 -03:00
David Capello f638b5ca2b Fix minor memory leak loading a doc::Palette from backup data 2022-04-26 12:16:31 -03:00
David Capello ea47f6624f Update IXWebSocket module 2022-04-26 10:30:34 -03:00
David Capello e45e05eaff Don't create new threads for files we couldn't generate a thumbnail for 2022-04-22 13:12:48 -03:00
David Capello 319824021b Keep plugin preferences when re-installing an extension (fix #3259) 2022-04-22 09:09:10 -03:00
David Capello ae7f340f7e Don't use system libb2 by default in libarchive (fix #3257) 2022-04-22 08:46:57 -03:00
David Capello 65ef6f8e96 Replace utf8 iterators with utf8_decode (fix #3260)
This should fix some problems decoding invalid UTF-8 strings.
2022-04-21 20:24:49 -03:00
David Capello 75a99360a0 Use std::mutex & std::thread in ThumbnailGenerator 2022-04-21 12:46:21 -03:00
David Capello efa3cbf83e Update laf module 2022-04-21 12:26:44 -03:00
David Capello f5bce17e7b Delete unused code in FileOp and FileFormat 2022-04-21 12:23:52 -03:00
David Capello 737a60c5ac Minor change in ThumbnailGenerator::instance() 2022-04-19 17:46:31 -03:00
David Capello 78ec753a3c Simplify list of workers in ThumbnailGenerator with unique_ptrs 2022-04-19 17:14:50 -03:00
David Capello f0a7d1faaa Fix data race loading next thumbnail without locking the item
This was detected with -fsanitize=thread
2022-04-19 17:09:49 -03:00
David Capello 03e0bc26c9 Fix bug initializing auxiliary table for findBestfit() from multiple threads
This could happen if we generated thumbnails for GIF files from
multiple threads when showing the File > Open dialog for the first
time (calling findBestfit() from multiple threads).
2022-04-19 17:07:37 -03:00
David Capello 82a0ec5199 Improve seleting words w/double-clicking on a ui::Entry (fix #3229)
* Now we support selecting multiple words at the same time
* Now punctuation is not included as part of the word
2022-04-19 16:17:28 -03:00