Vincent Sanders
55ba27c68f
re-order config include so strcasecmp is correctly detected on RISC OS/win32
2019-12-22 11:11:04 +00:00
Daniel Silverstone
eba05b0d38
html_script: Count sync scripts to prevent unpausing early
...
If there is more than one incomplete sync script then it's
important that we don't unpause hubbub too early. This commit
adds a counter so that if there're unfinished sync scripts in
the set, we don't unpause until the last one completes.
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-12-19 20:50:33 +00:00
Michael Drake
faf667ada7
HTML: box_consturction: cleanup name dom_string in box_object.
2019-12-10 19:26:12 +00:00
Michael Drake
4c4b57d511
HTML redraw: Never draw box scrollbars for textareas.
...
The scrollbars for textareas are rendered by the widget.
This stops us from putting broken scrollbars over the top of the
textarea's own scrollbars.
2019-12-09 14:33:53 +00:00
Michael Drake
1c466369ef
webp: NetSurf bitmap format is RGBA.
...
Issue a bitmap modified call after conversion, to allow front ends
with different pixel formats to convert.
2019-12-08 11:30:47 +00:00
Daniel Silverstone
3a8317fddb
fetch_curl_report_certs_upstream: Use new SSL_CERT_ERR_CERT_MISSING
...
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-12-03 09:42:14 +00:00
Daniel Silverstone
24dd16ddff
fetch_curl_verify_callback: Do depth update after check
...
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-12-03 09:35:51 +00:00
Michael Drake
eb88c92749
html: css fetcher: Fix passing LWC borrow to fetcher_add, which consumes.
...
Fixes abort on exit when corestring finalisation tried to unref
what should have been the final ref:
$ ./nsgtk3
corrupted double-linked list
Aborted (core dumped)
2019-12-02 10:58:36 +00:00
Michael Drake
65e5512160
html: Fire DOM KeyboardEvents on keypresses.
2019-12-01 21:25:46 +00:00
Michael Drake
f620ea9d17
dukky_push_event: Enable KeyboardEvent specialisation.
2019-12-01 21:25:46 +00:00
Michael Drake
23d413c561
JavaScript: Add KeyboardEvent bindings.
2019-12-01 21:25:46 +00:00
Michael Drake
7e6723e27a
html: Add function for issuing a keypress event.
2019-12-01 21:25:46 +00:00
Michael Drake
a2190f91c9
html: Split out helper for firing DOM events and swallowing errors.
2019-12-01 21:25:46 +00:00
Michael Drake
12fd5ddd69
HTML: Rename fire_dom_event to fire_generic_dom_event.
2019-12-01 21:25:46 +00:00
Daniel Silverstone
92caa16cfc
Add missing unrefs
...
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-12-01 17:25:49 +00:00
Daniel Silverstone
715586bb65
html_saw_insecure_objects: Don't infinite loop on objects
...
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-12-01 17:05:28 +00:00
Daniel Silverstone
33c81b6932
html_css_fetcher: Use corestring_lwc_x_ns_css
...
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-12-01 17:05:28 +00:00
Daniel Silverstone
2e07d955b6
content_saw_insecure_objects: Fix various corner cases
...
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-12-01 17:05:28 +00:00
Daniel Silverstone
9faca2b940
Add missing include
...
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-12-01 16:07:45 +00:00
Daniel Silverstone
6fc2666d07
Allow contents to indicate if they believe they may not be secure.
...
HTML contents reference many other objects. The browser window
needs to know if any of them may not be secure, in which case it
needs to report that in its page state. If other content types
might refer to sub-contents, they will need to define the callback
too.
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-12-01 15:49:08 +00:00
Daniel Silverstone
9a02a41cd6
box_construct: Do not leak attributes in <embed> boxes
...
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-11-30 20:37:07 +00:00
Michael Drake
dc9de4998f
HTML redraw: Don't render scrollbars when the CSS doesn't permit it.
2019-11-30 15:20:21 +00:00
Daniel Silverstone
ea142abdd0
llcache: Reload SSL certificate data from serialised store
...
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-11-30 14:21:41 +00:00
Daniel Silverstone
0c0b9faddd
llcache: Persist SSL certificate data
...
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-11-30 14:21:41 +00:00
Daniel Silverstone
f49654cfc5
llcache: Support storing SSL certificate data
...
In order to support persisting SSL data we first have to store it
and support catching up new users.
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-11-30 14:21:41 +00:00
Vincent Sanders
4a1ca97c65
make unknown content drag assert have meanigful message
2019-11-29 21:32:46 +00:00
Vincent Sanders
69236590d0
change mouse action drag handling to use a more efficient dispatch
2019-11-17 10:40:34 +00:00
Vincent Sanders
e34f9d3a38
move remaining mouse action drag handling into separate functions
2019-11-17 10:13:56 +00:00
Vincent Sanders
ae39b9f955
move more select menu handling into mouse_action_select_menu()
2019-11-17 10:12:37 +00:00
Vincent Sanders
185d034323
make mouse track and mouse action content handlers return an error code
2019-11-12 22:48:00 +00:00
Vincent Sanders
074407d251
Remove redundant drag handling for content selection
...
This redundant code was added by:
4747bbbfb2
HTML drags now go via content msg.
and then added again with:
c2a718075a
A load of refactoring of how content selection and input work.
2019-11-12 21:54:35 +00:00
Vincent Sanders
b9bc34b875
split out html interaction header elements and rename source
2019-11-12 21:54:35 +00:00
Michael Drake
82d4a2265b
Data fetcher: Include stdarg.h header.
2019-11-12 19:16:07 +00:00
Michael Drake
8ad55e23fd
gif: Change how we rate-limit frames to match other browsers.
...
This makes the old minimum_gif_delay option unused.
2019-11-11 21:54:26 +00:00
Michael Drake
8e1154eb1c
Content: Remove redundant and unused redraw message fields.
...
This was archaic support for rendering images as "overlays",
and avoiding a redraw via the browser window redraw and HTML
contents. Basically it was "plot this image here", but it
was too error prone, so it was removed a long time ago.
These are some last vestiges that made the redraw message
look more complex than it is.
2019-11-11 21:54:15 +00:00
Michael Drake
db7f1f01a9
Data fetcher: Squash BSD warning.
2019-11-11 21:54:04 +00:00
Vincent Sanders
0e16c01cdc
remove unecessary user warning
2019-11-10 20:32:37 +00:00
Michael Drake
ad27ed6926
llcache: Avoid putting local content in the disc cache.
2019-11-10 16:49:05 +00:00
Michael Drake
26d7a167ae
llcache: Split out scheme is cachable check.
2019-11-10 16:49:05 +00:00
Michael Drake
c14f01ea44
File fetcher: Optimise HTTP header generation.
2019-11-10 14:37:36 +00:00
Michael Drake
8d652f1ff4
Resource fetcher: Optimise HTTP header generation.
2019-11-10 14:37:34 +00:00
Michael Drake
301b0bae00
llcache: URLs with data scheme are cachable.
2019-11-10 14:36:40 +00:00
Michael Drake
66401b7fa6
Resource fetcher: Add Cache-Control header with max-age of a year.
...
Resource URLs can't change, we want to assume they're fresh for
as long as we can.
2019-11-10 14:36:40 +00:00
Michael Drake
ab4eab5706
Data fetcher: Add Cache-Control header with max-age of a year.
...
Data URLs can't change, we want to assume they're fresh for
as long as we can.
2019-11-10 14:36:40 +00:00
Michael Drake
0dfbc80587
Data fetcher: Split header emitting out into helper.
2019-11-10 14:36:40 +00:00
Michael Drake
58094ffaa5
Data fetcher: Move fetch_data_send_callback towards top of file.
2019-11-10 11:58:38 +00:00
Michael Drake
885897f610
llcache: Uncachable scheme checks don't need to be caseless.
2019-11-09 17:14:37 +00:00
Michael Drake
52805a7860
llcache: Allow file and resource schemes to be cached.
...
This means things like the default css file and adblock css file
are only loaded and parsed once.
2019-11-09 17:08:43 +00:00
Michael Drake
b15cbb72ac
File fetcher: Avoid atoi for If-None-Match value parse.
...
The file fetcher emits FETCH_NOTMODIFIED if the file is unchanged.
2019-11-09 17:06:04 +00:00
Michael Drake
c92b31babe
Resource fetcher: Fix ETag handling.
...
* Changed ETag storage to be time_t, rather than int.
* Changed `If-None-Match` value parsing to use proper
time_t parsing, rather than `atoi`.
We emit FETCH_NOTMODIFIED if the resource hasn't changed.
2019-11-09 16:59:26 +00:00