This fixes a crash on Windows when double-clicking the draggable
separator between the column headers "Command" and "Description" in the
hotkey configuration dialog.
The percent values used for the overscan masks follow the BBC's
guidelines, as in
https://en.wikipedia.org/wiki/Overscan#Overscan_amounts .
However, these measure the per-side width as opposed to the total
percentage of width/height being cut off. Thus, they should not be
divided by two when drawing the mask.
When cancelling an automation macro from the progress dialog, the dialog
throws a UserCancelException. If the macro still runs to the end
afterwards (instead of calling aegisub.cancel or causing an exception),
the two return values are left on the stack. This causes assertion errors
due to check_stack when those are enabled.
These alignment flags would cause an assertion error
"Horizontal alignment flags are ignored in horizontal sizers"
when opening the dialog (mainly when importing styles from another
script).
As the assertion error says, the flags are ignored anyway, so they're
safe to remove.
Float edits with a spinner are by default sized to fit their full
min-max range of possible values, so this makes min and max default to 0
and 100 (like it'd done internally in wx) instead of -DOUBLE_MAX and
DOUBLE_MAX.
Note that this does change the behavior of lua dialogs, but does not
contradict existing documentation or specification. It should only
affect scripts who either disobey the specification by specifying only
one value out of max/min, or scripts displaying these large float edits
by specifing a step, but no max or min.
Since ASS rendering depends on the storage size of the video libass
needs to know about it to render the subtitles correctly. If it isn't
told about the storage size libass uses the value from PlayRes{X,Y} as
a guess, but this isn't always correct.
With Aegisub currently always rendering at storage resolution
this ends up the same as the frame size.
* [mac/build] update build steps
* [macos] bundle app
* [macos] build dmg
* [ci] setup macOS CI
* [i18n] TODO: rm WX locale files
* [deps] set main branch to main
* Fix osx-fix-libs.py
Create symbolic links, to make libicu happy
Rewrite the script in python3, as python2 is deprecated
* Add write permission before install_name_tool when doing osx-bundle
Fixwangqr/Aegisub#39
* Handle @loader_path in libboost on macOS
See wangqr/Aegisub#39
* [tools/mac] use python3
* [ci/mac] install & using system deps
* [ci/win] don't build fribidi:docs
* [ci/mac] trying openal-soft
* [ci/mac] use pulseaudio in CI
* [ci/win] only run aeg's test
* [ci/win] fix CI
* [ci/win] fix CI: not use dict `{}`
* [ci] run ci
* [ci/win] don't build docs
* [ci/win] remove args tail newline
* [ci/win] false->disabled
* Use md title format
Co-authored-by: Ryan Lucia <ryan@luciaonline.net>
* Recover file permissions.
* [ci/win] disable fontconfig
Co-Authored-By: Ryan Lucia <ryan@luciaonline.net>
* [ci/win] disable libass:fontconfig
Co-authored-by: wangqr <wangqr@wangqr.tk>
Co-authored-by: Ryan Lucia <ryan@luciaonline.net>
Previously, margins were clamped to 0..9999, but negative margins are
well supported by most renderers. In addition, previously lua
automations automations were able to produce these negative margin
values, and they would be saved correctly. However, re-opening the file
would clamp the values, and they could not be edited in the edit box.
This commit changes the clamping to be -9999..99999, and allows entering
(and editing) negative values in all relevant fields. In addition, this
makes the subtitle edit box margin fields take 5 characters instead of 4
to accommodate negative numbers up to 9999 (also the reason for raising
the upper bound).
I haven't checked whether reverting this breaks IME input, and if it doesn't what changed on wx's end. However, this is the commit that uses private symbols, and so reverting it lets us build against upstream wx. Even if this is a loss in functionality, for now it's fine.