Remaining work:
1) Clone content_html_data
2) Cloning content_css_data requires the charset of the old content
3) Calling hlcache_handle_abort() before a content has been created must clean up the retrieval context.
svn path=/trunk/netsurf/; revision=10236
It is now defined as converting the content into a state in which it is ready for use.
The user of the content is now responsible for performing an initial reformat (sic) of the content before it can be redrawn.
Purge width/height parameters from hlcache_handle_retrieve/content_convert/*_convert APIs.
Fix up content handlers affected by the above change in semantics.
Ensure that browser_window_callback performs an initial reformat of its content.
svn path=/trunk/netsurf/; revision=10207
Remove imported contents once we've fetched them and imported them into their parent (once this has happened, the content object is just an empty shell, so not worth keeping around).
svn path=/trunk/netsurf/; revision=8831
Modify test driver to take stylesheet filename on the command line.
Makefile to build a library from the css parser sources and link the test driver against it.
svn path=/trunk/netsurf/; revision=5812
Require units when parsing css lengths.
Correctly ignore background: meta-properties which have multiple instances of sub-properties (e.g. foo { background: red pink; })
svn path=/trunk/netsurf/; revision=3893
* Only apply presentational HTML attributes if no more
important CSS has been set for the property. (NetSurf used
to be a bit hit-and-miss when presentational markup and
CSS were mixed.)
* Change table cellpadding and border handling to happen as
soon the boxes styles are available, rather than after the
whole table has been constructed. Also fix default table
border colour.
* Improve handling of CENTER tag and ALIGN attribute. These
could not be correctly supported in the default CSS file,
so block level element alignment is now done during box
construction. (Fixes#1891379, #1824492, #1723853)
Form improvements:
* Small MAXLENGTH values on text inputs now reduce element
width. (Fixes#1894854)
* Prevent select option text from wrapping.
svn path=/trunk/netsurf/; revision=3866
Redirect handling is now transparent to clients of fetchcache.
The new scheme works as follows:
1) Request content for URL (fetchcache()
2) Start fetch of content (fetchcache_go()
3) If no redirect, continue through LOADING, READY, DONE etc. states as before
If redirect, receive NEWPTR for each redirect that occurs, then continue
through LOADING, READY, DONE etc. states as before.
The upshot of this is that redirects result in extra contents being created. It also means that, until LOADING has been received, the content (and thus the URL being fetched) may change. Therefore, fetchcache clients should expect to have to deal with transient data prior to LOADING occurring.
As a necessary side-effect of this, the HTML object URLs and CSS @import URLs are no longer stored alongside the relevant contents. These URLs can be accessed by interrogating the url member of struct content anyway, so it was a rather redundant scheme before.
svn path=/trunk/netsurf/; revision=3787
NetSurf includes are now done with ""s and other system includes with <>s as C intended.
The scandeps tool has been updated to only look for ""ed includes, and to verify that the
files exist in the tree before adding them to the dependency lines. The depend rule has
therefore been augmented to make sure the autogenerated files are built before it is run.
This is untested under self-hosted RISC OS builds. All else tested and works.
svn path=/trunk/netsurf/; revision=3307
Make css_destroy check that the stylesheet pointer exists (content
destructors may be called whilst the content is still loading - e.g. if
the content type isn't permissable in the context it was loaded from).
Fixes 1627413, 1580980.
svn path=/trunk/netsurf/; revision=3212