Michael Drake
dc9de4998f
HTML redraw: Don't render scrollbars when the CSS doesn't permit it.
2019-11-30 15:20:21 +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
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
Vincent Sanders
0e16c01cdc
remove unecessary user warning
2019-11-10 20:32:37 +00:00
Vincent Sanders
e95c11dac8
remove user warning and log error instead
2019-11-07 21:35:24 +00:00
Vincent Sanders
0dbc6e5ecd
fix keypress entry on text area
...
accidentaly broken in commit fca421e204
2019-11-07 21:20:04 +00:00
Vincent Sanders
570f2dc036
remove user warning and fix up error handling in form select menus
2019-11-07 18:52:49 +00:00
Vincent Sanders
7de3100624
remove unecessary user warning
2019-11-06 23:26:48 +00:00
Vincent Sanders
fca421e204
remove user warning and propogate error return
2019-11-06 23:13:20 +00:00
Vincent Sanders
cbb0c05258
remove unecessary user warning calls and improve error propogation in html box
2019-11-05 23:05:42 +00:00
Vincent Sanders
4372104e0e
fix utils configuration header ordering
2019-10-11 17:39:33 +01:00
Vincent Sanders
972e13ca3f
remove unused external declaration and unecessary header use
2019-10-06 18:02:17 +01:00
Vincent Sanders
12cca32059
fix core find in page behaviour when case sensitivity is toggled
2019-09-21 10:53:41 +01:00
Vincent Sanders
d94afaa0e1
make the gtk_search structure private to teh gtk search object
2019-09-21 10:53:41 +01:00
Daniel Silverstone
524965b867
Box Conversion: Cancel conversion during html_destroy
...
If dom_to_box is still in progress when we destroy an HTML
content, we need to cancel the conversion otherwise we will
end up with a scheduled callback into infinity.
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-08-23 21:58:07 +01:00
Daniel Silverstone
df496cc8bc
Window: set{Timeout,Interval}() default delay 10ms
...
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-08-21 21:46:52 +01:00
Michael Drake
5e45c4498c
HTML: Don't allow objects to redraw until we have a layout.
2019-08-06 09:42:37 +01:00
Daniel Silverstone
f3ac1fad69
nssprite: content_broadcast_error fix
...
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-08-05 21:33:46 +01:00
Daniel Silverstone
9318ee5d6a
html_begin_conversion: If we pause in completing parse, try again later.
...
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-08-05 21:29:18 +01:00
Michael Drake
be23d522db
HTML: Box coordinates: Take fast route to float container.
...
And assert that floats have a float_container.
2019-08-05 21:15:28 +01:00
Daniel Silverstone
170dc5d524
Excise the llcache query pathway.
...
In further preparation for the auth and cert queries being handled
as special contents from `about:` this excises the query pathway
from the llcache pretty much entirely.
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-08-05 20:56:07 +01:00
Daniel Silverstone
2be3ebd918
content: Rename content_broadcast_errorcode()
...
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-08-05 15:25:15 +01:00
Daniel Silverstone
6ba199c7d7
Content messages: Remove ERRORCODE, rework ERROR
...
This reworks CONTENT_MSG_ERROR to be structured data and
removes the CONTENT_MSG_ERRORCODE message kind.
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-08-05 14:30:30 +01:00
Vincent Sanders
2171f13ab3
enable gnu extensions to get strcasestr from string.h
2019-08-05 10:01:13 +01:00
Daniel Silverstone
b15b204f49
form: Fix situation where a gadget initialises with NULL value
...
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-08-04 22:12:10 +01:00
Daniel Silverstone
05c6ee02d9
html: Mirror gadget values in and out of the DOM
...
Currently only supporting text input, password input, and hidden
input, along with text areas, this mirrors the text values in
and out of the DOM, allowing JS to adjust the gadget values and
for the gadget values to be interrogated from JS.
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-08-04 22:07:42 +01:00
Vincent Sanders
3be2b98cc2
change browser_window_drop_file_at_point() to take unscaled coordinates
2019-08-04 14:24:33 +01:00
Vincent Sanders
f21c41a2e5
change browser_window_redraw to use unscaled coordinates
2019-08-04 11:25:35 +01:00
Daniel Silverstone
1905200154
Add content handlers for queries
...
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-08-04 11:22:40 +01:00
Michael Drake
90fe920e07
Duktape element binding: Check dom_string_create for error.
2019-08-04 11:11:35 +01:00
Michael Drake
a0fbf56a1d
CSS hints: Change css_hint_advance to advance pointer by parameter.
2019-08-04 11:10:26 +01:00
Vincent Sanders
357e8a8ad2
remove unnecessary browser_window_redraw_rect interface
2019-08-03 21:58:21 +01:00
Vincent Sanders
d4c01894c2
change browser_window_get_features to use unscaled coordinates
2019-08-03 14:29:06 +01:00
Vincent Sanders
0ebfff259f
change browser_window_mouse_track to use unscaled coordinates
2019-08-03 14:29:05 +01:00
Vincent Sanders
0a8ed41a1a
change browser_window_mouse_click to use unscaled coordinates
...
this means frontends no longer need to scale mouse click events thus
simplifying their implementation.
2019-08-03 14:29:05 +01:00
Daniel Silverstone
182c4ddefe
box_construct: Check error return from dom_has_attribute
...
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-08-03 14:27:44 +01:00
Daniel Silverstone
1150cf684d
dukky: Remove unused dukky_safe_get()
...
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-08-02 15:08:46 +01:00
Daniel Silverstone
09cce349da
dukky: Clean up our stacktrace reporting
...
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-08-02 14:55:34 +01:00
Daniel Silverstone
0eb5aa68fb
Duktape: Hopefully silence issue with %lld
...
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-08-02 14:19:13 +01:00
Michael Drake
15a3c21232
Duktape: Make declaration match definition for memcmp and double_div.
2019-08-02 14:19:13 +01:00
Michael Drake
ee338c9b24
Duktape: Make declaration match definition for duk_refzero_check_fast()
2019-08-02 14:19:13 +01:00
Michael Drake
1c2a0021b3
Duktape: Make declarations match definitions for fastint-enabled functions.
2019-08-02 14:19:13 +01:00
Michael Drake
80116bfe9f
Duktape: Make declarations match definitions for duk_raw_read_xxx_be
2019-08-02 14:19:13 +01:00
Michael Drake
22a348fa31
Duktape: Make declarations match definitions for inline functions.
2019-08-02 14:19:13 +01:00
Michael Drake
f320725307
Duktape: Prevent clang static analysis.
2019-08-02 14:19:13 +01:00
Michael Drake
b4bbca89cd
Duktape: Update to 2.4.0 release.
2019-08-02 14:19:13 +01:00
Daniel Silverstone
095a0639d3
Document.bnd: Fix cookies getter and implement setter
...
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-08-02 12:23:45 +01:00
Daniel Silverstone
9742a8317f
Dukky: Add and utilise a jserrors category
...
Normal, and verbose logging will now also log all JS errors in order that we
stand a chance of debugging things more easily when testing.
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-08-02 10:12:45 +01:00
Daniel Silverstone
609ee9b71c
Window: Provide a little more info on why not EXPOSE()ing some stuff
...
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-08-02 09:27:06 +01:00
Daniel Silverstone
ce7e6d91f5
Window: Restructure EXPOSE()d globals
...
By reference to the MDN and to Duktape's CLI, expose everything
we possibly can on the global object (Window).
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-08-02 09:17:12 +01:00
Daniel Silverstone
e85e2f7cdf
dukky.c: Correct typo (BUTTOM -> BUTTON)
...
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-08-01 21:57:36 +01:00
Daniel Silverstone
f365e75407
Dukky: Support console logging better
...
Add a polyfill for Array.from(), and fix the console formatter so that
it won't keep exploding. This should improve matters in the tests.
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-08-01 21:40:54 +01:00
Daniel Silverstone
bb3e0e51f1
dukky: Attempt to make the fallback to HTMLUnknownElement more useful.
...
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-08-01 21:03:07 +01:00
Daniel Silverstone
acee5faa3f
html_interaction.c: Default node to <HTML> node
...
In order to cope when an entire document is `visibility: hidden`
we default to the <HTML> node when interacting with the document
to ensure we don't drop off the end of the box model without
identifying at least one node to fire events at.
This resolves #2658
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-08-01 13:56:42 +01:00
Daniel Silverstone
a325d6b474
Console.bnd: Support attempts to log when Window has gone
...
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-08-01 09:22:09 +01:00
Michael Drake
4b6967fee4
Layout: Apply min/max width to replaced elements when width is given.
2019-07-30 21:55:29 +01:00
Vincent Sanders
730d59776a
cleanup some javascript documentation comments
2019-07-12 13:40:26 +01:00
Vincent Sanders
90530c419e
when owning context is destroyed ensure that active js compartment is destroyed first
2019-07-12 13:37:04 +01:00
Vincent Sanders
c2fa6af0ff
make content close check the content status itself
...
make content handler open and close return error status
2019-07-10 16:42:52 +01:00
Vincent Sanders
1ae0ee21ee
add isFinite to global context
2019-07-01 23:26:11 +01:00
Daniel Silverstone
43f8e77df7
css/utils.c: Fix vw/vh handling in len2pt
...
We were using integer multiplication rather than fixed-point
multiplication when calculating point sizes relative to the viewport.
This fixes that.
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-06-30 11:27:58 +01:00
Michael Drake
1c3ce67c62
HTML: Viewport width/height in length context are fixed point.
2019-06-29 21:59:15 +01:00
Vincent Sanders
dc9762fef3
revert 8265b8b66f
as ssize_t is not available everywhere
2019-06-25 08:49:29 +01:00
Daniel Silverstone
8265b8b66f
Duktape: Probably should use ssize_t
...
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-06-15 21:34:47 +01:00
Daniel Silverstone
84b8e7dfa1
Duktape: Hopefully silence issue with %lld
...
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-06-15 21:33:59 +01:00
Daniel Silverstone
e82107a296
Window.bnd: Suppress some unnecessary stack frame dumps
...
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-06-09 15:59:05 +01:00
Daniel Silverstone
c5c8a49276
Window.bnd: Expose isNan
...
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-06-09 15:20:01 +01:00
Daniel Silverstone
04cf2fe588
Window.bnd: Do not remove in-train callbacks
...
Sometimes callbacks may be cancelled from within themselves. In
that case we need to simply ensure that should the callback be
wanted to repeat, we instead stop that so that once the callback
is completed we do not attempt to reschedule something which had
already been deleted.
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-06-09 11:04:15 +01:00
Vincent Sanders
dddc5eac94
Update schedulers return codes
...
The GTK and monkey frontends schedulers now return NSERROR_NOT_FOUND
when a caller is using a negative schedule time to remove a callback.
2019-06-08 13:33:16 +01:00
Daniel Silverstone
64ee8e1b00
html.c: Correct ordering for reformat time
...
Fix a minor bug where we'd likely never end up reformatting.
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-06-05 22:59:49 +01:00
Daniel Silverstone
c07b2edd77
Document.bnd: createDocumentFragment() unref fragment
...
The pushed fragment node holds the reference, so unref it in
the end of createDocumentFragment()
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-06-01 13:59:36 +01:00
Daniel Silverstone
9c32564085
html_script.c: html_script_exec() reqacquire script ptr
...
Since executing a script can cause more scripts to be appended
to the script array, and that can cause a reallocation which might
move the script array, reacquire the script pointer after running
the script so that we don't wander off into the reeds.
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-06-01 13:25:14 +01:00
Vincent Sanders
a6de56583c
Improve javascript unimplemented bnding documentation generation
2019-05-31 19:40:10 +01:00
Daniel Silverstone
57094c84ed
Expose NaN on Window
...
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-05-25 20:11:52 +01:00
Daniel Silverstone
196c2fc845
Add dodgy window method to clear callbacks
...
Until we can determine *how* the compartment isn't cleaning
up properly in the duktape context, this will at least mean
we don't get unpleasant callback related issues when compartments
are reset during browsing.
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-05-25 16:23:37 +01:00
Daniel Silverstone
87be4e7a17
Log when we finalise window objects
...
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-05-25 16:13:57 +01:00
Daniel Silverstone
c42039c546
Use generics for makeListProxy properly
...
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-05-25 16:13:57 +01:00
Daniel Silverstone
9ee92823e2
Use generics for makeListProxy properly
...
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-05-25 16:13:57 +01:00
Daniel Silverstone
78385629c3
Remove unnecessary generics magic
...
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-05-25 16:13:57 +01:00
Michael Drake
b330fd9f0e
HTML: Update selection media data for new libcss API.
2019-05-07 14:01:51 +01:00
Michael Drake
31655be43b
CSS: One inch is 96 css pixels.
2019-05-07 09:53:31 +01:00
Michael Drake
51feeadcf9
HTML: Set up the CSS length measuring context in CSS pixels.
2019-05-06 21:30:05 +01:00
Michael Drake
041e9426c1
CSS: Use helper to convert form css to physical pixels.
2019-05-06 21:25:54 +01:00
Michael Drake
ffc199d778
CSS: Add helpers to convert between css and physical pixels.
2019-05-06 21:22:55 +01:00
Michael Drake
7567f64075
CSS: Extern the nscss_baseline_pixel_density value.
...
Front ends should be able to set this, or it should
be a config option.
2019-05-06 21:21:44 +01:00
Michael Drake
e02020198d
Convert css_len2pt and css_len2px for CSS pixels.
2019-05-06 20:49:48 +01:00
Michael Drake
a43b83de03
HTML: Squash error-path leaks in select box construction.
2019-05-06 17:29:53 +01:00
Michael Drake
0db71994ea
HTML: Before building the box tree, get viewport dimensions.
2019-05-06 15:38:33 +01:00
Michael Drake
0f3b279167
HTML content handler: Handle content msg for getdims.
2019-05-06 15:38:33 +01:00
Daniel Silverstone
d77ed689e6
Quieten dukky a little more in default log levels
...
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-05-06 15:36:49 +01:00
Daniel Silverstone
52ef77ceef
Do not prevent reattempting conversion of HTML contents
...
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-05-06 15:10:01 +01:00
Daniel Silverstone
654e1ee12a
Use new safe context dump
...
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-05-06 15:09:47 +01:00
Daniel Silverstone
378383ea3b
Support context dump safely in duktape
...
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-05-06 15:09:39 +01:00