Commit Graph

8326 Commits

Author SHA1 Message Date
arch1t3cht fd1a92d627 Folding: Fix default hotkeys 2022-08-01 20:05:55 +02:00
arch1t3cht c0fa794e45 Lua: Functions to set text selection and cursor
Putting this logic for delaying changes in the TextSelectionController
isn't the cleanest, but all attempts at saving this state somewhere in
the Lua API instead turned out even worse. Also, the logic for inverted
selections probably does belong in there.
2022-08-01 19:56:53 +02:00
arch1t3cht 4a928674cd Merge branch 'folding' into feature 2022-07-31 21:31:44 +02:00
arch1t3cht 7c92e6bbd6 Folding: Dont error on missing _foldinfo 2022-07-31 21:31:34 +02:00
arch1t3cht 4b9c50a702 Merge branch 'vector_clip_actions' into feature 2022-07-30 13:46:04 +02:00
arch1t3cht af009c4ce7 Make line tool the default vector clip tool again 2022-07-30 13:45:49 +02:00
arch1t3cht 32dda63971 Merge branch 'misc_dc' into feature 2022-07-30 13:07:42 +02:00
arch1t3cht a6af313cf2 Merge branch 'info' into feature 2022-07-30 13:06:58 +02:00
arch1t3cht a37f84215d Typo fix 2022-07-30 03:36:33 +02:00
arch1t3cht 9177943c76 Update README: ffms2 and misc_dc 2022-07-30 01:51:46 +02:00
Asada shinon ba3a3dc80a Parse mixin lines as template lines 2022-07-30 00:57:15 +02:00
arch1t3cht aeaab655eb Fix segfault when stereo downmixing 2022-07-30 00:45:49 +02:00
Ristellise f06e42a82e [Shinon] Change Mono Downmixing to Stereo Downmixing 2022-07-29 23:21:55 +02:00
wangqr dabd9f699f Add option to downmix FFMS audio
When enabled, restore FFMS to old behavior, downmixing auduo to S16 mono. This can reduce cache usage.

Fix wangqr/Aegisub#31
2022-07-29 23:18:56 +02:00
Asada shinon d0efa0494a Save vector clips with two decimal places
Co-authored-by: arch1t3cht <arch1t3cht@gmail.com>
2022-07-29 21:50:10 +02:00
Asada shinon 58a6cf4793 Added new hotkey command to reload current font provider. 2022-07-29 20:51:37 +02:00
arch1t3cht 32fc7abd2d Explain the problems with adding new forks 2022-07-27 17:06:32 +02:00
arch1t3cht 11b5a80618 Merge branch 'folding' into feature 2022-07-27 15:27:04 +02:00
arch1t3cht ca462c2a24 Merge branch 'info' into feature 2022-07-27 15:26:37 +02:00
arch1t3cht 0926f84d0e Merge branch 'spectrum-frequency-mapping' into feature 2022-07-27 15:26:36 +02:00
arch1t3cht 8ca6ec1884 Merge branches 'vector_clip_actions' and 'color_picker_fix2' into feature 2022-07-27 15:26:34 +02:00
arch1t3cht 9cc3fe9e71 Merge branches 'video_panning_option', 'bugfixes' and 'avisynth' into feature 2022-07-27 15:26:33 +02:00
arch1t3cht e65e55833c Fix compilation for older C++ 2022-07-27 15:23:47 +02:00
arch1t3cht 818fcd51f4 Folding: Toggling folds by clicking the indicator 2022-07-27 15:23:47 +02:00
arch1t3cht 2176954aee Folding: Pass fold data through Lua
This way, automation scripts won't nuke the fold data on any lines they
modify.
This is done as userdata for now, so scripts that don't know what
they're doing don't break the folds even further. If scripts get more
access to folds, it should be with a safer and simpler API.
2022-07-27 15:23:47 +02:00
arch1t3cht 56cc1a6873 Add line folding
Line folds are managed using metadata of AssDialogue elements, and
saved in the project properties. They only affect the appearance of the
subtitle grid, and have no impact on other line operations.
2022-07-27 15:23:47 +02:00
arch1t3cht 1772dd17ae Use std::this_thread everywhere
The previous logic wouldn't compile on linux using clang.

With the meson build requiring c++14, there's no need for platform
specific code. Really, the entire agi::util::sleep_for function could be
removed entirely, but I'll keep the patch minimal for now.
2022-07-27 15:20:03 +02:00
arch1t3cht 4f9b23ab1f Readme 2022-07-27 02:00:23 +02:00
arch1t3cht 2234068202 Allow vertical audio zoom with Shift+Mouse Wheel 2022-07-26 23:38:27 +02:00
arch1t3cht ff46b860a2 Add option toggling behaviour of Ctrl+Zoom 2022-07-20 14:38:31 +02:00
arch1t3cht 7ea9b95fe0 Clean up pointer code
The previous one was remnant of scrapped code.
2022-07-19 02:45:04 +02:00
arch1t3cht 2c296afdb8 Add option to restrict color picker to window 2022-07-19 02:41:50 +02:00
arch1t3cht 238dbb386d Restrict color picker's screenshot to window
This fixes issues like Aegisub/Aegisub#264 with taking
screenshots on linux, especially with wxgtk3 or wayland.
2022-07-18 20:21:04 +02:00
arch1t3cht eb07b3f9b8 Show hotkeys for vector clip tools
Move the function to generate toolbar tooltips listing hotkeys to the
command class, so it can be used outside of toolbar.cpp .
2022-07-12 16:54:04 +02:00
arch1t3cht 7da4493a0f Use command metadata for vector clip toolbar
This cuts down on the data duplication for the command names and help
texts, at the expense of copying a bit of code from the general toolbar
logic.

Modifying the toolbar Populate() function to also add additional buttons
appears very hard or impossible.
2022-07-12 16:49:22 +02:00
arch1t3cht 10d233d3e2 Add bindable commands for visual vector clip tools 2022-07-12 16:49:22 +02:00
arch1t3cht 77af0c40dc Use public enum for visual clip tool modes 2022-07-12 16:49:22 +02:00
arch1t3cht 86354050f3 meson: Use depend_files for files in respack manifest 2022-07-10 23:00:52 +02:00
arch1t3cht ba0db4da70 Also add Video Pan option on OSX 2022-07-10 22:57:55 +02:00
arch1t3cht 21591b3e88 meson: Use depend_files for files in respack manifest 2022-07-07 10:33:36 +02:00
Eli Schwartz 8336c7d97c meson: use best practices lookup for iconv support
Meson 0.60.0 adds support for an "iconv" dependency that always does the
right thing for you, so that you don't need to think about it. It also
has some side advantages:
- you can do dependency fallback, and --force-fallback-for=iconv works
- it logs one line, not two, and that is "dependency found? yes or no"

Since Aegisub doesn't mandate the use of such new versions of Meson, we
cannot assume the dependency works. Instead, adapt to the version of
Meson being used: on new enough versions of Meson, use the new
dependency, but on older versions of Meson, use the pre-existing logic,
which isn't as nice but has been producing correct results so far.
2022-07-07 00:08:24 -07:00
arch1t3cht e644227e95 avisynth: Remove option to allow ancient versions
- This refers to AviSynth < 2.5.6, which is from before 2005
- With the current setup (using GetAVSLinkage, these versions wouldn't
  work anyway)
- The latest AviSynthPlus is bundled with the installer anyway
2022-07-05 02:01:35 +02:00
arch1t3cht 635503affe meson: Add files in manifest as respack.py input
This makes meson detect changes to files like default_config.json
and rebuild libresrc.cpp when necessary.
2022-07-05 01:35:08 +02:00
arch1t3cht e240a5fdc2 avisynth: Update headers and fix playback
- Build the latest AviSynth headers using CMake, as proposed in #134
- Add and initialize AVS_Linkage to fix video loading

Video and audio playback now works in most cases, but still crashes for
some files.
2022-07-05 01:12:10 +02:00
arch1t3cht 142605cf41 meson: Add files in manifest as respack.py input
This makes meson detect changes to files like default_config.json
and rebuild libresrc.cpp when necessary.
2022-07-04 22:22:01 +02:00
arch1t3cht fdcb0ee75f meson: Fix compliation with avisynth enabled
Still crashes when loading a video.
2022-07-03 17:49:46 +02:00
arch1t3cht 5bde34ff3e macos: attempt to fix the installer build
Try and fix an issue when a symlink would link to a path with the same
basename, without actually having a mac system available to test.
2022-07-02 19:58:43 -07:00
arch1t3cht 2bf4f17e58 ci: Don't abort if one of the matrix runs fails 2022-07-02 19:58:43 -07:00
arch1t3cht cfd93ce81b meson: Use latest git version for ffms2
This is to include the fix for FFMS/ffms2#394 .
2022-07-02 19:58:43 -07:00
arch1t3cht 6e811ef6a7 Fix compile error on linux 2022-07-02 19:58:43 -07:00