summaryrefslogtreecommitdiff
path: root/render/box_construct.c
Commit message (Collapse)AuthorAgeFilesLines
* 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
* More work on lists. Simplify the implementation to a BLOCK for display: ↵James Bursa2006-11-051-58/+31
| | | | | | list-item, with a marker box on box->list_marker. svn path=/trunk/netsurf/; revision=3031
* Initial work for display: list-item supportJohn Mark Bell2006-11-041-1/+58
| | | | svn path=/trunk/netsurf/; revision=3028
* Implement absolute positioned inlines.James Bursa2006-11-041-0/+13
| | | | svn path=/trunk/netsurf/; revision=3026
* Remove code to determine containing block; no longer used.James Bursa2006-10-221-24/+3
| | | | svn path=/trunk/netsurf/; revision=3015
* Modify implementation of absolute positioning to support "static positions". ↵James Bursa2006-10-081-13/+0
| | | | | | Absolutely positioned boxes are now in their original place in the tree instead of linked from absolute_children. svn path=/trunk/netsurf/; revision=2984
* Squash warnings.John Mark Bell2006-09-111-26/+41
| | | | svn path=/trunk/netsurf/; revision=2953
* Fixed translation of html entities when a textarea has an initial valueJeffrey Lee2006-09-111-2/+19
| | | | svn path=/trunk/netsurf/; revision=2952
* textarea html tag fix; horizontal scrollbars; auto-scroll improvementsJeffrey Lee2006-09-101-6/+22
| | | | svn path=/trunk/netsurf/; revision=2940
* Fix 1546941.Richard Wilson2006-09-021-6/+10
| | | | svn path=/trunk/netsurf/; revision=2909
* Experimental new frames code.Richard Wilson2006-09-021-218/+312
| | | | svn path=/trunk/netsurf/; revision=2906
* Stop rendering of iframe children; they're for non-iframe supporting UAs John Mark Bell2006-08-241-0/+3
| | | | | | (which isn't us) svn path=/trunk/netsurf/; revision=2893
* Ignore junk values (fix 1444336)Richard Wilson2006-07-051-9/+9
| | | | svn path=/trunk/netsurf/; revision=2715
* Fix submission of forms in embedded objects; resolve submission URL at John Mark Bell2006-07-031-7/+17
| | | | | | form creation time rather than at submit. svn path=/trunk/netsurf/; revision=2707
* Implement absolute positioning.James Bursa2006-06-261-8/+38
| | | | svn path=/trunk/netsurf/; revision=2648
* [project @ 2006-04-04 10:56:21 by dsilvers]Daniel Silverstone2006-04-041-8/+28
| | | | | | New way to do the <pre> newline stripping to cope with tags in the <pre> svn path=/import/netsurf/; revision=2486
* [project @ 2006-03-27 01:04:56 by jmb]John Mark Bell2006-03-271-0/+15
| | | | | | Reinstate checks for embedded content being the same as its parent (fixes 1456335) svn path=/import/netsurf/; revision=2196
* [project @ 2006-03-26 23:52:22 by dsilvers]Daniel Silverstone2006-03-261-0/+11
| | | | | | Allow white-space: pre* elements to consume one initial new line to make rendering neater svn path=/import/netsurf/; revision=2191
* [project @ 2006-02-25 18:50:34 by rjw]Richard Wilson2006-02-251-2/+3
| | | | | | Support for BMP files svn path=/import/netsurf/; revision=2095
* [project @ 2006-01-02 23:31:28 by jmb]John Mark Bell2006-01-021-0/+2
| | | | | | Implement font default option properly svn path=/import/netsurf/; revision=1969