summaryrefslogtreecommitdiff
path: root/content/handlers
Commit message (Collapse)AuthorAgeFilesLines
* html: Also close js thread on html_stop()Daniel Silverstone2020-03-291-0/+4
| | | | Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
* HTML: Use new js_closethread()Daniel Silverstone2020-03-221-1/+7
| | | | Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
* Window: Add flag to ensure we don't set timeouts after closeDaniel Silverstone2020-03-221-0/+14
| | | | Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
* JS: Add concept of js_closethreadDaniel Silverstone2020-03-223-4/+42
| | | | | | | 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>
* JS: Move ownership of jsthread from browser to htmlcDaniel Silverstone2020-03-223-27/+8
| | | | | | | | 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>
* Dukky: Make heaps refcounted tooDaniel Silverstone2020-03-221-2/+18
| | | | Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
* Dukky: Add refcounting to threadsDaniel Silverstone2020-03-211-5/+59
| | | | | | | | | 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>
* Dukky: Upgrade dukky binding to support new heap/thread splitDaniel Silverstone2020-03-213-95/+121
| | | | | | | | Update the duktape bindings and dukky interface to support the new JS heap/thread split. Heaps may have multiple active threads though in general there will only be 2 at a time. Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
* JS: Add concept of thread destroyDaniel Silverstone2020-03-212-0/+18
| | | | Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
* JS: Split concept of JS context into heap and threadDaniel Silverstone2020-03-216-53/+83
| | | | | | | | | In preparation for proper splitting of Javascript support into heaps and threads, this renames the types and corrects the no-js builds to still work. At this time no substantive change in semantics exists, and the duktape build won't work. Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
* JS: Remove unused slow script callbackDaniel Silverstone2020-03-213-8/+3
| | | | Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
* HTML Script: Check for success on intern of mimetype.Michael Drake2020-02-231-1/+5
|
* HTML: Ignore dom exceptions we don't care aboutDaniel Silverstone2020-02-231-4/+4
| | | | Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
* Node: nodeValue setter should return value set into nodeDaniel Silverstone2020-02-231-1/+2
| | | | Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
* dukky: Guard pointless work for deep debugDaniel Silverstone2020-02-231-2/+2
| | | | Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
* JS: it's Infinity not infinityDaniel Silverstone2020-02-211-1/+1
| | | | Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
* JS: Add Element::attributes and NamedNodeMap to handle itDaniel Silverstone2020-02-213-0/+103
| | | | | | | This is a *very* rudimentary implementation lacking most of the functionality of NamedNodeMap but it's enough to get jQuery 1.12.4 up. Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
* JS Generics: Add a NodeMap proxy builderDaniel Silverstone2020-02-211-0/+23
| | | | Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
* Element: support innerHTMLDaniel Silverstone2020-02-211-0/+123
| | | | | | | | To get us further along the JavaScript pathway, support the getter and setter for innerHTML. The getter always returns an empty string for now, but the setter works. Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
* JS: Add DOMImplementation::createHTMLDocumentDaniel Silverstone2020-02-213-0/+142
| | | | | | This was the last major thing blocking basic jQuery support Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
* HTML: Ignore LOADING status in html_proceed_to_done()Daniel Silverstone2020-02-211-1/+3
| | | | Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
* HTML: Don't transition the content state machine if we do nothingDaniel Silverstone2020-02-211-1/+7
| | | | Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
* HTML: Complete content state machine after async scriptDaniel Silverstone2020-02-213-5/+29
| | | | | | | | | The async script completion process needs to complete the content state machine so that browser throbbers eventually stop once async scripts have fetched and run, even if that happens *after* conversion finishes. Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
* re-order config include so strcasecmp is correctly detected on RISC OS/win32Vincent Sanders2019-12-221-1/+2
|
* html_script: Count sync scripts to prevent unpausing earlyDaniel Silverstone2019-12-191-2/+11
| | | | | | | | | 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>
* HTML: box_consturction: cleanup name dom_string in box_object.Michael Drake2019-12-101-0/+2
|
* HTML redraw: Never draw box scrollbars for textareas.Michael Drake2019-12-091-0/+1
| | | | | | | 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.
* webp: NetSurf bitmap format is RGBA.Michael Drake2019-12-081-1/+3
| | | | | Issue a bitmap modified call after conversion, to allow front ends with different pixel formats to convert.
* html: css fetcher: Fix passing LWC borrow to fetcher_add, which consumes.Michael Drake2019-12-021-1/+2
| | | | | | | | | 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)
* html: Fire DOM KeyboardEvents on keypresses.Michael Drake2019-12-011-0/+36
|
* dukky_push_event: Enable KeyboardEvent specialisation.Michael Drake2019-12-011-1/+31
|
* JavaScript: Add KeyboardEvent bindings.Michael Drake2019-12-012-1/+143
|
* html: Add function for issuing a keypress event.Michael Drake2019-12-012-0/+85
|
* html: Split out helper for firing DOM events and swallowing errors.Michael Drake2019-12-011-4/+23
|
* HTML: Rename fire_dom_event to fire_generic_dom_event.Michael Drake2019-12-013-4/+4
|
* html_saw_insecure_objects: Don't infinite loop on objectsDaniel Silverstone2019-12-011-0/+1
| | | | Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
* html_css_fetcher: Use corestring_lwc_x_ns_cssDaniel Silverstone2019-12-011-8/+2
| | | | Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
* Allow contents to indicate if they believe they may not be secure.Daniel Silverstone2019-12-014-0/+79
| | | | | | | | | | 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>
* box_construct: Do not leak attributes in <embed> boxesDaniel Silverstone2019-11-301-0/+5
| | | | Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
* HTML redraw: Don't render scrollbars when the CSS doesn't permit it.Michael Drake2019-11-301-3/+6
|
* make unknown content drag assert have meanigful messageVincent Sanders2019-11-291-1/+1
|
* change mouse action drag handling to use a more efficient dispatchVincent Sanders2019-11-171-13/+16
|
* move remaining mouse action drag handling into separate functionsVincent Sanders2019-11-171-21/+60
|
* move more select menu handling into mouse_action_select_menu()Vincent Sanders2019-11-171-8/+7
|
* make mouse track and mouse action content handlers return an error codeVincent Sanders2019-11-122-6/+11
|
* Remove redundant drag handling for content selectionVincent Sanders2019-11-121-10/+0
| | | | | | | This redundant code was added by: 4747bbbfb21d645f950149bbe173a2618cd3eba9 HTML drags now go via content msg. and then added again with: c2a718075ad321a9cf4678e72645acda5c3471a9 A load of refactoring of how content selection and input work.
* split out html interaction header elements and rename sourceVincent Sanders2019-11-126-148/+278
|
* gif: Change how we rate-limit frames to match other browsers.Michael Drake2019-11-111-2/+4
| | | | This makes the old minimum_gif_delay option unused.
* Content: Remove redundant and unused redraw message fields.Michael Drake2019-11-112-54/+17
| | | | | | | | | | 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.
* remove unecessary user warningVincent Sanders2019-11-101-8/+7
|