summaryrefslogtreecommitdiff
path: root/render/box_construct.c
Commit message (Collapse)AuthorAgeFilesLines
* Merge jmb/new-cache; r=dsilvers,rs=vinceDaniel Silverstone2010-03-281-3/+3
| | | | svn path=/trunk/netsurf/; revision=10180
* Fix quirks mode propagation for @style.John Mark Bell2009-11-151-1/+2
| | | | svn path=/trunk/netsurf/; revision=9675
* Port to modified libcss API.John Mark Bell2009-08-021-4/+4
| | | | svn path=/trunk/netsurf/; revision=8997
* Now that libwapcaplet guarantees NUL-termination of strings, stop copying ↵John Mark Bell2009-07-251-44/+4
| | | | | | them unnecessarily. svn path=/trunk/netsurf/; revision=8785
* Merge LibCSS port to trunk.John Mark Bell2009-07-231-704/+293
| | | | svn path=/trunk/netsurf/; revision=8752
* Fix frame targets.John Mark Bell2009-06-081-2/+3
| | | | svn path=/trunk/netsurf/; revision=7729
* Limit scope of manually-defined NDEBUG. Purge a bunch of redundant #undef ↵John Mark Bell2009-05-281-1/+0
| | | | | | NDEBUG. svn path=/trunk/netsurf/; revision=7593
* Fix numbering of floated list itemsJohn Mark Bell2009-04-291-16/+40
| | | | svn path=/trunk/netsurf/; revision=7361
* Move handling of TR height attribute from box construction to layout and add ↵Michael Drake2009-04-281-49/+4
| | | | | | support for height property on TR. svn path=/trunk/netsurf/; revision=7358
* Hubbub is no longer optional.John Mark Bell2009-04-171-263/+1
| | | | | | Remove libxml2 parser binding. svn path=/trunk/netsurf/; revision=7115
* Fix compilation with GCC 2.95.John Mark Bell2009-04-161-9/+9
| | | | | | It astounds me how some of this lot compiled at all. svn path=/trunk/netsurf/; revision=7104
* Utilise hubbub's form association callback.John Mark Bell2009-02-201-79/+118
| | | | | | | | Please can we dispense with the libxml binding? It's causing much #ifdef mess. Fix encoding of <input type=image> names -- previously were output as raw utf-8, rather than in the submission charset. Actually bother to destroy forms in a document, and the controls associated with them. We still leak non form-associated controls, but that's too much effort to fix right now. svn path=/trunk/netsurf/; revision=6573
* Implement percentage heights for block level elements in normal flow, floats ↵Michael Drake2008-10-121-10/+16
| | | | | | and positioned boxes. Percentage min/max-height not yet handled. svn path=/trunk/netsurf/; revision=5550
* Load SVGs in IMG elements.Michael Drake2008-09-301-0/+3
| | | | svn path=/trunk/netsurf/; revision=5463
* A bunch of fixes to the libpng bindingJohn Mark Bell2008-09-151-1/+3
| | | | svn path=/trunk/netsurf/; revision=5338
* Add comments and change height attribute handling on TR to only alter the ↵Michael Drake2008-09-051-4/+6
| | | | | | height if attribute height is greater than current height. svn path=/trunk/netsurf/; revision=5259
* Ignore height/width attributes on elements where they are not permitted.Michael Drake2008-08-211-2/+16
| | | | svn path=/trunk/netsurf/; revision=5162
* C89François Revel2008-08-131-5/+9
| | | | svn path=/trunk/netsurf/; revision=5103
* Ignore blank maxlength attributesJohn Mark Bell2008-08-051-1/+2
| | | | svn path=/trunk/netsurf/; revision=4912
* Squash more warnings.John Mark Bell2008-05-261-3/+3
| | | | svn path=/trunk/netsurf/; revision=4210
* The core code has always assumed a locale of "C".John Mark Bell2008-05-131-5/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Do not change the locale globally, else things will break in weird and wonderful ways. Introduce utils/locale.[ch], which provide locale-specific wrappers for various functions (currently just the <ctype.h> ones). Fix up the few places I can see that actually require that the underlying locale is paid attention to. Some notes: 1) The GTK frontend code has not been touched. It is possible that reading of numeric values (e.g. from the preferences dialogue) may break with this change, particularly in locales that use something other than '.' as their decimal separator. 2) The search code is left unchanged (i.e. assuming a locale of "C"). This may break case insensitive matching of non-ASCII characters. I doubt that ever actually worked, anyway. In future, it should use Unicode case conversion to achieve the same effect. 3) The text input handling in the core makes use of isspace() to detect word boundaries. This is fine for western languages (even in the C locale, which it's currently assuming). It will, however, break for CJK et. al. (this has always been the case, rather than being a new issue) 4) text-transform uses locale-specific variants of to{lower,upper}. In future this should probably be performing Unicode case conversion. This is the only part of the core code that makes use of locale information. In future, if you require locale-specific behaviour, do the following: setlocale(LC_<whatever>, ""); <your operation(s) here> setlocale(LC_<whatever>, "C"); The first setlocale will change the current locale to the native environment. The second setlocale will reset the current locale to "C". Any value other than "" or "C" is probably a bug, unless there's a really good reason for it. In the long term, it is expected that all locale-dependent code will reside in platform frontends -- the core being wholly locale agnostic (though assuming "C" for things like decimal separators). svn path=/trunk/netsurf/; revision=4153
* Only record that the HTML alignment was set by a table element if it is ↵Michael Drake2008-03-291-6/+7
| | | | | | actually set. svn path=/trunk/netsurf/; revision=4058
* Implement sprite support for GTK using librospriteJames Shaw2008-03-291-1/+1
| | | | svn path=/trunk/netsurf/; revision=4051
* Squash "implicit declaration of function 'gui_multitask'" warnings.John Mark Bell2008-03-191-2/+0
| | | | svn path=/trunk/netsurf/; revision=3980
* Centered tables are a special case.Michael Drake2008-03-051-1/+15
| | | | svn path=/trunk/netsurf/; revision=3880
* Fix align attributes on TABLE etc being overridden in the table's cells by ↵Michael Drake2008-02-281-4/+15
| | | | | | the default alignment of cells with no align attribute. svn path=/trunk/netsurf/; revision=3873
* Don't meddle with blockquote's margins.Michael Drake2008-02-261-2/+3
| | | | svn path=/trunk/netsurf/; revision=3869
* SignednessWarnings.squash()John Mark Bell2008-02-251-38/+39
| | | | | | Aside from a number of instances of const being cast away (mostly relating to the urldb, which is correct to only export const data) this now builds warning-free with GCC 4 on x86, which is nice. svn path=/trunk/netsurf/; revision=3868
* Improve handling of HTML attributes / markup:Michael Drake2008-02-251-212/+388
| | | | | | | | | | | | | | | | | | | | | * 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
* Also flag box as invisible so it'll have no effect on layoutJohn Mark Bell2008-02-251-0/+1
| | | | svn path=/trunk/netsurf/; revision=3864
* Ignore spurious top-level framesets correctly (previously declared memory ↵John Mark Bell2008-02-251-1/+5
| | | | | | exhaustion, which is obviously wrong) svn path=/trunk/netsurf/; revision=3863
* Prevent tabbing into textfields whose styling is display: none;John Mark Bell2008-02-071-0/+10
| | | | svn path=/trunk/netsurf/; revision=3849
* Fix parsing of invalid colour values becoming CSS_COLOR_NONE. Make all ↵Richard Wilson2007-10-091-38/+26
| | | | | | colour parsing code common. svn path=/trunk/netsurf/; revision=3625
* Make F9 dump box tree to an editor for easier debugging.James Bursa2007-08-201-1/+1
| | | | svn path=/trunk/netsurf/; revision=3529
* Update all source code file headers to reflect GPL version 2 only and ↵Vincent Sanders2007-08-081-3/+14
| | | | | | contain appropriate licence text svn path=/trunk/netsurf/; revision=3486
* Remove the netsurf/ from the include paths and rationalise use of <> vs "" ↵Daniel Silverstone2007-05-301-16/+16
| | | | | | | | | | | | | | in includes 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
* Import font containing symbols we need for list items.John Mark Bell2007-05-141-4/+4
| | | | | | | (Un)Install font appropriately at runtime. Make list markers use the right characters. svn path=/trunk/netsurf/; revision=3280
* Fix embedded object + display: none; crash (1695751) (c.f r3236)John Mark Bell2007-04-061-17/+32
| | | | svn path=/trunk/netsurf/; revision=3239
* Squash access to freed memory.John Mark Bell2007-04-061-5/+5
| | | | | | | | | | | | | | | | | 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
* Recognise <image> as a synonym for <img> (fixes 1692426)John Mark Bell2007-04-011-0/+2
| | | | svn path=/trunk/netsurf/; revision=3231
* Make <object> attribute handling more spec compliantJohn Mark Bell2007-03-221-10/+31
| | | | svn path=/trunk/netsurf/; revision=3215
* Default form field maxlength to UINT_MAX (fixes 1620540)John Mark Bell2007-03-111-1/+0
| | | | svn path=/trunk/netsurf/; revision=3205
* Fix handling of % signs in textarea initial value. (Fixes 1617123)John Mark Bell2007-02-111-1/+1
| | | | svn path=/trunk/netsurf/; revision=3180
* Make GTK build compile on FreeBSD.James Bursa2007-01-291-0/+1
| | | | svn path=/trunk/netsurf/; revision=3154
* Default frame margin 0 instead of -1. Fix marginheight parsing.James Bursa2007-01-241-9/+9
| | | | svn path=/trunk/netsurf/; revision=3147
* Don't require frames to specify a URL (fixes frame names not being recognised)Richard Wilson2007-01-031-22/+13
| | | | svn path=/trunk/netsurf/; revision=3135
* Reflow iframes on layout (fix 1617625)Richard Wilson2006-12-301-2/+6
| | | | svn path=/trunk/netsurf/; revision=3126
* Remove wrong kind of free for data allocated using talloc.James Bursa2006-12-081-1/+0
| | | | svn path=/trunk/netsurf/; revision=3113
* Update project URL.Michael Drake2006-11-271-1/+1
| | | | svn path=/trunk/netsurf/; revision=3073
* Implement list-style-type circle, square, none, and decimal.James Bursa2006-11-051-2/+36
| | | | svn path=/trunk/netsurf/; revision=3034