Daniel Silverstone
24ec30359b
Window: Do not get stuck if callbacks are in-train during compartment close
...
When we close the JS compartment we try and cancel all callbacks so that
they do not fire after the compartment is closed. However if we have
in-train callbacks, they can gum up the closedown and so we need to check
and if we've done all we can, we break out of the callback removal loop.
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2020-04-25 14:04:54 +01:00
Vincent Sanders
bf4cbc95b0
add bindings for canvas width and height
2020-04-24 22:05:57 +01:00
Vincent Sanders
084861a31b
Implement javascript scheme url script https://wiki.whatwg.org/wiki/URL_schemes
2020-04-17 22:43:44 +01:00
Vincent Sanders
529b94be73
fixup riscos image configuration dialog gadget id
...
when minimum GIF delay was removed in
38c632a7da
the
remaining gadget identifier numbers were not updated.
Fixes #2745
2020-04-14 22:03:24 +01:00
Vincent Sanders
84f0c760e6
use form of window create which returns an error instead of aborting
2020-04-14 21:08:51 +01:00
Vincent Sanders
e2f34232a2
refactor html mouse action
...
This reduces the source complexity of the html_mouse_action()
previously this was a single function of several thousand
lines with over 30 local variables allocated on the stack.
Variables are now mostly held in a single static structure which
drasticaly reduces the size of stack frame required and improves
lookup locality.
The generated code does cause two additional function calls as the
compiler avoids inlining the sub functions. The optimiser seems to
produce somewhat better code within the sub functions.
In the final analysis there appears to be no significant performance
loss or gain with this change, just more readable source.
2020-04-13 12:09:07 +01:00
Michael Drake
c4a18c2fdd
Resources: Update presentation to use nscolour.
2020-04-07 21:32:28 +01:00
Michael Drake
15342b5f5b
About pages: Update presentation using nscolour.
2020-04-07 21:32:28 +01:00
Michael Drake
aa1513ed92
Directory listings: Update to use nscolour.
2020-04-07 21:32:28 +01:00
Michael Drake
56bdc71817
Internal stylesheet: Update dirlist style.
2020-04-07 21:32:28 +01:00
Michael Drake
b688a222ee
Internal stylesheet: Update heading styles.
2020-04-07 21:32:27 +01:00
Michael Drake
7745f224dc
Internal stylesheet: Import the nscolour stylesheet.
2020-04-07 21:32:27 +01:00
Michael Drake
0e04059f53
about fetcher: Add about:nscolour.css generated colour stylesheet.
2020-04-07 21:32:27 +01:00
Michael Drake
9fa6ac7113
nscolour: Add function to get nscolour stylesheet.
2020-04-07 21:32:27 +01:00
Michael Drake
562f4f765c
Local history: Convert to use nscolour.
2020-04-07 21:32:27 +01:00
Michael Drake
6a7729a04f
Scrollbar: Convert to use nscolour.
2020-04-07 21:32:27 +01:00
Michael Drake
b55cc0c222
Page info: Convert to nscolour.
2020-04-07 21:32:27 +01:00
Michael Drake
d34f9ec04d
Treeview: Convert to nscolour.
2020-04-07 21:32:27 +01:00
Michael Drake
efc8160d3c
NetSurf: Setup the nscolour module on startup.
2020-04-07 21:32:27 +01:00
Michael Drake
13e0faa261
Buildsystem: Build the nscolour module.
2020-04-07 21:32:27 +01:00
Michael Drake
2e844636cb
nscolour: Add nscolour module for NetSurf UI colours.
2020-04-07 21:32:27 +01:00
Michael Drake
0ab6249a64
Tests: Update test data for improved nsoption colour rendering.
2020-04-07 21:32:27 +01:00
Michael Drake
bdd1d2039c
nsoption: Improve how we show colours in about:config.
2020-04-07 21:28:12 +01:00
Michael Drake
2da993756c
nsoption: Use colour_rb_swap macro.
2020-04-07 21:28:12 +01:00
Michael Drake
30b9c088b0
Plot style: Add half lighten/darken helper variants.
2020-04-07 21:28:12 +01:00
Michael Drake
02400588e4
Local history: Improve look of keyboard nav cursor highlight.
2020-04-06 11:30:48 +01:00
Daniel Silverstone
cbc28d2c98
html: Also close js thread on html_stop()
...
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2020-03-29 14:31:42 +01:00
Vincent Sanders
6b0cb5479f
fix source object backing store documentation
...
fix formatting
add section on version 2 layout
2020-03-26 23:38:50 +00:00
Vincent Sanders
51dc59ecc9
remove unused constants
2020-03-26 23:38:50 +00:00
Daniel Silverstone
1053bcd3c1
Makefile: Add STMTEXPR detection for wapcaplet
...
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2020-03-26 22:05:21 +00:00
Vincent Sanders
34508fc3cd
For some reason atari mkdir_all operation was using the wrong path separator
2020-03-25 21:54:12 +00:00
Vincent Sanders
959c561eb3
unit testing table of contents marker was wrong case
2020-03-24 13:03:51 +00:00
Vincent Sanders
06b709f71a
Improve unit testing documentation headers and code blocks
2020-03-24 08:54:40 +00:00
Vincent Sanders
5bc21c0467
fix use of headings in integration test document
2020-03-24 08:49:29 +00:00
Vincent Sanders
fa1f1dcd11
fix start stop test to set launch options correctly
2020-03-23 17:41:05 +00:00
Vincent Sanders
9ec17b011b
Document the integration test setup
2020-03-23 17:41:05 +00:00
Vincent Sanders
e070f13093
integration test remove remaining windows when browser has been quit
2020-03-23 17:41:05 +00:00
Vincent Sanders
710818f346
fix integration test repeat "max" handling
2020-03-23 17:41:05 +00:00
Vincent Sanders
9cb7d0ab48
make conditionals optional in integration test sleep-ms action
2020-03-23 17:41:05 +00:00
Vincent Sanders
19dded8cfa
add ability for monkey farmer to launch browser with environment variables set
2020-03-23 17:40:53 +00:00
Daniel Silverstone
4cbdcc4aae
about: Add handling for unknown about: page
...
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2020-03-22 14:09:09 +00:00
Daniel Silverstone
9014dc7381
browser_window: Don't attempt to unref NULL lwc string
...
Fixes #2741
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2020-03-22 13:35:45 +00:00
Daniel Silverstone
d3a80a9aae
Monkey: Clean up on completion of downloads
...
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2020-03-22 13:08:36 +00:00
Daniel Silverstone
677d757a6c
browser_window: Re-add clearing of loading_content in download
...
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2020-03-22 12:59:22 +00:00
Daniel Silverstone
6a2ce2b3c7
HTML: Use new js_closethread()
...
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2020-03-22 10:18:30 +00:00
Daniel Silverstone
8f7bfb7b56
Window: Add flag to ensure we don't set timeouts after close
...
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2020-03-22 10:14:31 +00:00
Daniel Silverstone
d1e2eef18b
JS: Add concept of js_closethread
...
In order to better model content close vs destroy, add the concept
of closing a thread to the JS interface.
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2020-03-22 10:14:00 +00:00
Daniel Silverstone
efbfaa0cb1
JS: Move ownership of jsthread from browser to htmlc
...
Since it makes more sense for the htmlc to be responsible for
when the JS thread gets destroyed, move its lifetime from the
responsibility of the browser window to the html content.
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2020-03-22 10:00:29 +00:00
Daniel Silverstone
98e461a3b3
Dukky: Make heaps refcounted too
...
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2020-03-22 09:59:52 +00:00
Daniel Silverstone
80e7ac7345
Dukky: Add refcounting to threads
...
In order to cope with threads which manage to navigate entirely
while executing (sadly possible) we need to handle the possibility
that a thread is destroyed by the browser but still needs to live
until it returns from whatever exec it was doing at the time.
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2020-03-21 20:49:40 +00:00