summaryrefslogtreecommitdiff
path: root/content/handlers/html
Commit message (Collapse)AuthorAgeFilesLines
* Implement javascript scheme url script https://wiki.whatwg.org/wiki/URL_schemesVincent Sanders2020-04-173-4/+46
|
* refactor html mouse actionVincent Sanders2020-04-131-482/+738
| | | | | | | | | | | | | | | | | 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.
* 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>
* 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>
* JS: Split concept of JS context into heap and threadDaniel Silverstone2020-03-214-27/+28
| | | | | | | | | 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>
* 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>
* 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.
* 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
|
* 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-121-4/+5
|
* 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
|
* Content: Remove redundant and unused redraw message fields.Michael Drake2019-11-111-31/+16
| | | | | | | | | | 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
|
* remove user warning and log error insteadVincent Sanders2019-11-071-2/+3
|
* fix keypress entry on text areaVincent Sanders2019-11-071-22/+29
| | | | accidentaly broken in commit fca421e2047a55f3cf575c92943c1116ec58da3c
* remove user warning and fix up error handling in form select menusVincent Sanders2019-11-073-28/+36
|
* remove unecessary user warningVincent Sanders2019-11-062-3/+1
|
* remove user warning and propogate error returnVincent Sanders2019-11-063-37/+37
|
* remove unecessary user warning calls and improve error propogation in html boxVincent Sanders2019-11-053-46/+63
|
* fix utils configuration header orderingVincent Sanders2019-10-111-1/+1
|
* fix core find in page behaviour when case sensitivity is toggledVincent Sanders2019-09-213-61/+68
|
* make the gtk_search structure private to teh gtk search objectVincent Sanders2019-09-211-2/+2
|
* Box Conversion: Cancel conversion during html_destroyDaniel Silverstone2019-08-234-3/+38
| | | | | | | | 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>
* HTML: Don't allow objects to redraw until we have a layout.Michael Drake2019-08-063-0/+12
|
* html_begin_conversion: If we pause in completing parse, try again later.Daniel Silverstone2019-08-051-0/+7
| | | | Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
* HTML: Box coordinates: Take fast route to float container.Michael Drake2019-08-051-4/+4
| | | | And assert that floats have a float_container.
* Excise the llcache query pathway.Daniel Silverstone2019-08-053-50/+0
| | | | | | | | 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>
* content: Rename content_broadcast_errorcode()Daniel Silverstone2019-08-053-31/+36
| | | | Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
* Content messages: Remove ERRORCODE, rework ERRORDaniel Silverstone2019-08-053-18/+6
| | | | | | | 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>