Commit Graph

1413 Commits

Author SHA1 Message Date
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
4f2eae6b77 Use C++17 [[fallthrough]] if needed 2022-06-29 20:14:03 -03:00
Martín Capello
2639c36b2f Create EnterLicense dialog 2022-06-28 19:09:10 -03:00
Martín Capello
588d8027f4 Conditionally compile the license activation code when the ENABLE_DRM flag is defined 2022-06-28 19:09:10 -03:00
Martín Capello
740dd166de Refactor the code to change the "register" dialog for "enter_license" dialog 2022-06-28 19:09:10 -03:00
Martín Capello
fcac48cccb Add option to enter Aseprite license key (#2664)
This is an initial version to add an automatic update feature in the
future.
2022-06-28 19:09:10 -03:00
David Capello
faecd682fc Merge branch 'main' into beta 2022-06-28 19:05:54 -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
caf475b2dc Merge branch 'main' into beta 2022-06-15 13:44:34 -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
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
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
8f44b521b6 Merge branch 'main' into beta 2022-06-10 10:31:13 -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
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
684d06ede8 Merge branch 'main' into beta 2022-05-23 18:04:55 -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
David Capello
b9206cc872 Fix locked sprite errors moving/copying multiple cels when the Cel (or Layer) Properties dialog is open (fix #3278) 2022-05-19 19:15:32 -03:00
David Capello
52779d4b09 Fix memory leak in UserDataView simplifying its ctor
Each "new gen::UserData" wasn't being freed.
2022-05-19 18:56:21 -03:00
David Capello
ff5afba6ae Merge branch 'main' into beta 2022-05-19 16:55:30 -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
8d2863a58b Merge branch 'main' into beta 2022-05-05 09:57:29 -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
c15f374690 Fix timeline re-painting issue when changing tag color (#3242)
This is the worst possible hack, but we're already doing this for cel
and layer color. Something to think about with #3266
2022-04-25 15:14:02 -03:00
David Capello
2a59076f49 Merge branch 'main' into beta 2022-04-25 11:45:31 -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
46626bb5ce Merge branch 'main' into beta 2022-04-13 23:01:12 -03:00
David Capello
e4c2995326 Extensions now support defining keyboard shortcuts (#1403, #3239) 2022-04-13 22:46:48 -03:00
David Capello
721e401052 Fix some memory leaks & simplify code sending UI messages 2022-04-13 21:04:54 -03:00
David Capello
b4d3692927 Add ShowMenu command so the user can customize Alt+top level menu mnemonic shortcuts (#3239) 2022-04-12 22:52:09 -03:00
David Capello
43513e0f1b Don't show tooltip when a new frame/layer is created from a script transaction
This might improve the performance of some scripts if it creates
several frames/layers at the same time.
2022-04-11 09:53:01 -03:00
David Capello
16ca5a55db Merge branch 'main' into beta 2022-04-05 23:16:55 -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
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
18ba8f184b Merge branch 'main' into beta 2022-03-02 21:31:31 -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
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
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
David Capello
1f4e3bcd11 Merge branch 'main' into beta 2022-02-08 12:56:26 -03:00
David Capello
0cfeacab5c Stop filter preview before we change filter parameters
Similar fixes as in 811b893320
2022-02-03 14:59:46 -03:00
Joshua Ogunyinka
811b893320 Fix occassional crashes in despeckle/median filter (fix #2903) 2022-02-03 12:51:30 -03:00
David Capello
2b57fcaa6c Merge branch 'main' into beta 2021-12-01 18:14:53 -03:00
Joshua Ogunyinka
3c7b344389 Save and retain color profile when saving palettes (part of #2893) 2021-12-01 09:21:02 -03:00
David Capello
c4f2bf79a0 Merge branch 'main' into beta 2021-10-25 17:47:23 -03:00
David Capello
91e8e5cd46 Support scrolling the debugger source code viewport w/the mouse wheel 2021-10-25 17:40:47 -03:00
David Capello
534163ae5f Fix painting issues in the debugger filling the line number column correctly 2021-10-25 17:40:12 -03:00
David Capello
1e57cd267d Merge branch 'main' into beta 2021-10-13 10:42:20 -03:00
David Capello
6dd128d637 Add main_area in debugger window to show only the buttons initially 2021-10-13 10:35:55 -03:00
David Capello
d077900fe5 Merge branch 'main' into beta 2021-10-13 10:15:39 -03:00
David Capello
212e9fbe6c New initial Lua debugger version (#1967)
Incomplete version of the Lua debugger.
Some available features:

* Break in next executed instruction
* Step in, over, out
* See & navigate stacktrace
* See local variables

Some missing features:

* Breakpoints
* Eval user expressions with local variables

The UX needs some improvement yet.
2021-10-12 16:52:14 -03:00
David Capello
f318a42f19 Merge branch 'main' into beta 2021-09-29 10:16:02 -03:00
David Capello
364f62ee4a Merge branch 'sentry' (fix #2857) 2021-09-23 21:09:27 -03:00
David Capello
0c604ca4ba Ask for consent to share crash data 2021-09-23 15:22:26 -03:00
David Capello
775e8f86be Merge branch 'main' into beta 2021-09-23 09:19:23 -03:00
David Capello
515952cf32 Enable Fill/Stroke commands when !ENABLE_UI 2021-09-23 09:18:14 -03:00
David Capello
5f9b6f494a Merge branch 'main' into beta 2021-09-22 17:54:57 -03:00
Gaspar Capello
83c18399a4 Fix incorrect cropping rectangle calculation in canvas size command in lua script
Prior to this fix, CanvasSize command via lua script results in bad canvas and image clipping.
2021-09-22 17:40:29 -03:00
David Capello
9e10a1c82c Merge branch 'main' into beta 2021-09-06 18:30:45 -03:00
David Capello
845f275ae7 Enable cycling colors when palette size=1 so RGB/HSV colors are converted to index=0 anyway
In this way after ChangeColor command to increase/decrease an index is
used, we always got an index selected (even index=0 if palette size=1)
2021-09-01 10:38:35 -03:00
David Capello
adc9c109da Merge branch 'main' into beta 2021-08-31 09:06:09 -03:00
Jeremy Behreandt
edb9f89456 Cyclic Color Change in Palettes
Made Change Color: Increment/Decrement Foreground/Background methods cyclic instead of clamped. At last palette element, incrementing selected color returns to first element. At first palette element, decrementing color returns to last element.
2021-08-31 01:10:18 -05:00
Joshua Ogunyinka
f85f24e847 fixed restoring grid preference on undo/redo (fix #2872) 2021-08-28 08:54:00 +04:00
David Capello
a5b41d2630 Merge branch 'main' into beta 2021-08-19 10:34:32 -03:00
David Capello
341408e902 Don't crash when saving palettes to .jpg format (fix #2654)
Now .jpg is not even show in the list of available format to save
palettes (same for other file format that don't support indexed color
mode).
2021-08-18 13:03:38 -03:00
David Capello
22a5c4c324 Merge branch 'main' into beta 2021-07-09 10:47:16 -03:00
David Capello
5a6bd465f5 Cache mouse cursors to avoid re-generating them on each setCursor()
This should improve the mouse movement, where a new mouse cursor was
created on each mouse movement with black & white pixels. It's a
regression introduced in ef4f691459
(which was originally introduced to improve the mouse movement
perception in a 100Hz monitor).

This might be a possible fix for:
https://github.com/aseprite/aseprite/issues/2713
2021-07-09 10:21:16 -03:00
David Capello
8f838ba36d Backport FullscreenMode command (#464)
Original from ae02600a63
2021-07-05 20:11:46 -03:00
David Capello
c42c5e1453 Backport new laf API to main branch of aseprite
Some features from the beta branch of aseprite & laf were backported
to the main branch of aseprite.

Related commits:
- New memory handling (db4504e816)
- New get event with timeout (e6ec13cc31)
- Convert os::NativeCursor to an enum (06a5b4f3ae)
- Adapt code to the new os::Display -> os::Window refactor (5d31314cdb)
- Save/load main window layout correctly and limit to current workarea (d6acb9e20f)
- Redraw window immediately on "live resizing" (d0b39ebade)
2021-07-05 17:51:29 -03:00
David Capello
66e77a7e49 Merge branch 'main' into beta 2021-06-29 21:15:57 -03:00
David Capello
f99b5218b9 Remove unused code from ReplaceColor command
The original intention was to save selected colors in the Replace
Color dialog so then showing up it again would restore those saved
color. But it never worked in that way and just by mistake it was
using the Foreground/Background pair of colors by default (which is
the desidered behavior now). So we are just removing the buggy code
that never worked. (Related to #2028 in some way.)
2021-06-29 16:31:51 -03:00
David Capello
e73d96262d Always use Foreground color in Select > Color Range (fix #2028) 2021-06-29 16:26:48 -03:00
David Capello
78abaf0292 Minor change in MaskColor add ConfigSection constant 2021-06-29 16:23:56 -03:00
David Capello
9609d2c827 Fix crash if we press F5/reload menus when we have a menu open (fix #2496) 2021-06-28 21:13:56 -03:00
David Capello
9f300bf55d Better handling of Cel Properties for multiple cels 2021-06-11 11:04:52 -03:00
David Capello
a4e7ac13c1 Fix crash in Cel properties dialog when range is enabled & active cel is empty 2021-06-11 10:45:49 -03:00
David Capello
fb88a5c1f1 Message::setPropagateToChildren() receives a bool argument 2021-06-07 17:17:18 -03:00
David Capello
eec9ed0bcc Fix a couple of minor leaked ui::Messages 2021-06-07 15:20:45 -03:00
Gaspar Capello
5f48d77786 Add octree quantization algorithm supports alpha channel
Before this commit, Octree wasn't support alpha channel.
Also the automatic quantization algorithm selection was removed because Octree support alpha channel now.
2021-06-04 10:06:06 -03:00
David Capello
a3f9143cbe Don't ask to adjust the Screen Scaling
For the default theme it makes sense (and maybe for most theme
variants it will make sense to avoid adjusting the screen
scaling). But maybe other themes will want to adjust the scale
automatically when choosing the variant.
2021-05-22 00:46:01 -03:00
David Capello
c99000a2c3 Add theme variants to switch easily between Light/Dark themes 2021-05-22 00:42:36 -03:00
David Capello
e7f0832ff3 Fix setting color space of all os::Windows 2021-05-21 21:44:30 -03:00
David Capello
2bc64cf5ff Add PalettePicks::invert() member function 2021-05-20 17:57:22 -03:00
David Capello
de8b6ff2b4 Add support to select used/unused tiles from multiple tilemap layers using the same tileset
With this commit we've also simplified the
SelectPaletteColorsCommand::selectTiles() function.
2021-05-20 17:49:16 -03:00
David Capello
bc824ed9e6 Fix crash calling PaletteSize without active sprite 2021-05-20 17:31:08 -03:00
David Capello
56ae29a9b4 Add different names to SelectPaletteColors and possibility to assign keyboard shortcuts to these items
Now we can assign keyboard shortcuts to the whole Palette menu.
2021-05-20 17:28:32 -03:00
David Capello
4b2947a81c Refactor SelectPaletteColorsCommand and enable it always for colors and in tilemap layers for tiles
The command doesn't depend on the current TilemapMode.
2021-05-20 16:26:21 -03:00
Gaspar Capello
3c6320a4b5 Add select used colors and select used tiles on palette options 2021-05-20 15:59:42 -03:00
David Capello
414165f078 Add support to resize sprites with tilemaps
This fixes Sprite > Sprite Size and File > Export when a resize
parameter != 100% is given.
2021-05-18 14:52:53 -03:00
David Capello
69a7faefa2 New default RgbMapAlgorithm to select what could works better at a given time 2021-05-09 20:53:09 -03:00
David Capello
1779e11f5e Use expandWindow() to expand/collapse some windows that were left behind in the refactor 2021-05-09 20:45:57 -03:00
David Capello
8a22fe220c Use configured algorithm to convert RGB -> Indexed by default 2021-05-09 12:58:27 -03:00
David Capello
660407c9b2 Switch multiple displays flag in runtime
Already created ui::Window are not modified and closed/reopened.
2021-04-20 14:14:54 -03:00
David Capello
b90c56487d Merge branch 'main' into beta 2021-04-16 14:13:05 -03:00
David Capello
4fe8c93c5c Fix regression cannot move/resize reference layers
Regression introduced in f3ab779bfd
2021-04-16 10:23:35 -03:00
David Capello
14c3cfe393 Fix conversions between layer <-> tilemap when grid origin != 0,0
We've changed a restriction for tilesets: grid's in doc::Tileset must
have origin=(0,0); and the origin of a doc::Grid only makes sense for
the sprite grid (where the origin is set by the user) or for a tilemap
cel (where the origin is the cel origin).
2021-04-15 21:26:45 -03:00
David Capello
de68fddbe7 Merge branch 'main' into beta 2021-04-13 19:12:46 -03:00
David Capello
a035f64d8d Simplify About dialog 2021-04-13 19:08:33 -03:00
David Capello
a012dac020 Merge branch 'main' into beta 2021-04-12 17:11:28 -03:00
David Capello
8b4746e813 Add option to disable the "open sequence of files" dialog 2021-04-12 16:57:02 -03:00
David Capello
2df3cd8a80 [lua] Add app.command.ImportSpriteSheet()
Feature request: https://community.aseprite.org/t/8482
2021-04-09 17:28:59 -03:00
David Capello
ae904428fa Merge branch 'main' into beta 2021-04-08 16:15:02 -03:00
David Capello
f3ab779bfd Don't transform hidden layers (fix #2680) 2021-04-08 11:24:55 -03:00
Martín Capello
fdbb3aec59 Fix alert when installing an extension
Before this, the alert's parent window was the main window instead of
the options window.
2021-04-05 14:31:48 -03:00
David Capello
bcd69495ce Fix several issues locating windows with multiple UI windows
We've refactored the code to support locating windows (and popups
windows + hot regions) correctly in both modes: with one ui::Display
and with multiple ui::Displays.

For this we've added a new ui::fit_bounds() function that works in
both modes.
2021-03-19 18:57:56 -03:00
David Capello
35bb3af6e2 Replace all base::Bind() with lambda functions 2021-03-05 20:09:42 -03:00
David Capello
8034b0cbcc Add support for multiple native windows (#139, #250, #962, etc.)
Each ui::Window now can have a related native os::Window. This
connection is done through the ui::Display class added recently in
c3d52f0bbe.
2021-03-02 13:50:49 -03:00
David Capello
f70e8d3ae7 Add ui::expandWindow() to change the size of a window dynamically 2021-03-02 08:44:35 -03:00
David Capello
44437e0d1f Add new ConvertLayer command ("Layer > Convert To" menu item)
Now we have an easy way to convert between:
  Background <-> Layers <-> Tilemaps

Deprecated (they are kept only for backward compatibility):
  BackgroundFromLayer
  LayerFromBackground
2021-02-23 11:32:08 -03:00
David Capello
7e732b3223 Don't use cmd::TrimCel() on tiles when manual mode is enabled
Applied the fix from e1402381a8 to all
places where cmd::TrimCel() is used.
2021-02-22 16:39:40 -03:00
David Capello
c3d52f0bbe Add ui::Display to support multiple windows in the future
This ui::Display is related to one native os::Window, so the dirty
region/invalid region is now part of a ui::Display instead of a
ui::Manager.

* Replaced ui::display_w/h() functions with ui::Display::size()
  and ui::get_desktop_size()
* The ui::Manager contains the main ui::Display, and in the future an
  ui::Window will have its own ui::Display
2021-02-18 12:34:42 -03:00
David Capello
5d31314cdb Adapt code to the new os::Display -> os::Window refactor 2021-02-02 15:59:28 -03:00
David Capello
289a6ab864 Merge branch 'master' into beta 2021-01-29 12:19:43 -03:00
Gaspar Capello
3035a5713d Fix crash deleting a group layer at the top level
The crash could be achieved by having just one group layer at the top
level (with some children) and trying to delete it using Layer >
Delete Layer menu option (without using the timeline range).

Report: https://igarastudio.zendesk.com/agent/tickets/1719
2021-01-15 17:02:10 -03:00
David Capello
b1016a419f Minor formatting changes 2021-01-05 14:43:43 -03:00
David Capello
e813773445 Merge branch 'feature-css-export' into css-export 2021-01-05 12:23:57 -03:00
David Capello
d3f3858859 Minor change "save_as_preset" -> "saveAsPreset"
This new camelCase style is prefered since the introduction of the Lua
scripting API.
2021-01-05 11:41:26 -03:00
mezz
3211831da3
Create and use new signal: PalettePresetsChange 2021-01-04 09:53:20 -10:00
mezz
be48c40dc5
Reload palette popup and refresh search results when saving a new preset 2020-12-29 20:45:37 -10:00
mezz
98a0bcb2d7
Add palette option to save as preset
This works the same as saving a palette normally, but opens the file dialogue to the default palette preset directory.
2020-12-29 19:56:02 -10:00
David Capello
91628daa9d Merge branch 'master' into beta 2020-12-22 15:48:15 -03:00
Gaspar Capello
116201d8a1 Add custom data to Sprite Properties Window (fix #1306) 2020-12-16 12:40:05 -03:00
David Capello
c0ac9208ff Fix layer name for new sprites to match the translation in new layer (fix #2549) 2020-11-27 19:27:13 -03:00
David Capello
26b75bdb57 Add option to specify/modify the tileset name 2020-11-10 17:48:09 -03:00
David Capello
0cf28840b5 Don't show tileset button in Layer Properties when it's open for a regular layer 2020-11-09 19:45:04 -03:00
Gaspar Capello
08f63f1b02 Fix cel and layer user data text input do not update when a fast layer change happen. 2020-11-05 18:42:32 -03:00
David Capello
db80c2a07e Real-time preview when editing tilemaps in Manual mode
In this way we can see the changes to all instances of the same tile
in the tilemap in real-time. The preview is done through a new
"preview tileset" that is used in the render concept (instead of the
preview image, a preview tileset is used as a temporal tileset to be
used for preview purposes only).
2020-11-04 16:54:12 -03:00
David Capello
505aa6119a Add option to change the "base index" from the layer properties 2020-10-30 21:11:58 -03:00
David Capello
a3286fc20a Minor refactor "first visible index" -> "base index" 2020-10-30 20:58:45 -03:00
David Capello
c2e5e69882 Simplify tilesets impl using tile index 0 = an empty tile
In this way we always have an empty tile available in the drawing
process. We've also added the Tileset::firstVisibleIndex field to
change the visible index of the tile 1 so we can offset the visible
number by the user (just as a visual aid / simulate old tilesets with
index=0=non-empty tile).
2020-10-30 16:33:34 -03:00
David Capello
bff884b4c8 Merge branch 'master' into beta 2020-10-22 12:18:30 -03:00
David Capello
38d1b8a8e2 Fix Flip command labels when assigning shortcuts (fix #2545) 2020-10-17 09:36:36 -03:00
David Capello
8b1f887720 Show tile numbers when moving tilemaps 2020-10-13 18:12:29 -03:00
Gaspar Capello
13addb4336 UI user data window integration 2020-10-13 11:07:10 -03:00
David Capello
120fb4dca4 Add support to copy/cut/paste/transform tilemaps 2020-10-02 19:03:53 -03:00
David Capello
edebb57f66 Refactor clipboard code
* Moved all clipboard:: functions inside app::Clipboard class
* Convert app:📋:ClipboardFormat enum to
  app::ClipboardFormat enum class
* Added app::Context::clipboard()
2020-09-25 11:14:52 -03:00
David Capello
b1c0d80356 Add support to clear/fill/stroke selections in tiles mode 2020-08-27 20:32:22 -03:00
David Capello
0c351f6fcf Now SwitchColors command works in tiles mode 2020-08-24 12:25:35 -03:00
Gaspar Capello
f630714547 Removed color functions from tag related code, fix backward compatibilty and added default color in tag constructor (before this, tests were failing) 2020-08-21 18:51:43 -03:00
Gaspar Capello
55a37d0e6b Add tag userdata
Some code from https://github.com/aseprite/aseprite/pull/2265

Co-authored-by: Clarence "Sparr" Risher <sparr0@gmail.com>
2020-08-21 18:51:05 -03:00
David Capello
5ee3ebdd71 Add fg/bg tiles selectors in ColorBar
Now fg/bg colors and fg/bg tiles are different widgets, and the
StatusBar can show tiles when the eyedropper is picking tiles.
2020-08-21 18:28:31 -03:00
David Capello
3623720dd4 Merge branch 'master' into beta 2020-08-18 11:05:37 -03:00
David Capello
b355f34a70 Export all groups (even collapsed ones) by default in JSON metadata (fix #2484) 2020-08-17 17:14:12 -03:00
David Capello
e37ddbd7de Merge branch 'tilemap-editor' into beta 2020-08-14 21:08:59 -03:00
David Capello
432e8d9943 Merge branch 'master' into beta 2020-08-12 14:23:32 -03:00
Gaspar Capello
d701ef9ffd Fix replace current pallete does not create a palette (fix #2480) 2020-08-11 10:19:37 -03:00
David Capello
2ffac6803c Merge branch 'beta' into tilemap-editor 2020-08-06 10:47:06 -03:00
David Capello
4e08d12f28 Merge branch 'master' into beta 2020-08-06 10:46:32 -03:00
David Capello
14fbee19f0 Fix cli_tests when Strings is not available 2020-08-04 18:11:18 -03:00
David Capello
d7a3da9518 Fix crash using opacity slider on CelProperties after deleting a cel
Crash report: https://igarastudio.zendesk.com/agent/tickets/1208
2020-08-04 10:42:28 -03:00
David Capello
d97565e4e0 [lua] Fix app.command.SetInkType{ type=... }
Related to https://community.aseprite.org/t/6532/3
2020-08-03 13:52:41 -03:00
David Capello
5edf30687b Add File > Scripts > Rescan option to rescan the available scripts
https://community.aseprite.org/t/6170/6
2020-08-03 13:51:40 -03:00
David Capello
d8f6c666de Merge branch 'beta' into tilemap-editor 2020-07-30 16:49:17 -03:00
David Capello
20d763ca4b Merge branch 'master' into beta 2020-07-30 16:48:43 -03:00
David Capello
8c0f81cbba Improve handling of image sequences when dropping files or opening multiple files
Now we can repeat the same action (Agree/Skip the all sequence of
images) for all the dropped files/selected files in the "Open File"
dialog (as in the CLI new behavior).
2020-07-30 16:27:23 -03:00
David Capello
1255b17738 Fix opening image sequences more times from CLI
We've also fixed the Agree/Skip dialog to show a checkbox and repeat
the same action for all image sequences.

Fixes:
https://github.com/aseprite/aseprite/issues/2128
https://github.com/aseprite/aseprite/issues/1936#issuecomment-451565903
2020-07-30 14:33:27 -03:00
David Capello
866d614737 [lua] Add "ui" and "bounds" params to CanvasSize (fix https://community.aseprite.org/t/4319) 2020-07-27 17:04:17 -03:00
David Capello
6b43f7ca05 Pick the new tiles after moving/copying them in the tileset 2020-07-16 18:51:12 -03:00
David Capello
a9974e37d3 Publish CopyTiles command with "CopyTiles" ID (instead of "MoveTiles" ID) 2020-07-16 18:48:08 -03:00
David Capello
c86b4a28a6 Fix typo 2020-07-14 17:27:03 -03:00
David Capello
515dace441 Merge branch 'beta' into tilemap-editor 2020-07-13 17:32:42 -03:00
David Capello
db4504e816 Refactor laf-os memory handling 2020-07-07 19:06:48 -03:00
David Capello
8a3f32b47f Replace all base::Bind() with lambda functions 2020-07-03 21:51:46 -03:00
David Capello
d0ab7d720c Add support to pick tiles with eyedropper 2020-06-25 19:47:58 -03:00
David Capello
d0c95cf46f Add possibility to paint with tiles 2020-06-25 19:21:35 -03:00
David Capello
ae02600a63 Add FullscreenMode command (fix #464) 2020-06-24 21:34:55 -03:00
David Capello
bcf53fa54a Merge branch 'octree' into beta 2020-06-17 23:33:41 -03:00
David Capello
81b6a99c2c Merge branch 'master' into tilemap-editor 2020-06-17 23:02:01 -03:00
David Capello
89a896d627 Fix Insert Text to use the sprite transparent color in indexed mode (fix #2444) 2020-06-16 21:24:32 -03:00
David Capello
bd1723313a Merge branch 'master' into tilemap-editor 2020-06-12 11:33:55 -03:00
David Capello
6290f18742 Fix Screenshot command compilation when ENABLE_STEAM is undefined 2020-06-11 16:42:54 -03:00
David Capello
2f472f0760 [steam] Add possibility to take screenshots and add them to the Steam library
Requests:
https://community.aseprite.org/t/6067
https://steamcommunity.com/app/431730/discussions/0/1482109512300945388/
https://steamcommunity.com/app/431730/discussions/0/1495615865218665223/
https://steamcommunity.com/app/431730/discussions/0/1708438376933048578/
2020-06-11 14:18:13 -03:00
David Capello
b41f1ace30 Move function to convert doc::Image -> os::Surface to app/util 2020-06-09 19:56:25 -03:00
David Capello
aa1943e609 Minor refactor using cmds directly instead of DocApi in Layer/Background from Background/Layer 2020-06-08 14:47:11 -03:00
David Capello
1068926f7b Reformat SwapCheckerboardColorsCommand file 2020-06-04 17:00:10 -03:00
David Capello
e4b224a0bd Merge branch 'swap-bg-colors' (fix #1812) 2020-06-04 16:59:41 -03:00
David Capello
a10efb187b Merge branch 'master' into tilemap-editor 2020-06-01 16:21:32 -03:00
David Capello
445e0abb0b [win] Add Tablet section on Edit > Preferences and restore old wintab behavior
Now on Windows it's more clear the different APIs to use (Windows
Pointer vs Wintab), the Wintab API works as before (generates mouse
events on WM_MOUSE message instead for each packet), and there is a
new Wintab mode to create events directly from packets (still a little
buggy with some tablets, but might be useful in other tablets to get
more precision for fast strokes).
2020-05-30 16:54:35 -03:00
MorganDavid
39a2045a43 Added swap checkerboard colors command 2020-05-28 23:11:26 +01:00
David Capello
1b08d5248c Fix Flip command when ENABLE_UI is off 2020-05-27 14:48:16 -03:00
David Capello
1ec502d242 Add "ink" parameter to app.useTool() + minor needed refactors 2020-05-20 17:15:30 -03:00
David Capello
a80af2b304 Merge branch 'master' into tilemap-editor 2020-05-18 20:24:22 -03:00
David Capello
46f4002368 Fix crashes saving sprites with '%' char in their filename
To fix this we changed the way StatusBar text is handled (we are using
fmt::format() in StatusBar instead of printf-like ... args now).
2020-05-08 17:39:55 -03:00
David Capello
4cfa5e743e Add addition mode back for Hue/Saturation filter (fix #1848) 2020-04-23 12:05:09 -03:00
David Capello
5affdbbae1 Shox extensions in different categories in the Preferences dialog 2020-04-20 14:20:07 -03:00
David Capello
1f34d0e46e Add different formulas to convert RGB to Grayscale 2020-04-20 10:22:41 -03:00
David Capello
e56cc15326 Add possibility to use New Layer via Cut/Copy with ranges
Requested here: https://community.aseprite.org/t/5222
2020-04-17 16:13:22 -03:00
David Capello
fb68407e04 Add support to call Flip command without UI 2020-04-17 12:32:10 -03:00
Gaspar Capello
966daf5e34 Add RgbMap algorithm option in RGB -> Indexed color mode conversion dialog 2020-04-15 15:36:50 -03:00
Gaspar Capello
80cbb2caf5 Add combobox to select RGB5A5/Octree algorithms in ColorQuantization dialog 2020-04-15 11:07:13 -03:00
Gaspar Capello
696bb9a537 Add possibility to use OctreeMap in create_palette_from_image() 2020-04-14 20:01:25 -03:00
Gaspar Capello
886fdf8b3f Add OctreeMap as an alternative RgbMap implementation to RgbMapRGB53A
There is a new experimental option to switch between both RgbMap
implementations.
2020-04-10 15:47:24 -03:00
David Capello
b628e21e76 Replace MIN/MAX() macros with std::min/max() functions 2020-04-08 12:20:53 -03:00
David Capello
86259a64fc Replace MID() macro with base::clamp() function
In the future we will replace base::clamp() with std::clamp().
2020-04-07 19:47:16 -03:00
David Capello
6b6b9057bf Add support for scripts on extensions (#1949)
It still need some work to associate the command to menus easily.

Related issues:
  https://github.com/aseprite/aseprite/issues/1403
  https://github.com/aseprite/aseprite/issues/1949
  https://github.com/aseprite/api/issues/20
  https://community.aseprite.org/t/lua-script-extension-and-menu-api/5085
2020-04-02 20:21:21 -03:00
David Capello
d358e6055f Add auto-fit screen option (fix #789, fix #2267) 2020-03-30 09:16:14 -03:00