* 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
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
Actually process form inputs which have been styled display:none;
This needs revisiting after 1.0 as the following will still break:
<form ..>
<div style="display:none;">
<input type="hidden" name="foo" value="bar"/>
</div>
<input type="submit" name="submit" value="submit"/>
</form>
The children of the div are not processed (which is correct for display
purposes, but results in the hidden input being ignored entirely). A
more correct fix would be to perform form input -> gadget creation
orthogonally from box tree generation; then styling will have no effect.
svn path=/trunk/netsurf/; revision=3236
More work towards frame targets: add target parameter to box_create(), and copy target down the box tree during construction.
svn path=/import/netsurf/; revision=1853
Work towards implementing link target frames: add target attribute to struct box, add frame to struct content_html_object and html_fetch_object().
svn path=/import/netsurf/; revision=1849
Move acceptable character set determination to form submission time, rather thanat box tree creation time.
Use UTF-8 encoding, if specified, else use first specified encoding.
Improve use of utf8_to_enc - falling back to document encoding then 8859-1 where appropriate.
svn path=/import/netsurf/; revision=1765
More work on borders / padding / margins on inline elements. Add BOX_INLINE_END to hold the right border / padding / margin (left is in the BOX_INLINE).
svn path=/import/netsurf/; revision=1742
Fix text-decoration and borders on inline elements by replacing inline_parent in box structure with end_inline_children.
svn path=/import/netsurf/; revision=1741
Add BOX_TEXT type to distinguish boxes which came from an inline element to boxes which came from a text node. Add inline_parent pointer to box structure. Rewrite text-decoration support to take advantage of the new data (line colours are now correct). Note: there is a clipping issue in redraw.
svn path=/import/netsurf/; revision=1732
Improve selector specificity support by adding "working stylesheets" with pre-sorted lists of rules. This also simplifies css_get_style(). The stylesheet origin is now encoded in the specificity. Improve output of css_dump_style().
svn path=/import/netsurf/; revision=1729
HTML border attributes have lower priority that CSS values (fix osnews). Disable tr height minimum value usage for now.
svn path=/import/netsurf/; revision=1694
Split out UTF-8 handling functions.
Submit URL-encoded forms in sensible encoding:
* First entry in accept-charset list, if present
* Document encoding, otherwise
We may want to explicitly look for UTF-8, to save converting.
Convert cnv_str_local_enc/cnv_local_enc_str to use iconv (they're now veneers for utf8_[to/from]_enc).
Provide mechanism for looking up local system charset (derived from system alphabet, under RISC OS)
svn path=/import/netsurf/; revision=1647
Add fallback field to struct box for object fallback content. Add some checks for tree consistency to box_dump(). Rename struct plugin_params to object_param. Clean up box_object(), box_embed(), box_iframe(), and box_image(). Implement object fallback to contents if the fetch or conversion fails.
svn path=/import/netsurf/; revision=1627
Move HTML contents almost fully over to talloc(), simplifying code. Improvements to title attributes, broken forms, cellpadding. Reorder functions in box_construct.c.
svn path=/import/netsurf/; revision=1608