Commit Graph

9443 Commits

Author SHA1 Message Date
Martín Capello
0c7759acf1 [lua] Fix how separators are added into dialog's tabs (fix #4288) 2024-02-06 16:27:24 -03:00
Gaspar Capello
024c266231 Fix deleting the "Pixel-perfect" checkbox from the "Spray Tool" (fix #4220) 2024-02-06 13:13:43 -03:00
Martín Capello
921504937c Fix Aseprite built-in file selector's file list layout to avoid horizontal scrolling (fix #4183) 2024-02-06 13:00:43 -03:00
David Capello
62599ad8b4 Fix assert in Widget::setMnemonic() for mnemonics like 'Ú'
This fixes the ASSERT((mnemonic & kMnemonicModifiersMask) == 0) in
Widget::setMnemonic() function, but as a future task we should try to
process/convert unicode chars like 'Ú' as a simplified form,
i.e. pressing 'u' should match 'ú' for mnemonics.
2024-02-06 09:38:14 -03:00
David Capello
af73adeab0 [i18n] Clone and add "strings" repo in "data/strings.git" to get updated translations
As we've moved all the translations to the strings
repo (06a852d1d4), to facilitate the
i18n work now we load translations from "data/strings" and from
"data/strings.git" folders, where "strings.git" is a clone of the
strings repo (https://github.com/aseprite/strings.git) in
"build/bin/data/strings.git".

This clone is executed automatically in the cmake configuration stage
so it's transparent for the developer and the result is like having
the translations available in the same "aseprite" repo.
2024-02-06 09:37:29 -03:00
David Capello
5900605549 Fix "Too much data to uncompress" error recovering sessions (fix #4291)
This is due zlib returning Z_OK (instead of Z_STREAM_END) after
inflate() when all the output buffer was filled (avail_out = 0) but it
reports like there is still available uncompressed data (avail_in > 0).
It makes no sense but an extra inflate() call with avail_out=0
consumes the whole avail_in and the expected Z_STREAM_END is finally
reported.
2024-02-02 14:01:07 -03:00
David Capello
e0a677545e Show errors in UI when we cannot recover a specific file (related to #4291)
Internal:
Visible in: https://igarastudio.zendesk.com/agent/tickets/5772
With files from: https://igarastudio.zendesk.com/agent/tickets/5773
2024-02-02 12:49:55 -03:00
Martín Capello
799b3e1918 Add the user directory as the first path to search for the tags palette (fix #4182) 2024-02-01 10:27:11 -03:00
David Capello
40863a3a5e Copy hex text to native clipboard when copy colors from the palette (fix #4289) 2024-01-31 11:45:12 -03:00
Charlie-83
e47448ca24 Fix numerical errors in gradient tool (#4131) 2024-01-26 11:49:04 -03:00
David Capello
06a852d1d4 [i18n] Move all i18n work to https://github.com/aseprite/strings 2024-01-24 18:16:12 -03:00
David Capello
d4740394a9 [i18n] Update credits 2024-01-24 16:45:25 -03:00
Veydzher
b0025294a6 [i18n] Translate Ukrainian strings 2024-01-24 16:30:23 -03:00
doctor
f59b03e2c5 [i18n] Translate Irish strings 2024-01-24 16:30:23 -03:00
puddiCria
e1326d1ae3 [i18n] Translate Portuguese strings 2024-01-24 16:30:23 -03:00
peperoni
c96f7bc31c [i18n] Translate French strings 2024-01-24 16:30:23 -03:00
symegac
f2b5306121 [i18n] Translate Danish strings 2024-01-24 16:30:23 -03:00
Maks Dziemiańczuk
300166beca [i18n] Translate Polish strings 2024-01-24 16:30:22 -03:00
Aitornado _8
ac8429ab3b [i18n] Translate Spanish strings 2024-01-24 16:30:22 -03:00
David Capello
039244d0f7 [i18n] Translate Spanish strings 2024-01-24 16:30:22 -03:00
gallegonovato
83100ad6b7 [i18n] Translate Spanish strings 2024-01-24 16:30:22 -03:00
David Capello
bb1941a997 [i18n] Translate Spanish strings 2024-01-24 16:30:22 -03:00
gallegonovato
c983b8c884
[i18n] Translate Spanish strings 2024-01-24 20:24:12 +01:00
Martín Capello
d10f0cc054 Prevent setting slider ranges with min > max (fix #4191) 2024-01-12 12:11:59 -03:00
David Capello
da7f51ee43 Revert part of Sentry::areThereCrashesToReport() impl for macOS mainly
Revert 00894101e0 as it was suggested in
this comment:

  https://github.com/getsentry/sentry-native/issues/930#issuecomment-1883739150

Only needed for macOS, but we can still use this on Windows just in
case (and use sentry_get_crashed_last_run() as a fast path if it
works).
2024-01-10 14:50:28 -03:00
David Capello
b5b33ae09c [i18n] Update credits 2024-01-09 10:49:30 -03:00
doctor
59ec4a2763 [i18n] Translate Irish strings 2024-01-09 10:14:53 -03:00
Mehrab Poladov
3bbccf9736 [i18n] Add Azerbaijani translation 2024-01-09 10:14:53 -03:00
symegac
8a97caa389 [i18n] Add Danish translation 2024-01-09 10:14:53 -03:00
puddiCria
7c88cebc3d [i18n] Translate Portuguese strings 2024-01-09 10:14:52 -03:00
David Capello
9d69cb8dfe Possible fix for crash in Window::limitPosition() when parent is nullptr (fix #4261)
We cannot reproduce this but just adding a check here to avoid using a
nullptr parent pointer.
2024-01-08 15:07:36 -03:00
David Capello
00894101e0 Simplify Sentry::areThereCrashesToReport() using sentry_get_crashed_last_run()
Thanks for the Sentry team for the help in:
https://github.com/getsentry/sentry-native/issues/930
2024-01-08 14:08:25 -03:00
David Capello
78f5560b33 Update copyright year to 2024 2024-01-04 14:10:07 -03:00
David Capello
d6587fbf78 Add button to refresh/reload the list of palettes (fix #4258) 2024-01-04 13:51:18 -03:00
David Capello
88e89b6c38 Don't catch unhandled exceptions so Sentry can report them
If we catch all exceptions and { do nothing }, we are probably missing
some crashes from being reported.
2024-01-03 12:04:55 -03:00
David Capello
318a2c60ea Fix crash in BackupObserver::saveDocData() using destroyed docs when app is being closed due to an exception (fix #3818) 2024-01-03 12:04:14 -03:00
David Capello
ef23356b7f [i18n] Update credits README 2024-01-03 08:49:35 -03:00
Murilo Gama
c4a547ac78 [i18n] Translate Portuguese strings 2024-01-03 08:41:09 -03:00
puddiCria
78c7d0b4c5 [i18n] Translate Portuguese strings 2024-01-03 08:41:09 -03:00
Blezz Rot
cc105e0cbf [i18n] Translate Russian strings 2024-01-03 08:41:09 -03:00
David Capello
f5dd9424e1 [i18n] Translate Swedish strings 2024-01-03 08:41:08 -03:00
Samuel Pettersson
2c46082002 [i18n] Add Swedish translation 2024-01-03 08:41:08 -03:00
David Capello
025bcde91d [i18n] Translate Irish strings 2024-01-03 08:41:08 -03:00
doctor
063e73447b [i18n] Add Irish translation 2024-01-03 08:41:08 -03:00
David Capello
3b9e1db433 [i18n] Translate Spanish strings 2024-01-03 08:41:08 -03:00
Héctor Cortés
e72d724779
[i18n] Translate Spanish strings 2024-01-03 12:33:17 +01:00
David Capello
112063a14a Improve Cyrillic chars in Aseprite font (fix #4212)
It includes other minor changes:

- Added trailing column for separation to , ; ? » chars
- Removed heading column from ˲ char
2024-01-02 17:32:41 -03:00
David Capello
d8ed4d3995 Fix crash if an exception happens in DelayedMouseMove::commitMouseMove()
Without this an exception in DelayedMouseMove::commitMouseMove() could
produce (e.g.) the crash in #3818. This same error handling was
already done for Editor::onProcessMessage() in
DocView::onProcessMessage() to avoid crashing due unhandled exceptions
in Editor message processing.
2023-12-29 17:22:10 -03:00
David Capello
f178941f2c Fix crash copying, pasting, and transforming selection (fix #4249)
Regression introduced with 8722c8ec16
and d3562b140c.

Our re-entrant RWLock implementation is tricky because it doesn't
support to unlock in different order than it was locked.

E.g. If we create a DocWriter (e.g. paste command), and try to create
a DocReader (e.g. PixelsMovement) inside the DocWriter scope, the
reader will return a LockResult::Reentrant, but if we unlock the
write, then the reader cannot be used to upgradeToWrite() because the
lock will have just 0 locks (the re-entrant one didn't modify the
count of the RWLock). This is because it was thought that the
DocReader was going to be unlocked before the writer lock (in the
exact inverse order).

Basically these re-entrant RWLocks will not work fine if we mix up the
order of locks/unlocks in the same thread.
2023-12-29 17:22:10 -03:00
David Capello
d93655647d [i18n] Update credits README 2023-12-29 10:33:31 -03:00