Commit Graph

2043 Commits

Author SHA1 Message Date
Vincent Sanders
c821ed2bbd move download header into public API 2016-05-30 11:15:58 +01:00
Vincent Sanders
d240bec036 move clipboard header into public API 2016-05-30 11:04:32 +01:00
Vincent Sanders
1eb86d9df2 move window header into public API 2016-05-30 11:01:40 +01:00
Vincent Sanders
903c4dbef9 move search header into public API 2016-05-30 10:57:22 +01:00
Vincent Sanders
2dab078f21 move bitmap API header to core include directory 2016-05-26 23:01:03 +01:00
Vincent Sanders
6722943b81 move the CSS content handler 2016-05-26 11:18:41 +01:00
Vincent Sanders
3224d7121a move image content handlers to accomodate core build changes 2016-05-23 23:32:16 +01:00
Vincent Sanders
e41ad032fa cleanup printer API usage of plotter headers 2016-05-04 15:43:43 +01:00
Vincent Sanders
6a36d4ec2b remove all core usage of warn_user API 2016-04-26 12:50:16 +01:00
Vincent Sanders
69cea38f41 update scrollbar_create error handling to return nserror 2016-04-26 12:14:56 +01:00
Vincent Sanders
dd14807c8c improve error returns from pdf save API 2016-04-26 11:02:17 +01:00
Vincent Sanders
7ec49463da fix error reporting from frameset creation 2016-04-26 10:26:00 +01:00
Vincent Sanders
bf3ee089cb use the miscellaneous table warning entry
change all the frontends to provide the warning callback in the
miscelaneous table instead of using the warn_user function.

Changing all the warn_user callsites still requires completion.
2016-04-25 23:11:55 +01:00
Vincent Sanders
974a4a21e1 split out the layout glyph sizing and splitting API
This refactors the core "font" sizing API to be handled through gui
 function tables similar to every other core/frontend calling API.
2016-04-23 23:32:21 +01:00
Vincent Sanders
16dde3c704 make framebuffer use nsutils library monotonic times 2016-04-21 13:50:16 +01:00
Vincent Sanders
77a1b4b5e0 replace wallclock API usage with nsutils monitonic time 2016-04-21 13:12:56 +01:00
Vincent Sanders
7ba291037b move regex helper to be with teh single remaining call site 2016-04-20 23:33:31 +01:00
Vincent Sanders
dee7426656 stop content header dragging in so many other headers 2016-04-19 23:20:29 +01:00
Vincent Sanders
392307bb1f reduce content header interdependancy 2016-04-18 23:04:16 +01:00
Vincent Sanders
0bc5d2ca4c create date and time to seconds since epoch processing utility function
currently NetSurf uses curl_getdate to convert textural date and time
strings into seconds since epoch. It is betetr to move this
functionality to a utility function so curl_getdate can easily be
replaced if required.
2016-04-16 23:50:22 +01:00
Vincent Sanders
33c7df0c40 complete the rename of the gui browser table
When the operations tables were created the browser table was renamed
to miscellaneous except the actual rename patch was never applied,
this fixes that situation.
2016-04-16 23:50:21 +01:00
Vincent Sanders
3a5b4571b4 update version info for next development cycle 2016-04-06 12:01:07 +01:00
Vincent Sanders
9faef114ec Update font interface documentation to include parameter direction 2016-03-22 17:52:24 +00:00
Vincent Sanders
d15ab96a51 Fix size_t printf formatting
The printf formatting for size_t is set in c99 as %zu but in windows
it is %Iu this is solved by adding and inttypes style PRI macro for size_t

This also uses this macro everywhere size_t is formatted.
2016-03-17 22:00:54 +00:00
Vincent Sanders
df28737bff update version info for next development cycle 2016-02-16 13:38:33 +00:00
Michael Drake
6b57c94012 Return to original timeouts for now: One 30s attempt. 2016-02-15 09:58:52 +00:00
Michael Drake
0a3519fdac Remove torrent of logging during browser window resize. 2016-02-06 12:41:51 +00:00
Daniel Silverstone
4d1ef3bac4 Add support for retrying timed-out cURL fetches.
This is an attempt to amelioriate the situation found in #2384 where
we see the cURL connect() failing to complete.  Based on the pcap
from the bug log, we believe that RISC OS is likely failing to signal
the completion of the connection to cURL.  As such, cURL times out.

This change permits retries of timed out connections in the hope that
a fresh socket FD might subsequently function correctly.  The defaults
chosen mean that the previous behaviour of 30 seconds before timeout
is reported will remain the same, but in that time we will make 3 separate
attempts to connect the socket.
2015-11-10 21:51:54 +00:00
Michael Drake
519775a65c Don't leak frame scrollbars. 2015-10-31 16:14:40 +00:00
Chris Young
6afda499c2 Show the IDN decoded form in the URL bar on GTK if the option is set. 2015-10-24 15:12:56 +01:00
Vincent Sanders
eb17f4ab37 Implement basic browsing context name property 2015-10-18 10:53:49 +01:00
Chris Young
1e83301251 Remove errorneous addition. 2015-09-05 16:54:12 +01:00
Chris Young
944248ce32 Rough outline for Intuition-based context menu 2015-09-03 00:24:04 +01:00
Michael Drake
16fd36eb9d Proper error handling for JS context creation. 2015-08-13 12:23:59 +01:00
Michael Drake
c7a3229494 Can't tell if failure to create a JS context is an error or not.
It won't create one when built jsoff.
2015-08-13 11:59:43 +01:00
Michael Drake
379d97123a Handle failure to create new context. 2015-08-13 11:49:09 +01:00
Michael Drake
99765cf2d0 Remove TODO. 2015-08-13 09:48:09 +01:00
Michael Drake
2d53524635 Fix crash when JS context is required from a frame. 2015-08-13 09:39:04 +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
335bbe4f52 Move the browser identification and machine info logging.
Previously this information was logged when netsurf_init was called
which might be many lines out output into the log.

It is useful to have this information at the beginning of the log to
make it easily found. In addition it makes netsurf_init less complex.
2015-06-21 23:27:21 +01:00
Vincent Sanders
e9b89f776d Allow the resource scheme to provide data directly.
This allows front ends to provide resources from compiled in data
instead of requiring the resources to be available on disc and forcing
a redirect.
2015-06-17 21:35:40 +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
7e6b86eb1a make global history treeview directory creation return error instead of aborting 2015-05-03 17:40:27 +01:00
Vincent Sanders
75d3fdc42e Convert RISC OS to use bitmap render operation 2015-04-24 23:49:49 +01:00
Vincent Sanders
7e2f1094ce Remove unused thumbnail sources from core and gtk 2015-04-23 22:50:16 +01:00
Vincent Sanders
ee78742363 change browser history to use bitmap render interface for thumbnails 2015-04-23 22:50:16 +01:00
Vincent Sanders
de98108e7f Add render to bitmap operations and update gtk to provide it. 2015-04-22 23:14:51 +01:00
Vincent Sanders
cc11912da1 Convert framebuffer frontend to bitmap operations table. 2015-04-14 23:08:02 +01:00
Vincent Sanders
f37e52c394 Move bitmap operations into an operation table.
The generic bitmap handlers provided by each frontend are called back
from the core and therefore should be in an operation table. This was
one of the very few remaining interfaces stopping the core code from
being split into a library.
2015-04-13 23:19:04 +01:00
Vincent Sanders
c134750575 split out gtk SSL certificate verification dialog impementation. 2015-04-12 17:26:22 +01:00
Vincent Sanders
6f4f860ce3 Add some debug round thumbnail creation
More debugging of thumbnail creation as it appears to be involved in a
number of recently reported crashes on RISC OS.
2015-03-27 14:39:00 +00:00
Witold Filipczyk
befa5e6ed3 To avoid namespace conflicts with ncurses add NetSurf key prefix.
Adds a NetSurf key code prefix of NS_ to all key codes.
2015-03-27 09:36:19 +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
Vincent Sanders
c8d4fe96c4 update version info for next development cycle 2015-03-10 14:44:05 +00:00
Michael Drake
555276b04a Ensure line lengths cache is created initialised to zero. 2015-02-15 13:48:27 +00:00
Michael Drake
cf954f9494 The AmigaOS rename() isn't POSIX compiant, so call remove() first.
There will be a race condition on AmigaOS if a hostlist file gets created
between the remove() and rename() calls.
2015-02-03 10:15:37 +00:00
Michael Drake
5d51547ea7 Remove redundant remove() call. 2015-01-23 14:11:43 +00:00
Michael Drake
19f12b01a4 Fix failure to save hotlist when there was no previous file. 2015-01-23 12:14:37 +00:00
Michael Drake
4cc3746084 Make URL field for copying to clipboard. 2015-01-03 00:21:31 +00:00
Michael Drake
78b2da934f Mark URL field for copying to clipboard. 2015-01-03 00:21:31 +00:00
Michael Drake
eb86217ead Add ability to copy text from marked fields in selected nodes to clipboard. 2015-01-03 00:21:31 +00:00
Michael Drake
21d5d30571 Fix typo in comment. 2015-01-03 00:21:31 +00:00
Michael Drake
c45be2ecf4 Handle failure to remove or rename. 2015-01-02 15:34:09 +00:00
Michael Drake
6ffab5885d Don't free temp_path just before its used. 2015-01-02 15:34:08 +00:00
Michael Drake
27ea134be4 RISC OS filenames can't contian '.' 2015-01-02 13:37:39 +00:00
Michael Drake
e31ae2c5a1 Make saving hotlist safer.
If saving hotlist to "<path>", we now save to "<path>.bk", then remove
the file at "<path>", and replace it with the one at "<path>.bk".

This should prevent hotlist corruption when someone pulls the plug
while the hotlist is being written.
2015-01-02 12:48:18 +00:00
Vincent Sanders
6b645664fe add missing includes 2014-12-27 22:48:37 +00:00
Vincent Sanders
6b2676d33f Improve llcache writeout stratagy 2014-11-28 19:17:42 +00:00
Michael Drake
b9a6dae5ab Remove unecessary header include. 2014-11-24 09:43:59 +00:00
Chris Young
71cdc991c7 fix warning 2014-11-22 16:39:31 +00:00
Vincent Sanders
3ff4846c1a Remove usage of browser private interfaces
The cocoa frontend was directly acessing browser internals instead of
using the API. In the case of gui.m there was a check for the browser
window not being root (browser->parent != NULL) . As gui windows can
only ever be associated with the root brower window (i.e. its parent
will always be NULL) this was completely redundant.
2014-11-21 11:48:43 +00:00
Vincent Sanders
eb87406758 update entry points to backing store ready for allowing differing object lifetimes 2014-11-20 22:28:19 +00:00
Vincent Sanders
669df172ec Fix my spelling of teh everywhere 2014-11-18 17:16:26 +00:00
Vincent Sanders
79e501075a make the form select menu API smaller.
By hiding all but the form selection menu option structure from code
outside of render this reduces the API to the absolute minimum to
support this feature.
2014-11-13 21:52:08 +00:00
Chris Young
f66feee961 Fix warning 2014-11-10 23:54:12 +00:00
Vincent Sanders
d1f2d29e10 Doxygen cleanups and documentation additions 2014-11-10 17:00:15 +00:00
Vincent Sanders
ea033c54d4 Doxygen cleanups 2014-11-10 16:05:22 +00:00
Vincent Sanders
df8c6c3ad7 Avoid calling calloc with 0 length data.
CERT MEM04-C suggests that zero length allocations behaviour might be
surprising so it should be avoided. This adds a check to ensure a zero
length allocation will be avoided. Additionally it returns errors to
the caller rather than warning directly (in some error paths)
2014-11-10 15:09:57 +00:00
Vincent Sanders
7c4c73f1b0 Desktop doxygen fixes 2014-11-09 21:49:33 +00:00
Vincent Sanders
87a53c3e82 Doxygen cleanups and increase DOT_GRAPH_MAX_NODES for some headers 2014-11-09 15:48:38 +00:00
Vincent Sanders
05a64bfde9 fix up more doxygen errors 2014-11-08 16:49:32 +00:00
Vincent Sanders
8f64d5d223 Improve Doxygen documentation 2014-11-08 12:35:11 +00:00
Vincent Sanders
f287379a7c Fix several doxygen issues 2014-11-08 11:38:20 +00:00
Vincent Sanders
3405803280 Improve content encoding information API
Extend the content_get_encoding() API to retrieve the source of
the encoding as well as the actual encoding.
2014-11-07 12:33:34 +00:00
Vincent Sanders
8c2cfecfb5 Allow content handlers to have debug values set through API
Previously content handler debugging features were accessed by global
variables. This allows the setting of debugging parameters via a
content API giving per content control over debugging features.
Currently only used by the html content handler to toggle global
redraw debugging.
2014-11-06 22:51:46 +00:00
Vincent Sanders
46f369ca9e move themse install to its own header 2014-11-06 14:19:15 +00:00
Vincent Sanders
8ec7ad053a Make the fetching of a contents encoding generic.
The frontends previously had to use an html renderer API to get the
encoding of a content. This also required the explicit checking of the
contents type rather than using the existing content API to abstract
this knowledge.
2014-11-05 23:44:31 +00:00
Michael Drake
4ca959f46b Remove April 1st layout shuffling. 2014-11-05 17:30:00 +00:00
Vincent Sanders
68bdb84bee reference nsurl as a struct properly 2014-11-03 23:13:56 +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
a325634882 fix errors in change url setting api to take an nsurl instead of a text string 2014-11-02 22:44:20 +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
c31c4babe1 Change contextual content retrieval to browser features.
Update the API which allows frontends to acquire the page features
(images, link urls or form elements) present at the given coordinates
within a browser window.

By making this an explicit browser_window API and using the browser.h
header for the associated data structure with a more appropriate API
naming the usage is much more obvious and contained.

Additionally the link url is now passed around as a nsurl stopping it
being converted from nsurl to text and back again several times.
2014-11-02 15:46:42 +00:00
Michael Drake
1ea422a9d1 Remove old URL header includes. 2014-10-31 14:41:53 +00:00
Vincent Sanders
02ff3920ce remove unused url_init function 2014-10-31 00:50:32 +00:00
Vincent Sanders
ce3d991918 use nsurl_nice and remove url_nice
change all callers over to using new API for generating nice filenames
from a url and remove the old API.
2014-10-31 00:24:57 +00:00
Vincent Sanders
f995616509 remove more user warning calls and replace with error returns 2014-10-30 23:27:41 +00:00
Vincent Sanders
1620f20c4d make global history treeview callback return error
returns an error instead of directly waning the user.
2014-10-30 22:52:54 +00:00
Vincent Sanders
612100bd1a make local history navigation return errors
The local history interface now reports errors to its callers isntead
of inconsistantly waning the user occasionally on error.

The documentation comemhts were also updated to match reality
2014-10-30 22:21:36 +00:00
Vincent Sanders
8947af72ce make history update return error code.
This now returns errors instead of failing and inconsistantly calling
user warnings for some error paths.
2014-10-29 23:15:51 +00:00
Vincent Sanders
b1ee46cfb3 make adding a history entry return an error code.
This returns the error code to the caller instead of (sometimes)
warning the user directly.
2014-10-29 22:47:25 +00:00
Vincent Sanders
a221fa7213 Ensure browser window creation returns errors from common initialisation.
The browser window common initialisation code returns error codes which
were being ignored. The errors were additionally being reported via
warn_user in inappropriate places within browser history construction.
2014-10-29 22:29:06 +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
d204d6d555 Clean up saving as PDF
This removes the global PDF_Password interface that had completely
bitrotted and moves it into the standard misc operation table with a
sensible defualt implementation.

This also cleans up and fixes the gtk frontend implementation of the
pdf password callback so it compiles.

Finally this moves the implementation to a sensible place alongside
the other exporters reducing target makefile complexity futher.
2014-10-26 23:53:14 +00:00
Michael Drake
b0509c6545 Fix and improve comment for browser_window_get_scrollbar_type(). 2014-10-25 13:01:43 +01:00
Michael Drake
eed2a97eca Add bw function to get scrollbar type. 2014-10-25 12:04:11 +01:00
Michael Drake
eea369afe7 Add function to find if a bw is a frameset. 2014-10-25 12:00:34 +01:00
Michael Drake
ff72d58f60 Move browser_window_get_root to private header. 2014-10-25 11:31:40 +01:00
Michael Drake
f7f21096b3 Move browser_window_set_status to private header. 2014-10-25 11:29:31 +01:00
Michael Drake
94f32b8369 Move create_form_select_menu to window gui table. 2014-10-24 20:45:21 +01:00
Michael Drake
69e82a8966 Ensure we pass valid gw to gadget click gui call.
Only root bw has a gw, so this would have been broken when it
happened in a frameset.
2014-10-24 20:18:57 +01:00
Michael Drake
b27f3e5ac4 Open select menu via content msg, instead of breaking encapsulation.
Fixes bw deref and browser_private.h #include in render/
2014-10-24 17:57:15 +01:00
Vincent Sanders
dc5deb26b1 improve documentation and whitespace cleanup. 2014-10-19 21:49:46 +01:00
Vincent Sanders
1180d19324 improve documentation in headers 2014-10-19 19:12:55 +01:00
Michael Drake
85fb1fd45d Add is_selectable to browser window API surface. 2014-10-18 18:53:50 +01:00
Michael Drake
03e7605bcf Add call to test whether a browser window may be searched. 2014-10-18 17:39:03 +01:00
Michael Drake
376c96831d Don't try to draw NULL history. 2014-10-18 10:31:47 +01:00
Michael Drake
34cdbcfc25 Move up_available fn to core. 2014-10-18 10:16:00 +01:00
Vincent Sanders
1097cc40b4 remove unecessary browser.h include from core headers 2014-10-17 12:21:52 +01:00
Michael Drake
7519993fd7 Add core function to navigate to URL parent. 2014-10-17 09:51:10 +01:00
Vincent Sanders
d06df231bc Update the core to use the split operations table headers
Second in the series to decouple the core API usage from the frontends.
2014-10-16 22:33:43 +01:00
Vincent Sanders
ab7f3e3180 Split up graphical user interface operations table headers
This is the initial part of a series which splits up the API interface
definitions for the frontends removing a great deal of unnecessary file
inclusion and further isolates the fronted API usage from the core
2014-10-16 22:33:43 +01:00
Michael Drake
63645c4c32 Fix core create_form_select_menu API to pass gw, rather than bw out to front ends. 2014-10-16 12:39:31 +01:00
Michael Drake
ac98c6f815 Remove trailing whitespace. 2014-10-15 09:33:54 +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
3fa0ed01c0 add API to set DPI 2014-10-13 02:34:10 +01:00
Vincent Sanders
bfc7552d8d remove netsurf_poll callback and netsurf main loop 2014-10-13 01:18:19 +01:00
Vincent Sanders
09509a9095 Some minor documentation cleanups to reduce doxygen warnings 2014-10-12 10:35:23 +01:00
Vincent Sanders
1a2040bc72 Trivial sepelling, documentation and whitespace cleanups 2014-10-10 13:01:20 +01:00
Michael Drake
f58a2580e0 Fix textarea wrap bug.
Was comparing against the current start line length, to decide if it
needed redrawing, without taking into account that old start line
might have been longer.
2014-09-27 18:58:37 +01:00
Vincent Sanders
3d72c4a772 stop poll callback entry being mandantory in preparation for its removal 2014-09-22 18:11:23 +01:00
Michael Drake
2551885fd6 Optimise case where scrollbar_set_extents call changes nothing. 2014-09-19 12:39:02 +01:00
Michael Drake
5b96a84ef7 Setting extents can move scroll pos, so send message. 2014-09-19 12:33:34 +01:00
Michael Drake
6a74106d36 Make code more readable. 2014-09-19 12:32:52 +01:00
Michael Drake
f95b9d2eb3 Fix a couple of comment typos. 2014-09-19 11:10:43 +01:00
Michael Drake
1878bc88a9 Improve comments and simplify code. 2014-09-18 16:00:31 +01:00
Michael Drake
dcf49c7341 Improve textarea layout comments to explain the non-obvious bits better. 2014-09-18 16:00:31 +01:00
Michael Drake
2dc8459c84 Improve comment. 2014-09-18 16:00:30 +01:00
Michael Drake
87c5753d49 Fix missing doxygen parameter comment. 2014-09-18 16:00:30 +01:00
Vincent Sanders
2eb86b9096 update version info for next development cycle 2014-08-26 08:01:45 -07:00
Vincent Sanders
af16c38d2d fix DOM tree dump debug 2014-08-04 00:37:21 +01:00
Vincent Sanders
984299e5b4 remove assert for creating new browser context with the tab flag set.
This allows creation of new browsing contents (browser/gui window) in a
tab but without explicitly providing a sibling browsing context to be
placed with.
2014-07-27 18:07:00 +01:00
Vincent Sanders
9e010dc7a5 remove unused popup menu link context sensative change code. 2014-07-23 20:37:02 +01:00
Vincent Sanders
25c4ea7a6e stop treeview redraw failing because of bad global state. 2014-07-21 11:54:21 +01:00
Vincent Sanders
698b7c61f0 make gtk source viewer less explody. fixes #2159 2014-07-21 01:15:43 +01:00
Vincent Sanders
5b4d38b29b stop using certificate data from the stack outside the message context. 2014-07-17 15:20:38 +01:00
Vincent Sanders
db01637343 remove content include from urldb header 2014-07-17 00:18:44 +01:00
Vincent Sanders
89a02c3a8f when walking the css imports ensure the content is present before dereferencing it
css import entries may not have a valid content if the resource failed to load
or was unsuitable in some otehr way. The save_complete iterator did not cope with this.

fixes #2166
2014-07-08 13:25:54 +01:00
Vincent Sanders
3a9fa29ee5 try and improve usage of browser window internals 2014-07-06 18:34:34 +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
1b7aa7ffe5 make fetchers scheduled 2014-06-26 19:05:59 +01:00
Vincent Sanders
4b2101ba6a clean up the fetcher factory and improve its API 2014-06-19 18:27:24 +01:00
Vincent Sanders
8e29e517d5 fix disc cache size option to be unsigned 2014-06-09 13:13:59 +01:00
Vincent Sanders
54fcb66d87 cleanup RISC OS frontend header usage 2014-06-05 15:14:49 +01:00
Vincent Sanders
f1c2dde13b extend file table with mkdir all and make fs backing store use it.
enable fs backing store for RISC OS.
2014-06-05 12:06:47 +01:00
Vincent Sanders
7f55cb58a0 stop riscos uncesecarily including gui.h 2014-06-04 12:07:03 +01:00
Daniel Silverstone
d35b27d44e Add iterator for search providers 2014-06-03 15:40:28 +01:00
Vincent Sanders
e2633a9a63 fix default search provider icon handling 2014-06-03 15:01:14 +01:00
Vincent Sanders
7d02ae916a make launch_url core operation use nsurl 2014-05-27 23:52:35 +01:00
Vincent Sanders
662e950e48 ensure hlcache handle is not passed as NULL 2014-05-27 11:39:02 +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
Michael Drake
1f337f292d Fix fread error handling. 2014-05-26 14:03:20 +01:00
Chris Young
224f56934f Ensure the search URL is NULL-terminated 2014-05-25 15:02:30 +01:00
Vincent Sanders
a6d3ceae0e Completely re-write web search provider handling 2014-05-25 01:01:59 +01:00
Michael Drake
ce4d52e72a Fix hotlist and global_history _get_selection functions.
Broken when selection was folder, rather than entry.
  Renamed tree_node_flags lables to avoid TREE_NODE_NONE name clash.
2014-05-24 15:09:20 +01:00
Vincent Sanders
315877c822 reduce uncessary include usage 2014-05-18 23:17:15 +01:00
Vincent Sanders
706c92bf8f remove uneeded includes 2014-05-18 18:51:18 +01:00
Vincent Sanders
6677eef89b remove unecessary include 2014-05-18 17:30:53 +01:00
Vincent Sanders
966ed9449c fix riscos mkpath and error reporting in save complete 2014-05-17 23:14:43 +01:00
Vincent Sanders
64f607760b add backing store storage path to browser initialisation 2014-05-13 15:53:06 +01:00
Vincent Sanders
4a49ff5266 Extend low level source data cache with persistant storage 2014-05-13 15:52:58 +01:00
Vincent Sanders
657abbd245 low level source data cache backing store interface. 2014-05-12 23:47:43 +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
1556055d91 fix nsurl references 2014-05-08 18:03:27 +01:00
Vincent Sanders
cd7f1eceea make download_context_get_url() return an nsurl and adapt callers to cope 2014-05-08 17:54:44 +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
283cd05d01 Improve documentation on mimetype fetcher table 2014-05-07 16:23:19 +01:00
Vincent Sanders
c0ac05d39c update version info for next development cycle 2014-04-25 16:59:57 +01:00
Michael Drake
b828f6de02 Merge remote-tracking branch 'achal/fix-line-height' 2014-04-09 20:40:41 +01:00
Vincent Sanders
b7b3496a78 move testament output to object directory instead of modifying source 2014-04-08 11:41:58 +01:00
Achal-Aggarwal
763825e597 Fixes #2101, evaluation of text field and textarea line height. 2014-03-31 01:53:06 +05:30
Michael Drake
b16cfd2d6e Fix #0002097, with thanks to Achal-Aggarwal for tracking this down. 2014-03-27 21:43:19 +00:00
Vincent Sanders
4d4d74c8cd move page search gui callbacks to their own operations table 2014-03-18 22:32:52 +00:00
Vincent Sanders
87f6314dab move scheduleing into browser operation table 2014-03-09 15:37:40 +00:00
Michael Drake
32a522241f Rename function arguments to avoid using 'new'. 2014-02-19 14:08:52 +00:00
Michael Drake
b99357616c Fix unchecked return. Coverity #1175740. 2014-02-17 12:31:02 +00:00
Michael Drake
143f28572a Fix redraw when selections are deleted. 2014-02-17 12:15:08 +00:00
Michael Drake
a38a63a37e Make history internal to browser_window module. 2014-02-15 18:44:50 +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
3d2e416ea9 Move broser_window_initialise_common to browser_private.h 2014-02-09 13:28:37 +00:00
Michael Drake
56b2770722 Add flag for cloning a window. 2014-02-09 13:26:09 +00:00
Michael Drake
ea79e85fcd Clean up gui_window creation API. 2014-02-09 13:07:39 +00:00
Michael Drake
3d7cd77982 Simplify local history interface. 2014-02-08 22:43:54 +00:00
Michael Drake
22d15380f4 Add function to get browser window's extents. 2014-02-08 16:03:06 +00:00
Michael Drake
022a303d60 Move browser_window_update_extent to browser_private.h 2014-02-08 16:01:14 +00:00
Michael Drake
43c3caa469 Function to determine whether bw has a content. 2014-02-08 15:31:44 +00:00
Michael Drake
8bc3a80320 Add function to get bw's URL. 2014-02-08 15:00:08 +00:00
Michael Drake
cf84e557fa Simplify browser_window_refresh_url_bar.
Reduces front end need to access bw internals.
2014-02-08 12:07:13 +00:00
Vincent Sanders
25bc5b2b8c remove unecessary desktop/browser.h includes 2014-02-04 15:30:53 +00:00
Vincent Sanders
3455d66921 reduce desktop/browser.h unecessary includes 2014-02-03 17:56:24 +00:00
Vincent Sanders
0b50b8f3f7 add missing stddef include for size_t 2014-02-02 15:48:26 +00:00
Vincent Sanders
886a3106db move utf8 local conversion operations to table 2014-02-01 22:17:36 +00:00
Vincent Sanders
427f127fa9 remove further extraneous includes 2014-02-01 14:23:58 +00:00
Vincent Sanders
aaecf9e1af add missing include for neturf_quit symbol 2014-01-29 23:36:59 +00:00
Vincent Sanders
d5a971c281 move verbose log global into logging module and remove netsurf.h include 2014-01-29 23:20:19 +00:00
Vincent Sanders
db33103fa3 clean up desktop/gui.h include usage 2014-01-29 21:35:53 +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
Vincent Sanders
8ce0a10670 move path_to_url and url_to_path to fetch operation table 2014-01-25 23:01:32 +00:00
Michael Drake
96e5368d34 Use corestring. 2014-01-25 09:53:54 +00:00
Michael Drake
5787f8335e Simplify and optimise icon handling. 2014-01-24 23:13:18 +00:00
Michael Drake
dab6d7961e Actually use the fact scheme is interned. 2014-01-24 22:00:25 +00:00
Vincent Sanders
0475693394 create table for fetcher operations and move all operations into it 2014-01-23 00:00:18 +00:00
Michael Drake
aa380ed47a More scaled rendering improvements. Partial redraws of scaled textareas can't work atm, since neither the textarea nor content is aware of scale. 2014-01-21 14:37:46 +00:00
Michael Drake
3f3b64bf22 Fix scaled rendering clip rect bottom calculation. 2014-01-21 11:13:36 +00:00
Vincent Sanders
4987a3a8a7 remove forward refs from content/fetch.c and cleanup doc comments 2014-01-19 21:18:47 +00:00
Chris Young
18c8f5f46f Let the frontend construct the correct URL for the default search ico.
This fixes bug #2057
2014-01-18 21:23:02 +00:00
Vincent Sanders
a2247a75a3 cleanup copyright headers and some doc comments 2014-01-16 13:24:14 +00:00
Vincent Sanders
d47fed4524 move 401 login into operation table 2014-01-16 00:52:17 +00:00
Vincent Sanders
38cb39339a move filename_from_path and path_add_part into gui operation tables 2014-01-16 00:01:25 +00:00
Vincent Sanders
bd065d4a43 split browser gui operations up 2014-01-15 19:37:05 +00:00
Vincent Sanders
68eaec5cb4 complete move of remaining core gui functions 2014-01-15 12:28:55 +00:00
Vincent Sanders
0075eab194 move remaining gui operations to table 2014-01-14 23:31:54 +00:00
Vincent Sanders
667d4a0a49 confine the gui table acessor to the gui factory header 2014-01-14 20:05:14 +00:00
Vincent Sanders
8dfe225153 move download operations to download table 2014-01-14 16:04:02 +00:00
Vincent Sanders
d18c8ed452 move teh final optional window operations into the table 2014-01-13 22:54:19 +00:00
Vincent Sanders
e82d83f184 move four more optional window operations to table 2014-01-13 14:51:27 +00:00
Vincent Sanders
d70e371cd9 move two more mandantory window operations to table 2014-01-13 11:38:35 +00:00
Vincent Sanders
7227c29bba move window scroll getter and setter into operations table 2014-01-13 01:08:15 +00:00
Vincent Sanders
5a962586fb move mandantory window update and redraw operations into table 2014-01-12 23:50:54 +00:00
Vincent Sanders
4b49b4ac77 move more optional window operations into table including removing unused hide_pointer operation altogether 2014-01-12 22:55:26 +00:00
Vincent Sanders
b7736bae2f split gui operations into core and window and move more operations into tables 2014-01-12 17:07:34 +00:00
Vincent Sanders
56bb9582b1 move set title, set url, start and stop throbber window operations to gui table 2014-01-12 10:27:41 +00:00
Vincent Sanders
c8496df3df move window creation and destruction into table 2014-01-11 22:34:12 +00:00
Vincent Sanders
d3c392c3d3 Initial conversion of netsurf gui to callback vtable 2014-01-11 14:20:30 +00:00
Vincent Sanders
277bcec7c6 stop system colours being anything to do with frontends 2014-01-10 14:32:29 +00:00
Vincent Sanders
b415c2f9ff fixup logic error in save complete as directed by jmb 2014-01-06 22:22:41 +00:00
Michael Drake
69da9a55e1 Assert a bit earlier when front end tries to redraw SSL cert viewer that it's destroyed. 2014-01-06 13:41:11 +00:00
Daniel Silverstone
9a9cb399f9 Merge branch 'rjek/click-file-gadget' 2014-01-05 17:03:17 +00:00
Rob Kendrick
550c8cd73c Change gui_file_gadget_interface to pass gui_window not browser_window, add GTK implementation that of course does not work. 2014-01-05 16:45:32 +00:00
Rob Kendrick
0d7f1cfc93 Add infrastructure for calling front ends to set file gadget filenames via clicking in addition to drag-and-drop 2014-01-05 16:04:35 +00:00
Rob Kendrick
d8ad3b8e78 Add new gui entry point for file open dialogue requests 2014-01-05 16:01:03 +00:00
Rob Kendrick
1bd4a34a27 Remove asserts for default cases from all content message handlers; this is laborious and is no longer useful for catching bugs. 2014-01-05 14:39:08 +00:00
John-Mark Bell
32468516e3 Speculatively start image fetches as we parse the document. 2014-01-05 14:34:49 +00:00
Michael Drake
838359194e Return message to client when textarea is modified. 2014-01-04 14:48:58 +00:00
François Revol
d6561e51e0 Fix for gcc2 flexible array declaration 2013-12-07 01:16:22 +01:00
Chris Young
3f591e575d Modify conflicting Messages entry 2013-11-17 16:36:51 +00:00
Michael Drake
b547e1205b Use messages for translations instead of string literals. 2013-11-11 14:32:07 +00:00
Michael Drake
61b5a5e98f Visual indication of hotlist's folder for unsorted entries, with special icon. 2013-11-08 18:53:34 +00:00
Vincent Sanders
36a061e7db fix local history error return leak (coverity 1109890) 2013-11-03 15:29:17 +00:00
Michael Drake
2277fb0284 Apply plot offsets to overlays. 2013-10-26 22:39:48 +01:00
Michael Drake
26cecc9f95 Log thumbnail creation. 2013-10-24 11:50:35 +01:00
Michael Drake
1ae1d06ca4 Reduce leaking of thumbnails to only for URLs that urldb rejects.
Previously leaked thumbnails for all urls not previously visited.
2013-10-24 11:48:23 +01:00
Michael Drake
3dc4ba2989 Remove unrequired NULL check. 2013-10-23 14:40:46 +01:00
Michael Drake
e37fb89f46 Remove unreachable code. 2013-10-23 14:36:46 +01:00
Vincent Sanders
8cb2d52483 fix coverity #1111069 2013-10-23 13:48:26 +01:00
Michael Drake
53a6d6becd Show "-" for last visit date/time when visits count is 0. 2013-10-23 13:20:43 +01:00
Michael Drake
5cddb4ff3c Assert that root node is non-NULL. 2013-10-23 11:40:22 +01:00
Michael Drake
df4975b8d4 Remove unnecessary check. 2013-10-23 11:36:42 +01:00
Michael Drake
e5823beb61 Fix deref before NULL check. 2013-10-23 11:25:40 +01:00
Michael Drake
89b669919e Fix NULL check after deref. 2013-10-23 11:21:11 +01:00
Michael Drake
640bb77330 Dodge Coverity scan issue. 2013-10-23 11:16:34 +01:00
Michael Drake
f814debfe2 Remove unreachable safty net. 2013-10-23 10:21:36 +01:00
Michael Drake
441e0dcbed Assert target node is non-NULL. 2013-10-22 15:22:42 +01:00
Michael Drake
4cc0d9c233 LOG init/fini messages. 2013-10-11 22:41:09 +01:00
Michael Drake
cd9971293d Set unused channel to 0xff, so that rendering isn't broken in front ends that don't heed the OPACITY flag. 2013-10-05 11:44:15 +01:00
Michael Drake
1e4c733fc0 Appease gtk front end's broken bitmap behaviour. 2013-10-03 11:45:55 +01:00
Michael Drake
a2b4c63fcc Init unused alpha channel to 0, even though we set the bitmaps as opaque. 2013-10-03 11:39:28 +01:00
Michael Drake
69e3963dae Avoid NULL deref when deleting a node, causing empty ancestor nodes to be deleted. 2013-10-03 00:13:18 +01:00
Michael Drake
2a4fb9ecd1 Generate anti-aliased triangles in bitmaps and plot via bitmap plotter. (Without anti-aliasing was too ugly to be endured.) 2013-10-02 23:34:34 +01:00
Michael Drake
506a0e7d94 Add accessors for individual colour channels. 2013-10-02 23:33:46 +01:00
Michael Drake
f19e827983 Use polygon plotter for treeview furniture (node expansion/contraction triangles), instead of triangle text glyphs. 2013-10-02 13:34:51 +01:00
Michael Drake
0c4f32fb1d Make undo and redo share common implementation. 2013-10-01 18:29:22 +01:00
Michael Drake
5809bcefa6 Wipe undo buffer on textarea_set_text. 2013-10-01 14:03:02 +01:00
Michael Drake
3bdc61a131 Ensure cut can be undone. 2013-10-01 13:54:34 +01:00
Michael Drake
6a4601c3ce Implement textarea undo and redo. 2013-10-01 13:30:20 +01:00
Michael Drake
308a24e661 Start implementing undo/redo. For now it just records changes, the actual undo/redo handling is not yet done. 2013-09-30 21:38:41 +01:00
Michael Drake
b96222d857 We return client data, not node. 2013-09-14 23:22:13 +01:00
Michael Drake
951ad51cd4 Add functions to get first selected hotlist/global_history node data. 2013-09-13 14:24:25 +01:00
Michael Drake
3d123d72fc Enable front end to select treeview text size. 2013-09-09 13:11:36 +01:00
Michael Drake
b10252e325 Protect against attempt to initialise twice. 2013-09-09 13:00:24 +01:00
Michael Drake
172551870b Squash warning from older GCC. 2013-09-08 19:34:43 +01:00
Michael Drake
7f31b2c776 Fix use after unref. 2013-09-08 19:28:57 +01:00
Michael Drake
2468d00675 Check for error as soon as we have return value. 2013-09-05 13:06:53 +01:00
Michael Drake
411e367add Various tidyups to make ownership more clear. 2013-09-05 12:54:15 +01:00
Michael Drake
9c855df691 Remove dead assignment. 2013-09-05 12:01:13 +01:00
Michael Drake
2fce8cccbc Remove dead assignement. 2013-09-05 11:58:49 +01:00
Michael Drake
5d3362be81 Fix dead assignments. 2013-09-05 11:55:49 +01:00
Michael Drake
84b90853b5 Fix dead assignement. 2013-09-05 11:53:19 +01:00
Michael Drake
33c383357d Express logic to avoid confusing static analyser. 2013-09-05 11:39:44 +01:00
Michael Drake
8007027f84 Express logic so that the static analyser can understand and not report NULL deref. 2013-09-05 11:34:38 +01:00
Michael Drake
e94528518d Remove a couple of dead stores. 2013-09-05 11:27:33 +01:00
Michael Drake
decb4d40f3 Ensure correct field is edited when more than one hidden field is editable. 2013-09-05 11:26:05 +01:00
Michael Drake
267c630b88 Tidy up compatibility layer. 2013-09-04 15:13:53 +01:00
Michael Drake
e8071e676c Remove some redundancy. 2013-09-03 20:06:42 +01:00
Michael Drake
393dee4fd7 Squash leak in error case. 2013-09-03 20:01:05 +01:00