Commit Graph
1634 Commits
Author SHA1 Message Date
Kovid Goyal 774956053a Allow storing arbitrary data on FreeType Face objects 2017-11-10 14:20:20 +05:30
Kovid Goyal 5c582f7639 Start work on harfbuzz rendering on macs 2017-11-10 12:52:54 +05:30
Kovid Goyal ccc0433fa1 ... 2017-11-10 11:26:58 +05:30
Kovid Goyal 43bf056f09 Add a command to list fonts 2017-11-10 11:02:32 +05:30
Kovid Goyal 1d7b650fd0 ... 2017-11-10 10:30:34 +05:30
Kovid Goyal fefe6c9024 Use fc-list instead of fc-match to select fonts
This is because there is no way to force fc-match to return a monospace
font. So if the user specifies a non-existent font we end up with some
non-monospaced font, which looks terrible.

Also, this makes the font selection logic or macOS and Linux similar.
2017-11-10 10:15:37 +05:30
Kovid Goyal b58e900806 Call prerender() in rendering tests setup 2017-11-10 08:30:35 +05:30
Kovid Goyal ec58777d01 Fix compilation against old versions of fontconfig 2017-11-10 08:28:44 +05:30
Kovid Goyal 7a0b649cbd Fix resizing of fonts 2017-11-10 07:34:52 +05:30
Kovid Goyal e15bc71930 Code to list fontconfig fonts 2017-11-09 20:53:10 +05:30
Kovid Goyal 6d02e884d8 oops 2017-11-09 17:30:30 +05:30
Kovid Goyal 6d7546aa8c pre-rendering must happen after layout 2017-11-09 17:11:37 +05:30
Kovid Goyal ace91f04af More appropriate location for function definition 2017-11-09 17:04:31 +05:30
Kovid Goyal 934d21ac30 Wire up a few remaining pieces 2017-11-09 16:55:46 +05:30
Kovid Goyal 79d8c04b00 Hook up render_line 2017-11-09 16:55:45 +05:30
Kovid Goyal 6c838bbc28 Implement dirty line tracking 2017-11-09 16:55:45 +05:30
Kovid Goyal 0277be5856 Track line dirty status in the line buffer 2017-11-09 16:55:45 +05:30
Kovid Goyal 71dcf13edf Fix compiler warning 2017-11-09 16:55:45 +05:30
Kovid Goyal bc0a77ee31 Only detect support once when testing rendering 2017-11-09 16:55:45 +05:30
Kovid Goyal 758d315b8e Better fix for test 2017-11-09 16:55:45 +05:30
Kovid Goyal 3ec64a17f8 Dont call the font change machinery when the actual size has not changed 2017-11-09 16:55:45 +05:30
Kovid Goyal dc7d705c87 Runa simplified version of the font rendering test on macOS 2017-11-09 16:55:45 +05:30
Kovid Goyal 6c98b676bb Fix crash on macOS when changing font size 2017-11-09 16:55:45 +05:30
Kovid Goyal dd6108de5b DRYer 2017-11-09 16:55:44 +05:30
Kovid Goyal aa1b94aed0 Ensure descriptor is always set for coretext font objects 2017-11-09 16:55:44 +05:30
Kovid Goyal 75e1b30fc1 DRYer 2017-11-09 16:55:44 +05:30
Kovid Goyal a8bca1c119 Skip the rendering test on macOS
macOS is underpowered junk.
2017-11-09 16:55:44 +05:30
Kovid Goyal d05ea312ef Fix crash on macOS when failing to get font_descriptor 2017-11-09 16:55:44 +05:30
Kovid Goyal e72f153a66 Avoid unneccessary exception when failling to find a fallback font 2017-11-09 16:55:44 +05:30
Kovid Goyal da8bf5adc7 Add rendering tests 2017-11-09 16:55:44 +05:30
Kovid Goyal ce0e5a893f Make the showcase output a little nicer 2017-11-09 16:55:44 +05:30
Kovid Goyal c8b7b49d56 Ensure underline_position is viable 2017-11-09 16:55:44 +05:30
Kovid Goyal 9842a47f85 Install an up-to-date version of harfbuzz on travis 2017-11-09 16:55:44 +05:30
Kovid Goyal 1db4286a12 Fix rendering of wide chars 2017-11-09 16:55:43 +05:30
Kovid Goyal 4234a9d963 Sigh apparently unsafe break is not enough 2017-11-09 16:55:43 +05:30
Kovid Goyal 6da465d7d7 Correct the x_offset calculation 2017-11-09 16:55:43 +05:30
Kovid Goyal a1cb01b3b2 Fix grouping of combining char glyphs 2017-11-09 16:55:43 +05:30
Kovid Goyal 6920d37042 Rendering ligatures now works 2017-11-09 16:55:43 +05:30
Kovid Goyal 1dcdf9534b ... 2017-11-09 16:55:43 +05:30
Kovid Goyal f9c21b1cb3 Sigh, legacy linux distros 2017-11-09 16:55:43 +05:30
Kovid Goyal 58be99a27e Work on rendering ligatures correctly 2017-11-09 16:55:43 +05:30
Kovid Goyal ae06879193 Mark unused pending implementation 2017-11-09 16:55:43 +05:30
Kovid Goyal f121773276 Fix fallback fonts not being free'd on exit 2017-11-09 16:55:42 +05:30
Kovid Goyal 4726bcd210 Implement rendering of glyphs from font files in Freetype 2017-11-09 16:55:42 +05:30
Kovid Goyal 891942494f Implement laoding of harfbuz buffer 2017-11-09 16:55:42 +05:30
Kovid Goyal 0b8e8bff16 Infra to display rendered strings as images for testing 2017-11-09 16:55:42 +05:30
Kovid Goyal 898e87aa7b Dont allocate space for dummy fonts
Also move sprite_map test into fonts test module
2017-11-09 16:55:42 +05:30
Kovid Goyal d153794c05 ... 2017-11-09 16:55:42 +05:30
Kovid Goyal 742c60f37f harfbuzz is now needed on macOS as well 2017-11-09 16:55:42 +05:30
Kovid Goyal 81143e0c7e Test to render all box drawing characters under the sanitizers 2017-11-09 16:55:42 +05:30