Commit Graph

153 Commits

Author SHA1 Message Date
Vincent Sanders 82beca0432 Complete hash table tests and clean up ineterface. 2015-07-12 17:28:03 +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
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
Vincent Sanders a14b689b7a Use standard macros for monkey frontend mandantory pkg-config based libraries 2015-05-03 14:56:42 +01:00
Vincent Sanders 408e818cbe Update posix source version on monkey frontend to reflect oyr usage of scandir 2015-05-03 14:46:29 +01:00
Vincent Sanders 4e7dcde2b0 Update monkey to use bitmap render API 2015-04-24 10:54:32 +01:00
Vincent Sanders e7f9dbcb10 Remove webp image handling
The bitmap and image handling interfaces have changed within NetSurf
and the webp image handling has not been fixed up appropriately to
cope.

After discussion with the other developers it has been decided that
the webp support is not worth the necessary development effort to
rewrite and maintain.

The webp format is not in wide usage and Mozilla, Microsoft and Apple
have not adopted it. This means the removal will not adversely impact
NetSurf.

Resolves:2310
2015-04-21 14:03:02 +01:00
Vincent Sanders 2465fc4e6b move the mandantory library config for libcss and libdom to core makefile 2015-04-17 22:48:55 +01:00
Vincent Sanders 9679561eca Update monkey frontend to use bitmap operation table. 2015-04-15 22:05:10 +01:00
Vincent Sanders e62db5a49c define _DEFAULT_SOURCE as well as _BSD_SOURCE to supress warnings in glibc 2.12 2015-03-28 18:25:41 +00:00
Vincent Sanders 8a99b045bc Remove url from content thumbnailers API
The content thumbnailers for each frontend were being provided the
contents url. This was only ever used to call the urldb thumbnail
setting API.

This changes it so the single callsite that passed a valid url adds
the bitmap to that url itself in desktop_history.c instead of forcing
every frontend to require the urldb API.

Additionally the old API could pass the url as NULL which was causing
asserts where this was not an expected parameter value. Because of
this this fixes bug #2286 which was also present in the monkey
frontend as both called nsurl_access() on the url without the NULL
check and caused an assertion.
2015-03-15 00:00:45 +00:00
John-Mark Bell 9a2fe3d481 Monkey: fix double-free on exit 2015-02-25 00:12:15 +00:00
Vincent Sanders 5f57a39130 revert unecessary librt linkage as it not comes from libnsfb pkg-config correctly 2014-11-27 16:04:16 +00:00
Vincent Sanders 18d1fce332 add rt library to link 2014-11-27 14:40:00 +00:00
Vincent Sanders bdfedb686b replace save_link operation table entry usage of textural url with nsurl 2014-11-03 23:05:59 +00:00
Vincent Sanders c14ddad660 change url setting api to take an nsurl instead of a text string 2014-11-02 22:30:45 +00:00
Vincent Sanders ad343eccb1 remove unecessary utils/types.h
This cleans up this header and moves the functionality into more
useful places while reducing the include complexity but only pulling
in whats required.
2014-11-02 20:10:32 +00:00
Vincent Sanders 7ace528729 Update url setting API to return nserror code instead of calling warn_user 2014-10-29 00:18:12 +00:00
Vincent Sanders 14e2829489 remove the die API from the core.
The die() API for abnormal termination does not belong within the core
of netsurf and instead errors are propogated back to the callers.

This is the final part of this change and the API is now only used within
some parts of the frontends
2014-10-26 12:42:53 +00:00
Vincent Sanders 7a6faf4199 reduce uncesessary inclusion of browser.h and browser_private.h 2014-10-17 09:27:58 +01:00
Vincent Sanders 781d22892b Update monkey frontend to cope with split operations table headers 2014-10-16 22:33:44 +01:00
Michael Drake c2f2076efe Don't include browser_private. 2014-10-15 21:36:25 +01:00
Michael Drake 2f4d120421 Use API to get window extents. 2014-10-15 21:35:14 +01:00
Michael Drake 6548f753a5 Don't need content to window conversion. 2014-10-15 21:28:40 +01:00
Michael Drake 24a2c54ec8 There's no reason to connect thumbnails with windows. 2014-10-15 21:26:38 +01:00
Vincent Sanders 02bbaa3e88 split version info into its own header and remove unnecessary nesurf.h includes
The netsurf.h header should *only* contain the registration, core
initialisation and finalisation methods. Version information is best
placed in its own header.

Also remove any unneeded inclusion of this header limiting it to
solely the places the relevant API is required.
2014-10-13 15:08:16 +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 33c6073dbe remove unecessary css include 2014-10-13 08:09:25 +01:00
Vincent Sanders 21f8f8170a remove use of deprecated netsurf_quit variable in monkey
The core no longer needs to run the event polling loop as fetches are now
scheduler driven. This is part of a series which will ultimately remove
netsurf_poll callback altogether.
2014-10-12 21:18:17 +01:00
Vincent Sanders 4dd5a9c114 set defaults for cookie and url database 2014-10-12 20:40:40 +01:00
Vincent Sanders 4f530a3f8f Pull warning flags out into variables that can be overriden seperately for C and C++ 2014-09-05 16:01:44 +01:00
Vincent Sanders 18aefabd20 change reformat to be driven from the scheduler like redraw 2014-07-01 09:27:20 +01:00
Vincent Sanders 8944edd649 convert all frontends to scheduled fetch operation 2014-06-26 19:05:59 +01:00
Vincent Sanders 7d02ae916a make launch_url core operation use nsurl 2014-05-27 23:52:35 +01:00
Vincent Sanders 00b6cfc57e rework path to url mapping functions to convert from and to nsurl 2014-05-26 23:52:36 +01:00
Vincent Sanders 315877c822 reduce uncessary include usage 2014-05-18 23:17:15 +01:00
Vincent Sanders 64f607760b add backing store storage path to browser initialisation 2014-05-13 15:53:06 +01:00
Vincent Sanders 16b11e7238 ensure operations tables are registered as early as possible. 2014-05-10 10:22:10 +01:00
Vincent Sanders 2326d3c503 remove unecessary utils/url.h includes 2014-05-09 10:15:42 +01:00
Vincent Sanders 096bd47ab0 refactor url utility functions to use standard nserror codes and have appropriate documentation. 2014-05-08 00:16:50 +01:00
Vincent Sanders c56642819e add file operations table and make all frontends use it.
This rationalises the path construction and basename file
operations. The default implementation is POSIX which works for all
frontends except windows, riscos and amiga which have differeing path
separators and rules.

These implementations are significantly more robust than the previous
nine implementations and also do not use unsafe strncpy or buffers
with arbitrary length limits.

These implementations also carry full documentation comments.
2014-05-07 16:24:51 +01:00
Vincent Sanders f6867efcf8 Fix checking memory allocation return, fixes coverity 1164969 2014-05-07 16:23:19 +01:00
Vincent Sanders 626d37511f check return from stat() fixes coverity 1164069 2014-05-07 16:23:19 +01:00
Vincent Sanders 3a7fb23b87 monkey should not force external iconv 2014-04-30 12:11:01 +01:00
Vincent Sanders 6f9a93e332 fix formatting of defaults makefiles 2014-03-20 11:05:39 +00:00
Vincent Sanders 87f6314dab move scheduleing into browser operation table 2014-03-09 15:37:40 +00:00
Michael Drake 49bed056dd Make browser_window_navigate (un)verifiable flag match browser_window_create. 2014-02-10 22:40:04 +00:00
Michael Drake af014bce99 Allow tab creation without history clone. Changes browser_window_create and browser_window_navigate flags. 2014-02-10 14:08:45 +00:00
Michael Drake ea79e85fcd Clean up gui_window creation API. 2014-02-09 13:07:39 +00:00