John Mark Bell
c1efc9c275
Unsightly hack around flickering to white in nsgtk. This needs to be sorted out properly as a matter of urgency.
...
svn path=/trunk/netsurf/; revision=4005
2008-03-21 00:14:01 +00:00
Michael Drake
7bc2306612
CSS min-height and max-height properties override fixed heights too.
...
svn path=/trunk/netsurf/; revision=4003
2008-03-20 23:07:55 +00:00
John Mark Bell
969acc3d0c
Re-express table_find_cell algorithm to avoid relying upon side-effects.
...
svn path=/trunk/netsurf/; revision=3986
2008-03-19 17:47:26 +00:00
John Mark Bell
488520f2b2
Lose spurious *
...
svn path=/trunk/netsurf/; revision=3985
2008-03-19 17:41:38 +00:00
John Mark Bell
bdf3c5e56b
Squash "implicit declaration of function 'gui_multitask'" warnings.
...
svn path=/trunk/netsurf/; revision=3980
2008-03-19 16:46:26 +00:00
John Mark Bell
885ce428a9
Ensure that scrollbar foreground is actually visible (black on black, for example, isn't very usable)
...
svn path=/trunk/netsurf/; revision=3950
2008-03-14 10:08:58 +00:00
Rob Kendrick
4ec38922ac
Change meaning of c->redraw_time to be the earliest time to reflow during page asset fetch. Have the time selected vary depending on how long the last reflow took.
...
svn path=/trunk/netsurf/; revision=3925
2008-03-11 00:14:39 +00:00
John Mark Bell
d4e57583a0
Insert implied boxes rather than entirely removing empty table/row group nodes from the box tree.
...
svn path=/trunk/netsurf/; revision=3920
2008-03-10 14:24:41 +00:00
John Mark Bell
4da171f53c
Fix last pointer manipulation for table and row_group boxes.
...
svn path=/trunk/netsurf/; revision=3919
2008-03-10 14:23:04 +00:00
John Mark Bell
9468e4abbe
Take account of any table height specified through CSS or HTML.
...
svn path=/trunk/netsurf/; revision=3918
2008-03-10 14:17:35 +00:00
Michael Drake
abd453166f
Apply min/max-height to absolutely positioned elements.
...
svn path=/trunk/netsurf/; revision=3916
2008-03-10 12:36:35 +00:00
Michael Drake
2c7ce0143f
Adjust y values after seting a min/max-height.
...
svn path=/trunk/netsurf/; revision=3910
2008-03-09 23:41:08 +00:00
Michael Drake
052f8b47ff
Initial stab at min/max-height support.
...
svn path=/trunk/netsurf/; revision=3909
2008-03-09 19:39:17 +00:00
Michael Drake
920be77804
When floats have clear right or left set, as well as being put below floats on that side, they should still follow normal behaviour with respect to floats on the other side.
...
svn path=/trunk/netsurf/; revision=3904
2008-03-09 14:10:05 +00:00
Michael Drake
1dc8770cbb
Fix clear CSS property support when applied on floats.
...
svn path=/trunk/netsurf/; revision=3902
2008-03-09 01:34:49 +00:00
Michael Drake
201dabcb9b
Round percentage width to nearest pixel with integers.
...
svn path=/trunk/netsurf/; revision=3901
2008-03-08 20:30:40 +00:00
Michael Drake
9c0eda1d2c
Fix float wrapping when available space equals space that would be used by float.
...
svn path=/trunk/netsurf/; revision=3898
2008-03-07 21:39:06 +00:00
Michael Drake
16489d1b12
No space between rows of floats.
...
svn path=/trunk/netsurf/; revision=3895
2008-03-07 18:36:04 +00:00
Michael Drake
ceb5f5ff7f
Round percentage widths to nearest pixel instead of down.
...
svn path=/trunk/netsurf/; revision=3891
2008-03-06 19:41:49 +00:00
Michael Drake
f7be887580
Centered tables are a special case.
...
svn path=/trunk/netsurf/; revision=3880
2008-03-05 08:09:06 +00:00
Michael Drake
5859cae5d4
Squash warning.
...
svn path=/trunk/netsurf/; revision=3875
2008-03-01 21:01:04 +00:00
Michael Drake
bae61d9224
Periodically reflow the page while fetching a page's objects. Make buffer all rendering default.
...
svn path=/trunk/netsurf/; revision=3874
2008-02-29 23:03:26 +00:00
Michael Drake
f752aca0d4
Fix align attributes on TABLE etc being overridden in the table's cells by the default alignment of cells with no align attribute.
...
svn path=/trunk/netsurf/; revision=3873
2008-02-28 20:36:09 +00:00
John Mark Bell
89793c2171
Make content_reset actually do what it's meant to (i.e. reset the appropriate members)
...
Fix up CONTENT_MSG_REFRESH scheduled events to gracefully the refresh URL disappearing from under them.
svn path=/trunk/netsurf/; revision=3870
2008-02-27 18:38:41 +00:00
Michael Drake
748937547a
Don't meddle with blockquote's margins.
...
svn path=/trunk/netsurf/; revision=3869
2008-02-26 22:31:38 +00:00
John Mark Bell
1cf46a6792
SignednessWarnings.squash()
...
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
2008-02-25 17:58:00 +00:00
Michael Drake
a4e1ffda1a
Improve handling of HTML attributes / markup:
...
* 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
2008-02-25 16:37:48 +00:00
John Mark Bell
1fc91faff1
Also flag box as invisible so it'll have no effect on layout
...
svn path=/trunk/netsurf/; revision=3864
2008-02-25 08:56:11 +00:00
John Mark Bell
73c02364a8
Ignore spurious top-level framesets correctly (previously declared memory exhaustion, which is obviously wrong)
...
svn path=/trunk/netsurf/; revision=3863
2008-02-25 08:53:04 +00:00
Michael Drake
369344518a
For form gadgets, specified percentage width is inclusive of margin, border and padding space.
...
svn path=/trunk/netsurf/; revision=3859
2008-02-17 18:22:06 +00:00
Michael Drake
7d748ae2ff
Select element width is width of longest option text.
...
svn path=/trunk/netsurf/; revision=3855
2008-02-11 17:53:00 +00:00
John Mark Bell
2c2ac87e37
Prevent tabbing into textfields whose styling is display: none;
...
svn path=/trunk/netsurf/; revision=3849
2008-02-07 00:50:37 +00:00
Michael Drake
7177f59309
Improve float positioning.
...
svn path=/trunk/netsurf/; revision=3833
2008-02-03 18:44:24 +00:00
Michael Drake
d67a84f7e3
Turn debug output off again. Remove extraneous include.
...
svn path=/trunk/netsurf/; revision=3828
2008-02-03 14:29:07 +00:00
Michael Drake
8491aecb35
Ensure min line length takes into account margins, borders and paddings of objects.
...
svn path=/trunk/netsurf/; revision=3827
2008-02-03 14:24:46 +00:00
John Mark Bell
ad6fcea6b0
Add url_fragment to extract fragment from URL
...
Optionally allow url_compare to ignore fragments in comparison
Fix handling of url_compare result in a few places
Fix redirects which contain fragments in the Location header
svn path=/trunk/netsurf/; revision=3826
2008-02-03 12:04:48 +00:00
Michael Drake
120ca506c1
Make text input boxes with height:auto; and no initial value get a sensible height. Make all form elements have their dimensions based on the configured minimum font size, if the current text size is smaller. Remove redundant code for setting radio icon and checkbox sizes. All em/ex based sizes now respect the min font size, when it's in effect. Updated default styles for form elements.
...
svn path=/trunk/netsurf/; revision=3813
2008-02-02 00:13:19 +00:00
Michael Drake
0241f21d4d
Fix syntax.
...
svn path=/trunk/netsurf/; revision=3800
2008-01-29 01:18:23 +00:00
Michael Drake
3edfd4feb7
Reinstate things lost in the last checkins.
...
svn path=/trunk/netsurf/; revision=3799
2008-01-29 01:14:20 +00:00
Michael Drake
30b76c4dfa
No need to recalculate a value we already have.
...
svn path=/trunk/netsurf/; revision=3798
2008-01-29 01:01:02 +00:00
Michael Drake
38dcd3f172
Apply min font size config option to radio icons and checkboxes.
...
svn path=/trunk/netsurf/; revision=3797
2008-01-29 00:42:15 +00:00
Michael Drake
416c81208b
Make box dump show "gadget".
...
svn path=/trunk/netsurf/; revision=3796
2008-01-28 13:48:59 +00:00
James Bursa
58724040e5
Render borders after backgrounds. Handle boxes with overflow hidden or scroll and borders correctly. Update copyrights.
...
svn path=/trunk/netsurf/; revision=3792
2008-01-28 04:33:39 +00:00
John Mark Bell
8fdd1f298e
Recurse into noscript elements when looking for meta refresh. This would work perfectly, were it not for libxml's html parser terminating head and starting body on sight of a noscript tag. Joy.
...
svn path=/trunk/netsurf/; revision=3791
2008-01-28 02:43:06 +00:00
Michael Drake
882c04c2fb
Only needed the vertical position changed.
...
svn path=/trunk/netsurf/; revision=3789
2008-01-28 02:01:04 +00:00
John Mark Bell
78d194cb77
Rework handling of HTTP redirects -- we now count the number of redirects followed for a given item and abort if a fixed limit is reached. This fixes sites which have pages that redirect to themselves.
...
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
2008-01-28 01:35:00 +00:00
Michael Drake
32fe1bd1bf
Replace accidentally checked in files with previous ones.
...
svn path=/trunk/netsurf/; revision=3786
2008-01-28 01:11:37 +00:00
Michael Drake
49fce64c1a
Fix vertical position of images with margin/borders/padding.
...
svn path=/trunk/netsurf/; revision=3785
2008-01-28 00:58:31 +00:00
Michael Drake
48bdeb34c8
Ensure images within inline-blocks are shown properly. Fixed by zamez.
...
svn path=/trunk/netsurf/; revision=3783
2008-01-27 22:25:11 +00:00
Michael Drake
fcd30e0819
Revert r3781.
...
svn path=/trunk/netsurf/; revision=3782
2008-01-27 19:08:27 +00:00
Michael Drake
2a28537fe6
Background area extends to border edge.
...
svn path=/trunk/netsurf/; revision=3781
2008-01-27 19:06:11 +00:00
Michael Drake
f5d07c4988
Background area extends to border edge.
...
svn path=/trunk/netsurf/; revision=3780
2008-01-27 18:15:56 +00:00
Michael Drake
b2b6fa0f10
Make inline-blocks have margins. Add defualt margin around form inputs.
...
svn path=/trunk/netsurf/; revision=3779
2008-01-27 17:39:14 +00:00
Michael Drake
053f2f830c
Hopefully fix inline-block positioning. (Stops form elements from overlapping.)
...
svn path=/trunk/netsurf/; revision=3778
2008-01-27 11:59:01 +00:00
Michael Drake
252aa870f8
No need to reduce box height when adding scrollbar.
...
svn path=/trunk/netsurf/; revision=3777
2008-01-26 23:03:30 +00:00
Daniel Silverstone
13b91169fd
Protect <pre> fix in cases where c->style is NULL
...
svn path=/trunk/netsurf/; revision=3673
2007-12-23 16:09:02 +00:00
Daniel Silverstone
23781fb862
An INLINE_CONTAINER which contains a TEXT which is zero chars long but *is* in a PRE white-space rule *DOES* contain a text child.
...
svn path=/trunk/netsurf/; revision=3672
2007-12-23 14:15:11 +00:00
Richard Wilson
cab5913aee
Don't remove table rows with no children (fix 1753365)
...
svn path=/trunk/netsurf/; revision=3630
2007-10-10 20:34:02 +00:00
Richard Wilson
14c30d64a6
Remove legacy code.
...
svn path=/trunk/netsurf/; revision=3629
2007-10-10 20:33:15 +00:00
Richard Wilson
e0ac355853
Correctly terminate the plot group of a clipped box. Clip visible children of hidden elements (fix 1808893).
...
svn path=/trunk/netsurf/; revision=3627
2007-10-09 17:24:02 +00:00
Richard Wilson
7163f5aadd
Fix parsing of invalid colour values becoming CSS_COLOR_NONE. Make all colour parsing code common.
...
svn path=/trunk/netsurf/; revision=3625
2007-10-09 16:25:25 +00:00
James Bursa
db7a0824d3
Process inline stylesheets anywhere in document, not just in <head>.
...
svn path=/trunk/netsurf/; revision=3615
2007-10-02 04:48:30 +00:00
John Mark Bell
a9d6811bdc
Also try charsets without transliteration -- not all iconv() implementations support //TRANSLIT as it's a non-standard extension.
...
svn path=/trunk/netsurf/; revision=3598
2007-09-27 13:57:29 +00:00
John Mark Bell
ada0a41871
Fix handling of backgrounds on <body> and <html>
...
svn path=/trunk/netsurf/; revision=3545
2007-09-17 14:53:02 +00:00
James Bursa
3af1dbdb12
Fix disappearing borders for elements with overflow: hidden.
...
svn path=/trunk/netsurf/; revision=3534
2007-08-28 00:53:22 +00:00
James Bursa
21db9de5f8
Make F9 dump box tree to an editor for easier debugging.
...
svn path=/trunk/netsurf/; revision=3529
2007-08-20 02:39:49 +00:00
Daniel Silverstone
d1382c6d0e
Provide the facility to set the DPI of the display by removing the assumptions of 90.0 dpi from the CSS and layout engines.
...
svn path=/trunk/netsurf/; revision=3528
2007-08-19 10:08:49 +00:00
Vincent Sanders
2f864eeecc
Update all source code file headers to reflect GPL version 2 only and contain appropriate licence text
...
svn path=/trunk/netsurf/; revision=3486
2007-08-08 16:16:03 +00:00
Rob Kendrick
43257a160b
Changes to allow building on Solaris.
...
* Tested on Solaris Express: Developer Edition,
which is between Solaris 10 and 11.
* Used gcc, libmng etc packages using pkg-get and blastwave's resources.
* Had to build lemon and re2c manually.
svn path=/trunk/netsurf/; revision=3350
2007-06-15 22:07:11 +00:00
John Mark Bell
63ae43204d
Fix UTF-16LE BOM detection _again_
...
svn path=/trunk/netsurf/; revision=3335
2007-06-10 19:30:37 +00:00
Daniel Silverstone
6807b4208a
Remove the netsurf/ from the include paths and rationalise use of <> vs "" 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
2007-05-30 22:39:54 +00:00
John Mark Bell
01316168fc
Fix bugs in charset detection.
...
Strip BOM from parser input, as it confuses libxml.
Ignore non-ASCII-compatible charsets declared in meta tag (the parser
defaults to 8 bit, so if it's managed to extract a meta charset, then it
must be ASCII-compatible, so a non-ASCII-compatible meta charset is lies).
Fixes WightLink timetable and 1726341.
svn path=/trunk/netsurf/; revision=3304
2007-05-29 18:03:07 +00:00
John Mark Bell
00377eec58
Import font containing symbols we need for list items.
...
(Un)Install font appropriately at runtime.
Make list markers use the right characters.
svn path=/trunk/netsurf/; revision=3280
2007-05-14 22:57:11 +00:00
James Bursa
7c43ff2537
Return an error from html_convert() if the base stylesheet fails to load, instead of continuing to layout which will assert.
...
svn path=/trunk/netsurf/; revision=3266
2007-05-06 00:41:12 +00:00
James Bursa
d27f5c65da
Fix warning: format '%u' expects type 'unsigned int', but argument 3 has type 'size_t'.
...
svn path=/trunk/netsurf/; revision=3264
2007-05-02 03:20:01 +00:00
Richard Wilson
9c3dc045a0
Set minimum META refresh delay to 1s
...
svn path=/trunk/netsurf/; revision=3246
2007-04-07 22:51:06 +00:00
John Mark Bell
4d55f43a3d
Object sizes do not apply when calculating the extent of descendent
...
bounding boxes. (fixes 1601881)
svn path=/trunk/netsurf/; revision=3240
2007-04-07 02:29:32 +00:00
John Mark Bell
f1fba1908f
Fix embedded object + display: none; crash (1695751) (c.f r3236)
...
svn path=/trunk/netsurf/; revision=3239
2007-04-06 23:48:26 +00:00
John Mark Bell
94d12a96e7
Squash access to freed memory.
...
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
2007-04-06 12:05:25 +00:00
John Mark Bell
6eba75b1c6
Recognise <image> as a synonym for <img> (fixes 1692426)
...
svn path=/trunk/netsurf/; revision=3231
2007-04-01 20:21:58 +00:00
John Mark Bell
e7fe3678f0
Deal with more ways in which meta refresh URLs can be invalid.
...
svn path=/trunk/netsurf/; revision=3229
2007-04-01 16:41:22 +00:00
John Mark Bell
ccfc0e7516
Fix abort on attempted destruction of CONTENT_DIRECTORY (1690222)
...
svn path=/trunk/netsurf/; revision=3228
2007-03-28 22:56:54 +00:00
John Mark Bell
a96ef2a906
Fix assertion when table has negative mbp (1579981)
...
svn path=/trunk/netsurf/; revision=3222
2007-03-25 16:20:10 +00:00
John Mark Bell
cabed36421
Fix handling of scrollbar addition to blocks which have height/width ==
...
AUTO (fixes 1567430)
svn path=/trunk/netsurf/; revision=3220
2007-03-24 23:47:44 +00:00
John Mark Bell
5e0bec495c
Fix FP exception when right-aligned tables with margin: auto are nested
...
(interaction with floats, resulting in margin[TOP] == AUTO) (fixes
1662931)
svn path=/trunk/netsurf/; revision=3218
2007-03-24 21:03:36 +00:00
John Mark Bell
64b229d0d6
Make <object> attribute handling more spec compliant
...
svn path=/trunk/netsurf/; revision=3215
2007-03-22 22:47:24 +00:00
John Mark Bell
9c048ad076
Fix invalidation of unwanted contents.
...
svn path=/trunk/netsurf/; revision=3214
2007-03-19 00:04:09 +00:00
John Mark Bell
703b5fea73
Ensure content owners check that they are still interested in a content
...
when receiving notification that the content's in error. This prevents
content pointers being corrupted when redirects occur. Fixes 1522002,
1551475.
svn path=/trunk/netsurf/; revision=3211
2007-03-18 17:09:55 +00:00
John Mark Bell
e80ce80a98
Default form field maxlength to UINT_MAX (fixes 1620540)
...
svn path=/trunk/netsurf/; revision=3205
2007-03-11 23:48:29 +00:00
John Mark Bell
9cf5122797
Content handlers should not call warn_user - they should broadcast the
...
error using content_broadcast and leave it to the content owner(s) to
decide what to do about it.
Only use warn_user for top-level contents.
svn path=/trunk/netsurf/; revision=3204
2007-03-11 22:08:57 +00:00
John Mark Bell
58c217cbee
Transliterate form submissions (requires an iconv implementation that
...
understands //TRANSLIT - both glibc & libiconv's do, as do Iconv
modules >= 0.08)
Require Iconv 0.08
svn path=/trunk/netsurf/; revision=3203
2007-03-11 13:58:15 +00:00
John Mark Bell
cd3fb4a7cc
Ensure multipart/form-data submissions are in the correct charset.
...
(fixes 1617129).
There are issues with unrepresentable characters, which I'm
investigating; they appear to be due to Iconv/UnicodeLib and not
NetSurf's usage of them.
svn path=/trunk/netsurf/; revision=3190
2007-02-26 00:32:07 +00:00
John Mark Bell
e57a90e91c
Fix handling of % signs in textarea initial value. (Fixes 1617123)
...
svn path=/trunk/netsurf/; revision=3180
2007-02-11 23:21:05 +00:00
John Mark Bell
3b40e0f5fc
Reparse entire document if meta charset resulting in changed document
...
encoding is encountered (fixes 1389126)
svn path=/trunk/netsurf/; revision=3176
2007-02-10 21:34:22 +00:00
John Mark Bell
a9b34bd990
Work around libxml oddness in allowing document meta encoding to
...
override external charset information.
svn path=/trunk/netsurf/; revision=3175
2007-02-10 19:53:41 +00:00
John Mark Bell
25213dca24
Fix handling of cookies in unverifiable transactions caused by a redirect from a fetch into a browser window which was varifiable.
...
svn path=/trunk/netsurf/; revision=3165
2007-02-02 23:08:13 +00:00
John Mark Bell
8cf2e40daa
Bring handling of submission of blank file inputs in line with other browsers.
...
Tidy up fetch_post_convert while I'm at it.
svn path=/trunk/netsurf/; revision=3159
2007-01-30 23:19:21 +00:00
James Bursa
a0b6661eb6
Make GTK build compile on FreeBSD.
...
svn path=/trunk/netsurf/; revision=3154
2007-01-29 22:27:15 +00:00
James Bursa
11aceb370a
Add html_dump_frameset() to help understand and debug frames.
...
svn path=/trunk/netsurf/; revision=3148
2007-01-24 23:16:02 +00:00
James Bursa
b6630787c5
Default frame margin 0 instead of -1. Fix marginheight parsing.
...
svn path=/trunk/netsurf/; revision=3147
2007-01-24 22:53:09 +00:00