Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Prefer native file dialog on Windows and macOS #3615

Open
3 of 5 tasks
dacap opened this issue Dec 6, 2022 · 0 comments
Open
3 of 5 tasks

Prefer native file dialog on Windows and macOS #3615

dacap opened this issue Dec 6, 2022 · 0 comments
Labels
feature Feature request, or something should be improved file selector native time-5
Milestone

Comments

@dacap
Copy link
Member

dacap commented Dec 6, 2022

From a long time ago using the native file dialog by default was planned, but to do so the native thumbnails must work.

Already the thumbnails on Windows are working (at least if we use the Aseprite Windows installer or the Aseprite Thumbnails for Windows). But we have to implement it on macOS yet (#834).

Finally some custom widgets on the native dialog would be great to switch between both dialogs (#2745).

Anyway if we add a way to create "folder views/tabs" using the customized file selector, the native dialog will make even more sense and we'll be able to show a folder in a tab using our own widget.

@dacap dacap added feature Feature request, or something should be improved native labels Dec 6, 2022
@dacap dacap added this to the v1.3 milestone Dec 6, 2022
@dacap dacap added the time-5 label Dec 6, 2022
@dacap dacap self-assigned this Dec 6, 2022
@dacap dacap added the wip label Dec 6, 2022
dacap added a commit that referenced this issue Dec 9, 2022
@dacap dacap removed the wip label Dec 12, 2022
dacap added a commit to dacap/aseprite that referenced this issue Dec 12, 2022
…e#3615)

The native dialog for the Linux version is not yet ready.
@dacap dacap removed their assignment Dec 12, 2022
dacap added a commit that referenced this issue Oct 4, 2023
…4051)

As now the native file selector is the default one, we moved the
option to re-enable the previous file selector to Edit > Preferences >
General > Show Aseprite file dialog option.

Related to #3615 and added as a simple alternative to #2745 which
require native widgets on each native file dialog.
RooTender added a commit to RooTender/aseprite that referenced this issue Nov 20, 2023
* Include build type in ccache key

This should lead to better cache utilisation, smaller caches

* Use ccache on macOS

Originally (aseprite#2699) ccache was only enable for Linux due to suspiciously low
macOS yields.

I have addressed the likely issue upstream
(hendrikmuhs/ccache-action#147) and ccache can be used
on macOS now as well.

* Fix blend mode usage for GraphicsContext:drawImage(image, x, y) (fix aseprite#3960)

* Use transparent color when the source indexed image uses mask color (fix aseprite#3960)

* [lua] Add GraphicsContext.palette property to set the palette used to draw indexed images

* Set GraphicsContext.palette automatically when a Sprite's indexed image
or tileset's tile indexed image is drawn

* Fix Full Preview and Edges setting on Cursors preferences (fix aseprite#3188)

* Update INSTALL.md

Including all the steps for the ARM version of the mac install instructions, rather than partial steps.

* Show brush preview for custom brushes when using Paint Bucket tool (fix aseprite#4052)

* Fix unused variable warnings

* Fix sprintf() warnings using snprintf() or fmt::format()

* Clarify Windows instructions for 64-bit Skia

* Update laf module

New changes required for aseprite#3684/aseprite#4063 to trigger mouse buttons with
keys correctly.

* Add more accessible option to re-enable the Aseprite file dialog (fix aseprite#4051)

As now the native file selector is the default one, we moved the
option to re-enable the previous file selector to Edit > Preferences >
General > Show Aseprite file dialog option.

Related to aseprite#3615 and added as a simple alternative to aseprite#2745 which
require native widgets on each native file dialog.

* fixed time duration not including ending frame

* Add Timeline visibility button to Toolbar, extracted button draw logic to separate member function

* Add new icon for the button to switch the timeline visibility (aseprite#4081, aseprite#4092)

* Minor fix in new timeline button in the toolbar (aseprite#4081, aseprite#4092)

The button was being painted with "toolbutton_last" part instead of
"toolbutton_normal" when it wasn't highlighted/in "hot" state.

* Fix std::clamp() assert in Manager::onInitTheme()

* respect slice keys frame number on ase file format (fix aseprite#4062)

* Prevent crash when in Auto or Stack mode the user tries to move pixels from a tilemap with inexistent tiles (fix aseprite#4071)

* Fix disable delete layer button when only one layer exists (fix aseprite#3649)

* [x11] Update clip module to fix a problem pasting text to some text editors

* Revert timeline behavior to the v1.2 default (aseprite#4024)

This change was introduced in dd7e27a
as a possible fix for aseprite#4024, but the change is too disruptive to be
introduced at this stage, we need some extra UI elements to make the
drag & drop accessible in both modes: the default v1.2 behavior, and
a possible new selection mode, e.g. aseprite#1498

* Rename scale_xxbits_to_8bits() -> scale_xbits_to_8bits()

* Take some tests out from a loop they don't depend on

* Support scaling down bits (e.g. from 10 to 8) with scale_xbits_to_8bits() doing a bit shift

* Update submodules (fix aseprite#4102)

* Improve script engine's exception handling

More details about the implications of this change can be found
in aseprite#4057

* [lua] Limit the possibility to create a tileset with origin != 0,0 (fix aseprite#4118)

* [lua] Make Sprite:newTileset(Rectangle) work (fix aseprite#4117)

* [lua] Sprite:newTileset() uses sprite grid size by default (fix aseprite#4116)

* Update clip submodule

* EditorConfig: Don't use tabs in .md files

* Show custom pattern brushes for Paint Bucket (fix aseprite#4053)

* [lua] Fix crash when saving tilemap's cel image (fix aseprite#4069)

* Remove ';' chars from lua tests

* Fix crash deleting layers while using "Change Layer" w/scroll wheel  (fix aseprite#4114)

E.g. If we configure Shift+scroll wheel to "Change Layer" action, and
Shift+J to delete a layer, we can press Shift key and move through
layers with the mouse whell while we press the Shift key, and if we
press J (without releasing the Shift) start deleting layers. At some
point a crash will happen.

* Update laf module

* Fix error message when attempting to delete layer in a group (fix aseprite#4083)

If the sprite contained only one layer group, and we tried to delete
one child, we got an error message about "You cannot delete all
layers". This fixes this (the error message is only when we delete the
last top level layer).

* Minor comment in AppOptions::VerboseLevel

* Log UUID when -debug option is specified (fix aseprite#4104)

In this way, in some cases, we could ask to the user for the -debug
report and match some Sentry crash report with the user.

* Possible fix for crash reports re-opening IntEntry popup when it's already open (fix aseprite#4124)

* Fixed unnecessary scrollbar in X dimension for dithering selector dropdown.

Added offset to dithering selector dropdown width to avoid X dimension scrollbar obscuring the bottom of the dropdown. This also removes the need for a vertical scrollbar for the generic number of dithering options.
Related to Issue aseprite#4001

* Minor refactor to set DitheringSelector combobox size hint (aseprite#4001, aseprite#4075)

Changed the required size to its minimum (6 instead of 8).
Minor refactor from 1c3224a

All these values are hard-coded in DitherItem (so we cannot use
theme-related values yet for this).

* Fix export sprite sheet to RGB is not exporting the palette (fix aseprite#3881)

* New tile flags meaning (x/y/diagonal flip) + serialize then correctly

* Changed the "90cw" flag to "diagonal flip" (the tile should be
  rendered with X/Y axis switched in this case)
* Each time we read/write an .aseprite file we have to convert
  the mask/shift from the file to the values expected in
  memory (tile_f_xflip/yflip/dflip)

* Add simple rendering of tiles w/flags (x/y/d flip)

* [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.

* 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.

* Fix painting on flipped tiles in manual mode

* Fix eyedropper for tiles w/flags when picking colors from "Current Layer"

* Fix tile information (index/flags) in StandbyState

* Fix painting with tiles and flags

* Add support to flip/rotate tiles to ChangeBrush command (like aseprite#1222)

* 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.

* Remove unused variable in lambda function

* 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.

* 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.

* 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.

* 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.

* 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.

* Add a workflow to close spammy PRs

First attempt, not sure if this will be useful at all.

* Remap tiles with flags correctly

* Move the timeline button in the toolbar to the bottom

* Add "Advanced Options" checkbox in Tileset selector

To hide "Base Index" & "Allowed Flips" options by default.

* Fix possible crash adding reference layer (fix aseprite#3949)

* [osx] Fix mouse misalignment and show tabs area again when Screen Scaling=100% (fix aseprite#4142)

Originally reported here:
https://steamcommunity.com/app/431730/discussions/0/3954784199573459745/

* Add option to enable the Snap to Grid option for the brush preview (fix aseprite#4137)

* Update About dialog copyright year

* Fix crash making a tileset bigger and pressing Remap (fix aseprite#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).

* Fix typo in en.ini file: extra " char (fix aseprite#4148)

* [lua] Fix crash calling io.open() without argument (fix aseprite#4159)

* Use configured dynamics of active tool w/o opening dynamics popup (fix aseprite#4151)

* Add option to disable Snap to Grid by default when we move the selection (fix aseprite#4153)

---------

Co-authored-by: Michał Janiszewski <janisozaur@users.noreply.github.com>
Co-authored-by: Martín Capello <martin@igara.com>
Co-authored-by: Gaspar Capello <gaspar@igara.com>
Co-authored-by: Andrés Colón <mindware@users.noreply.github.com>
Co-authored-by: David Capello <david@igara.com>
Co-authored-by: Ashray Shah <geektraindev@gmail.com>
Co-authored-by: Rowan Douglas <rowan.james.douglas@gmail.com>
Co-authored-by: Akylzhan <akyl.sauranbai@gmail.com>
Co-authored-by: Nicolás Pinochet <nnpinochet@gmail.com>
Co-authored-by: Dariy Guzairov <0quokka0@gmail.com>
Co-authored-by: ChikenUni <70973373+ChikenUni@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature Feature request, or something should be improved file selector native time-5
Projects
None yet
Development

No branches or pull requests

1 participant