Commit Graph

146 Commits

Author SHA1 Message Date
Chris Young
527a13a841 Ensure OS3 doesn't try to obtain an 8-bit GlyphMap. 2015-08-15 17:32:28 +01:00
Chris Young
b19cd801fd Revert "Ensure we don't accidentally use an 8-bit glyphmap under OS3."
This reverts commit c43d09af64.
2015-08-15 17:27:57 +01:00
Chris Young
0c2f466786 Revert "Fix OS4 build"
This reverts commit c759b2a262.
2015-08-15 17:27:19 +01:00
Chris Young
c759b2a262 Fix OS4 build 2015-08-15 17:07:59 +01:00
Chris Young
c43d09af64 Ensure we don't accidentally use an 8-bit glyphmap under OS3. 2015-08-15 16:56:02 +01:00
Chris Young
c38670ade8 Allow a fallback font for characters above 0xFFFF to be specified. There is no scanning of this range as most fonts don't have any characters here. Symbola is selected if it is installed. 2015-07-06 19:29:16 +01:00
Chris Young
8282f53880 Support UTF-16 surrogates. This enables Emoji to be displayed if an appropriate font is installed.
NB: Currently surrogate glyphs are not able to use the fallback font.  The wrong glyphs may be displayed if you use an "old font engine".
2015-07-06 18:46:08 +01:00
Chris Young
bc3534d920 Split UTF-16 char length check into a separate function 2015-07-06 18:16:39 +01:00
Vincent Sanders
c105738fa3 Change LOG() macro to be varadic
This changes the LOG macro to be varadic removing the need for all
callsites to have double bracketing and allows for future improvement
on how we use the logging macros.

The callsites were changed with coccinelle and the changes checked by
hand. Compile tested for several frontends but not all.

A formatting annotation has also been added which allows the compiler
to check the parameters and types passed to the logging.
2015-05-28 16:08:46 +01:00
Chris Young
947c466c4b Split plotting and widthing functions up 2015-02-28 13:01:16 +00:00
Chris Young
df25135a4d micro-optimisation 2015-02-28 12:41:50 +00:00
Chris Young
85df94f47a more microoptimisation 2015-02-23 18:47:58 +00:00
Chris Young
6fda772b89 Avoid clobbering the PPC pipeline 2015-02-23 18:44:47 +00:00
Chris Young
5d43025adf Mostly working bitmap font support 2015-02-22 16:50:41 +00:00
Chris Young
f123ed101f Lazy bitmap font rendered text for slow hardware (non-working) 2015-02-03 19:48:28 +00:00
Chris Young
2066390555 Fix bullet.library usage 2015-01-30 18:32:44 +00:00
Chris Young
e5b6dac87c Fix OS3 build
Fix font cache on OS3
2015-01-29 19:31:47 +00:00
Chris Young
509053cae7 Fix template blit Y position by adjusting the pointer to the template 2015-01-29 00:17:34 +00:00
Chris Young
003344023b Blit text to screen correctly on OS3 2015-01-29 00:13:48 +00:00
Chris Young
bc3cb4070d Remove dead code 2015-01-28 23:36:52 +00:00
Chris Young
ecdf37c6ac Fixup font.c a bit better for OS3 2015-01-28 18:49:44 +00:00
Chris Young
1bee34e164 Stub out font.c and font_scan.c for OS3 for now
A more involved fix required for later.
2015-01-12 22:40:46 +00:00
Chris Young
04c80ce0a7 Fix warnings 2014-11-09 19:26:59 +00:00
Vincent Sanders
0b64df140c Update amiga frontend for split operation table header changes 2014-10-16 22:33:44 +01:00
Vincent Sanders
17be8cf216 Put the font operations table alongside all the other core API
The netsurf core is driven from numerous operation tables most of
which are now set through a common netsurf_register() interface. The
font and plotting interfaces are currently separate and unlike all the
other operation tables are modified for differing contexts.

This change moves the font operations alongside all the other
operations table and remove unnecessary interaction with the renderers
font internals. Further this also removes the need for css internals
to be visible in frontends.
2014-10-13 11:56:31 +01:00
Vincent Sanders
3fa0ed01c0 add API to set DPI 2014-10-13 02:34:10 +01:00
Michael Drake
34d7edcdc6 Remove debug logging. 2014-08-30 15:40:00 +01:00
Chris Young
a98b946ca2 Confidently remove the debug 2014-06-01 08:45:29 +01:00
Chris Young
3457d3adc7 Sometimes (but not always) the UTF-16 conversion inserts a BOM. Skip it. 2014-06-01 08:44:51 +01:00
Chris Young
06ad319c24 Filter all control chars from width kerning and fix some const warnings. 2014-05-19 18:39:54 +01:00
Michael Drake
eb5ca0f94d Add logging to nsfont_split function. 2014-05-18 19:36:06 +01:00
Chris Young
e197abf63a Don't try to kern a character with \0 2014-05-18 13:42:30 +01:00
Michael Drake
9727f87525 Fix build. 2014-05-16 18:14:28 +01:00
Michael Drake
09e7ea6566 Simplfy and clarify splitting function.
Should be funtionally identical.
2014-05-16 18:06:29 +01:00
Chris Young
65adc17121 Fix a bunch of cppcheck unused/unreadVariable warnings 2014-04-05 20:26:40 +01:00
Vincent Sanders
87f6314dab move scheduleing into browser operation table 2014-03-09 15:37:40 +00:00
Vincent Sanders
654da2ffb5 move utf8 conversion routines to use nserror instead of their own error enum 2014-01-28 21:40:13 +00:00
Chris Young
ade86e496e Replace AllocVec with AllocVecTags. Remove some instances of MEMF_CLEAR where it is not necessary. 2013-10-12 13:11:13 +01:00
Chris Young
f4d04cefc0 Revert nsfont_split back to how it was before I started meddling with it. 2013-08-03 12:54:50 +01:00
Chris Young
1bbafde641 Further split fixing 2013-05-28 20:58:39 +01:00
Vincent Sanders
a92e5930ff fixup issues with new options API merge 2013-05-28 16:44:46 +01:00
Vincent Sanders
ee6e6eec05 move options include 2013-05-28 14:16:10 +01:00
Chris Young
8dc7ec2cb4 More split fixery 2013-05-25 14:12:02 +01:00
Chris Young
4a618b7040 Another attempt to fix the moving split position when a string fits exactly. 2013-05-25 14:05:32 +01:00
Chris Young
2f94771f41 revert text split change 2013-05-20 17:59:58 +01:00
Chris Young
5fcdbb80f0 Try to avoid the split point jumping around when it occurs exactly on the boundary requested 2013-05-18 13:34:36 +01:00
Chris Young
e4f11d1b74 Fix a potential crash when plotting glyphs 2013-04-28 11:53:37 +01:00
Chris Young
d9b8809908 Fix memory leak and make a point of ignoring UTF-16 surrogates 2013-04-14 16:03:46 +01:00
Chris Young
52e811a842 Don't recalculate next char position 2013-04-14 15:05:27 +01:00
Chris Young
7de97e8d6a ensure the closest character is picked 2013-03-24 11:35:27 +00:00