The RISC OS bitmap header was including several headers it simply did
not require. This removed those includes and also cleans up the
documentation comments to completely cover the exported interface.
The target url was previously being passed as a string derived from
nsurl_access which was asserting if the target_url was NULL. The nsurl
is now passed and a null check performed before attempting to access
it.
Closes#2298
Currently, when asked for clipboard data, Netsurf unconditionally closes the
menu tree of the requesting application. This occurs in the routine
ro_gui_send_datasave. There is no reason to close the menu tree: this function
is called in only one place, amd the code path is through Wimp user messages--
the highest priority type of message, so other interactions cannot interfere.
The fix removes the line which closes the menu tree in this particular function.
RISC OS apps take their creation date from the !RunImage apparently
and loose the data if the application directory gets copied without
one. Fixes#1970
The content thumbnailers for each frontend were being provided the
contents url. This was only ever used to call the urldb thumbnail
setting API.
This changes it so the single callsite that passed a valid url adds
the bitmap to that url itself in desktop_history.c instead of forcing
every frontend to require the urldb API.
Additionally the old API could pass the url as NULL which was causing
asserts where this was not an expected parameter value. Because of
this this fixes bug #2286 which was also present in the monkey
frontend as both called nsurl_access() on the url without the NULL
check and caused an assertion.
When the form entry changes were made the RISC OS implementation was
updated but the loop that counts entries was using an incorrect loop
iterator variable which was never incremented hence causing an
infinite loop.
By hiding all but the form selection menu option structure from code
outside of render this reduces the API to the absolute minimum to
support this feature.
Previously content handler debugging features were accessed by global
variables. This allows the setting of debugging parameters via a
content API giving per content control over debugging features.
Currently only used by the html content handler to toggle global
redraw debugging.
The frontends previously had to use an html renderer API to get the
encoding of a content. This also required the explicit checking of the
contents type rather than using the existing content API to abstract
this knowledge.
This cleans up this header and moves the functionality into more
useful places while reducing the include complexity but only pulling
in whats required.
Update the API which allows frontends to acquire the page features
(images, link urls or form elements) present at the given coordinates
within a browser window.
By making this an explicit browser_window API and using the browser.h
header for the associated data structure with a more appropriate API
naming the usage is much more obvious and contained.
Additionally the link url is now passed around as a nsurl stopping it
being converted from nsurl to text and back again several times.
When updating the RISC OS frontend to using nsurl for its menu
operations (as part of getting rid of url_nice) the check for
null (empty) url strings in the url under the mouse was omitted
leading to a crash.
Additionaly a use of url where current_menu_url was intended was
missed leading to crashes when "open in new window" was used.