Commit graph

8102 commits

Author SHA1 Message Date
Thomas Goyne
3c381b6c55 Handle fonts that are marked as bold but have the same weight as the normal variant 2016-01-02 15:42:26 -08:00
Thomas Goyne
761a121452 Fix the weight of fonts that use 1-10 2016-01-02 15:42:26 -08:00
Thomas Goyne
596332763b Use the Windows Family Name for family name matching 2016-01-02 15:42:26 -08:00
Thomas Goyne
e13a39f302 Try to better match GDI's weight penalty 2016-01-02 15:42:26 -08:00
Thomas Goyne
b9a56cb870 Prioritize family name matches over postscript name matches 2016-01-02 15:42:25 -08:00
Thomas Goyne
278b7621cf Assume that fonts which CT won't give the OS/2 table for are Regular 2016-01-02 15:42:25 -08:00
Thomas Goyne
f2b3b69b3f Read the weight from the OS/2 table rather than asking CoreText
The weights reported by CT are only occasionally correlated with the
OS/2 weights, and GDI uses the latter.
2016-01-02 15:42:25 -08:00
Thomas Goyne
8e6c4ff3ba Don't check for fontconfig in configure on OS X 2016-01-02 15:42:25 -08:00
Thomas Goyne
f824d2c56b Remove OS X and Windows support from the fontconfig file lister 2016-01-02 15:42:25 -08:00
Thomas Goyne
6780373a50 Remove fontconfig config files from the OS X package 2016-01-02 15:42:25 -08:00
Thomas Goyne
b1cb16c7f8 Do a better job of picking the best match from CoreText 2016-01-02 15:42:25 -08:00
Thomas Goyne
d152af1f14 Deduplicate matched paths from CoreText 2016-01-02 15:42:25 -08:00
Thomas Goyne
2527204515 Get the filesystem representation of urls rather than an absolute url 2016-01-02 15:42:25 -08:00
Thomas Goyne
63bb585db6 Enable ARC for the coretext font lister 2016-01-02 15:42:24 -08:00
Thomas Goyne
973f0b09fc Add a basic CoreText-based fonts collector backend 2016-01-02 15:42:24 -08:00
Thomas Goyne
f8c3504898 Remove the OS X fontconfig init logic from the libass provider 2016-01-02 15:42:24 -08:00
Thomas Goyne
9b815ac8cc Fix a crash when reattaching video
The window close event propagates up to the detached window's parent, so
the handler for the parent window closing needs to filter it out.
2016-01-02 13:48:00 -08:00
Thomas Goyne
0b2d0d40d5 Ensure that the fonts collector destination label gets wrapped on OS X 2015-12-29 20:12:52 -08:00
Thomas Goyne
4f34784370 Set the initial control state when the fonts collector dialog is opened correctly 2015-12-29 20:12:32 -08:00
Thomas Goyne
f481a7f5fb Use the correct upper bound for restoring the font collector modes 2015-12-29 20:12:29 -08:00
Thomas Goyne
e8cdfc57a9 Make FcMode an enum class and simplify the data flow 2015-12-29 20:12:24 -08:00
Thomas Goyne
fe2925408c Remove fontconfig entirely from the Windows build 2015-12-29 20:08:07 -08:00
Thomas Goyne
e5a6abd215 Add a GDI-based font selector for libass
This deliberately doesn't perform any font substitutions as the sort of
people that use libass on Windows tend to perfer to manually pick
fonts with the correctly glyphs.
2015-12-29 20:08:07 -08:00
Thomas Goyne
e06385b6d4 Remove unused includes from subtitles_provider_libass.cpp 2015-12-29 20:08:05 -08:00
Thomas Goyne
de3bdeb484 Build libass without fontconfig enabled on Windows 2015-12-29 19:56:48 -08:00
Thomas Goyne
15d78ed190 Update to libass 0.13.1 2015-12-29 19:56:38 -08:00
Thomas Goyne
913b8438f3 Fix Windows x64 compilation 2015-12-29 19:55:58 -08:00
Thomas Goyne
3b13260ca1 Use murmur3 to explicitly hash the font index keys
This significantly improves performance by avoiding the need to
construct std::strings of the things to be hashed, eliminating a bunch
of memory allocations and copies.
2015-12-29 12:38:01 -08:00
Thomas Goyne
879661a379 Only index the first kilobyte of font files to speed up indexing 2015-12-29 12:38:00 -08:00
Thomas Goyne
82f250dbbb Fix the checks for fake bold/italic
EnumFontFamiliesEx doesn't actually use the lfItalic andlfWeight fields,
so we have to check separately.
2015-12-29 12:38:00 -08:00
Thomas Goyne
ddc5cd155f Add a GDI-based fonts collector backend 2015-12-29 12:38:00 -08:00
Thomas Goyne
fa2e3fb38f More cruft to support running busted on Travis 2015-12-22 17:43:25 -08:00
Thomas Goyne
afed3dca21 Fix compilation on Linux 2015-12-21 19:57:49 -08:00
Thomas Goyne
26361c5003 Add support for using busted 2.0 to run automation tests
Supply a definition of socket.gettime() to remove the dependency on
LuaSocket, as installing binary deps from luarocks doesn't work with a
custom build of luajit.
2015-12-21 19:48:23 -08:00
Thomas Goyne
3747705a43 Select the OpenGL context when destroying VideoDisplay
This is needed to destroy the correct things when there are multiple
active opengl displays.
2015-12-21 17:46:38 -08:00
Thomas Goyne
c8d02de3db Allow coalescing undo over autosaves 2015-12-21 17:46:38 -08:00
Thomas Goyne
52dbb482af Make next_commit_id a member variable rather than a static
Multiple instances of SubsController should not share it.
2015-12-21 17:46:38 -08:00
Thomas Goyne
2032ab8ea3 Handle multiple simultaneous OpenAL audio players in one process 2015-12-21 17:46:38 -08:00
Thomas Goyne
75804da4ea Set the closed marker even on 64-bit OS X 2015-12-21 17:46:38 -08:00
Thomas Goyne
5f89a64f07 Adjust the menu text on OS X to better match the HIG 2015-12-21 17:46:38 -08:00
Thomas Goyne
f28e46c2e3 Add a Close command to the file menu on OS X 2015-12-21 17:46:37 -08:00
Thomas Goyne
ead12de8b6 Actually close all windows on quit 2015-12-21 17:18:07 -08:00
Thomas Goyne
84b0f1e043 Mostly adopt the standard OS X document-based UI model on OS X 2015-12-21 17:18:04 -08:00
Thomas Goyne
0f17784548 Actually open a new window in the New Window command 2015-12-21 17:17:54 -08:00
Thomas Goyne
8de8724660 Support creating multiple main windows
This is not yet actually exposed in any way in the UI.
2015-12-21 17:17:51 -08:00
Thomas Goyne
f5f5439808 Add context-specific path tokens
?video, ?audio, and ?script are not global.
2015-12-21 17:17:48 -08:00
Thomas Goyne
932937c343 Shut up a missing override warning 2015-12-21 17:17:46 -08:00
Thomas Goyne
e757618b32 Use an explicit operator bool for Vector2D 2015-12-21 17:17:42 -08:00
Thomas Goyne
d253388c8e Perform autosaves on a background thread rather than blocking the UI 2015-12-21 17:17:33 -08:00
Thomas Goyne
44b76d38d2 Switch to app-local deployment of the CRT rather than using the installer
The installer for VS2015 is huge (13 MB compressed for 5.5MB of
installed stuff) and seems to be restarting people's computers without
warning.
2015-12-08 19:14:02 -08:00