Commit Graph

2185 Commits

Author SHA1 Message Date
Chris Young
33eb8d3324 Attempt to use splay trees for font caching.
This is theoretically faster, but leaks like a sieve.
2015-09-01 00:23:20 +01:00
Chris Young
914ba332e2 Use the correct decoded surrogate values for calculating kerning widths 2015-08-24 20:56:01 +01:00
Chris Young
4bbf2ac58a Avoid accessing NULL pointer 2015-08-24 18:00:24 +01:00
Chris Young
cba6bdb481 If a designed (bold, italic, etc) version of a specific font is set but not actually installed, treat this as a non-critical error, log it, and create a computed version. 2015-08-19 19:15:06 +01:00
Chris Young
fea40a0a78 Restrict all menu icon code to OS4+gadtools53.7
This avoids requests for TBimages: on OS3
2015-08-17 18:15:29 +01:00
Chris Young
aaf7ebf9fd Fix some AmigaGuide errors 2015-08-17 17:59:04 +01:00
Chris Young
0c42364b67 Check version of the correct library 2015-08-17 17:52:09 +01:00
Chris Young
528fce7262 Fix OS3 build 2015-08-17 17:44:27 +01:00
Chris Young
9b222fdeb6 Check .font file is indicating this is an outline font before attempting to open the .otag 2015-08-16 23:26:21 +01:00
Chris Young
69a133969b Make the logging when opening outline fonts on OS3 a little more obvious. 2015-08-16 23:12:20 +01:00
Chris Young
a2edd98c19 Force usage of friend BitMaps on OS3 when on high/truecolour screens.
AreaInfo buffer doesn't need to be in chip mem.
2015-08-16 23:03:54 +01:00
Chris Young
87ebe66880 Check menuobj before we dispose it 2015-08-16 22:51:32 +01:00
Chris Young
b429a89ed6 Only update the hotlist menu etc if it was the hotlist window which was closed. 2015-08-16 22:38:29 +01:00
Chris Young
f9bb4ba71d Fix memory leak 2015-08-16 13:02:14 +01:00
Chris Young
9c2fbde917 Put the memory areas, rather than the structures, into chip RAM as required. 2015-08-16 12:48:06 +01:00
Chris Young
7c14bff469 TmpRas should be in chip mem for OS3/AGA 2015-08-16 12:41:21 +01:00
Chris Young
a28be12270 Fix blitting of font glyphs on OS3/AGA 2015-08-16 12:06:00 +01:00
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
45171214ed Add an option to toggle usage of a friend BitMap for our off-screen rendering buffer (OS3 only).
Defaults to OFF, which works everywhere, but can be switched on for performance benefits when using RTG.
2015-08-15 16:42:52 +01:00
Chris Young
beb5b9a542 Remove a double free and re-arrange to stop referencing a freed pointer. 2015-08-15 14:25:50 +01:00
Chris Young
ff1de89976 Fix options clicktab creation on OS3
None of the rest of this GUI creates properly yet.
2015-08-15 14:11:30 +01:00
Chris Young
844e599a22 Define m68k for OS3 build so dukky (nearly) compiles. 2015-08-14 19:13:19 +01:00
Chris Young
3b9a913125 Permanently enable display of the "enable javascript" UI options 2015-08-09 14:22:29 +01:00
Chris Young
f4903743ba Abstract all instances of NewMinList as it causes alert 80000006 on OS3 2015-08-05 23:42:20 +01:00
Chris Young
ef5ce5c2f6 Fix guru 80000006 occuring on OS3 when initialising lists. 2015-08-05 18:13:04 +01:00
Chris Young
70fd706e65 NULL-terminate font name in IFF DR2D FONS 2015-07-20 19:42:50 +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
Chris Young
7459d4dc93 Correct broken ifdef 2015-07-05 11:00:47 +01:00
Chris Young
354de433e9 Scale cached favicons before they are cached. This avoids the need to scale icons on menu creation. 2015-06-22 19:12:57 +01:00
Chris Young
73d6b47e6a Remove the overwrite check in bitmap_save as it causes duplicate overwrite requesters. 2015-06-22 18:26:18 +01:00
Chris Young
2522ecf714 Add an appropriate file extension when saving, or leave the existing if we're saving source. This fixes the remainder of #2185 2015-06-22 18:25:08 +01:00
Vincent Sanders
c08bccbcea fixup missing lincludes from messages API update 2015-06-22 10:42:01 +01:00
Vincent Sanders
67ded2a02a This moves message loading out of netsurf_init into each frontend
The translated message loading is dependant on configuration of
resource location in each frontend, additionally they should have the
ability to deal with errors in this loading in a implementation
specific manner.

This also extends the message loading API to be capable of loading
from an inline memory buffer instead of from a file.
2015-06-21 23:27:22 +01:00
Chris Young
fcadb1f6f8 Space ARexx menu items correctly. 2015-06-21 19:24:46 +01:00
Chris Young
57ca8bbd21 Require gadtools 53.7
OS4.1u6 does not cope well with image menus, so insist on a component in FE to ensure the layouting is sane and menu creation is fast.
2015-06-20 18:09:44 +01:00
Chris Young
3db1e7381a Prettify pull-down (not context) menu. 2015-06-16 19:36:09 +01:00
Chris Young
d8ce401591 Remove some workarounds to make image menus conform better on OS4.1u6. They never quite matched normal menus so are going to look odd when we add more images anyway. 2015-06-16 18:44:52 +01:00
Vincent Sanders
0d811963c1 fixup all the remaining logging macro callsites
The semantic patch tool appears to have missed some difficult to
reason about callsites which have now been manually cleaned up
2015-05-28 17:06:18 +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
7bc29f7782 Attempt to fix spurious plotter crashes 2015-04-27 18:32:49 +01:00
Chris Young
ad779dc38a Revert "Attempt to avoid a crash in ami_plot()"
This reverts commit e64d48980e.
2015-04-27 18:26:58 +01:00
Chris Young
e64d48980e Attempt to avoid a crash in ami_plot() 2015-04-25 23:04:56 +01:00
Chris Young
b879bed114 Remove bogus comment 2015-04-25 13:20:59 +01:00
Chris Young
c8caf08ef1 As the content interface is now doing the scaling, we render to a native BitMap and then copy that to the RGBA32 bitmap buffer without re-scaling.
The native BitMap is currently discarded and will be re-created when it is displayed.
2015-04-25 13:13:30 +01:00