The about dialog box construction was awkward and brittle using
several depricated interfaces. This changes it to use a more generic
dialog creation and uses the response API to simplify click
processing.
It would be even better to use the gtk about dialog but that is a more
invasive change.
Changes the way message files are generated to be driven by make as
rules rather than from explicit macro calls causing their regeneration
every build.
A secondary benefit is that errors in message generation actually stop
the build instead of being ignored
Each frontend will require its filter settings updated to avoid
getting the default message filter of "any". Initially gtk has been
adapted as proof of concept.
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.
The size hints given were insufficient for gtk to open the window at a
sensible size or position. This fixes it to open with a default
640x480 size which is a reasonable compromise.
The gtk3 ui builder file was completely reconstructed from fresh as it
was broken and was not working.
The XDG spec allows for software to specify how it is executed and
presented in a graphical environment by using a desktop file
http://standards.freedesktop.org/desktop-entry-spec/latest/
This version is taken from my Debian packaging but should be useful
for other operating systems.
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.