Commit Graph

794 Commits

Author SHA1 Message Date
John Mark Bell
ee986e1d0a Divorce PDF export and printing.
At some point, the RISC OS printing code should be ported to the core page-based output engine.

svn path=/trunk/netsurf/; revision=6544
2009-02-17 16:37:51 +00:00
John Mark Bell
72b8a67660 Ensure URLs are normalized prior to fetching.
Squash memory leaks.

svn path=/trunk/netsurf/; revision=6411
2009-02-10 18:35:56 +00:00
Michael Drake
f1c7c7f072 Remove unused line_height stuff for now.
svn path=/trunk/netsurf/; revision=6354
2009-02-02 13:54:48 +00:00
Michael Drake
b2182b8c50 Fix clear:both; when there's nothing to clear.
svn path=/trunk/netsurf/; revision=6352
2009-02-02 12:56:15 +00:00
Michael Drake
400ed91129 Hubbub allows FONT tags to span blocks and the way that
the box tree is generated, this makes the BOX_INLINE's
BOX_INLINE_END appears in a different BOX_BLOCK. That
seems wrong, but fix layout not to crash for now.

svn path=/trunk/netsurf/; revision=6325
2009-01-31 22:49:41 +00:00
Michael Drake
414f42faac Make inline boxes store the height of their line box and include in box tree dump.
svn path=/trunk/netsurf/; revision=6319
2009-01-31 13:26:28 +00:00
Michael Drake
887d7984cb Fix scale of inline borders.
svn path=/trunk/netsurf/; revision=6309
2009-01-31 00:41:03 +00:00
Adrian Lees
03a1aac36a Selection- and link-related functions now on menu; other menu changes as per t's plan
svn path=/trunk/netsurf/; revision=6296
2009-01-30 05:06:30 +00:00
Michael Drake
daf8c22d1b Only get top margin if box has style.
svn path=/trunk/netsurf/; revision=6295
2009-01-29 22:57:32 +00:00
Michael Drake
56b48410be Include top margin when finding sides for block formatting contexts.
svn path=/trunk/netsurf/; revision=6293
2009-01-29 21:23:48 +00:00
Michael Drake
619e5b9631 Once a float has been placed below current line,
ensure that subsequent floats are also placed below.
Make place_float_below() consider float height when
searching for available space.

svn path=/trunk/netsurf/; revision=6287
2009-01-27 13:21:50 +00:00
Michael Drake
aa787e9730 Fix specified table widths to include border. Tidy block formatting context and table position setup.
svn path=/trunk/netsurf/; revision=6281
2009-01-26 16:32:19 +00:00
Michael Drake
0a175d4020 Fix -ve margins.
svn path=/trunk/netsurf/; revision=6277
2009-01-26 09:11:54 +00:00
Michael Drake
0fefb7a605 More robust float avoidance for blocks set as block formatting contexts.
svn path=/trunk/netsurf/; revision=6275
2009-01-26 00:15:25 +00:00
Michael Drake
beff85fa73 Ignore clear:left; when the only floats are on the right and vice versa.
svn path=/trunk/netsurf/; revision=6176
2009-01-22 17:52:22 +00:00
Michael Drake
3594651a6b Handle clear before working out available width for tables and blocks that cause a new block formatting context.
svn path=/trunk/netsurf/; revision=6174
2009-01-22 15:39:06 +00:00
Michael Drake
4c40bbc096 Fix placement of tables in normal flow next to floats. This stops big blank gaps appearing e.g. at the top of wikipedia articles, on some google search results and on amazon product pages.
svn path=/trunk/netsurf/; revision=6162
2009-01-21 23:01:59 +00:00
Michael Drake
9134956efe Fix positioning of floats that come after floats with negative margins.
svn path=/trunk/netsurf/; revision=6156
2009-01-20 21:36:54 +00:00
Michael Drake
c5f72605b4 Block formatting context width is only reduced due to floats if width is auto.
svn path=/trunk/netsurf/; revision=6145
2009-01-19 10:17:44 +00:00
Michael Drake
20120a8acf Make blocks which establish a new block formatting context use have the correct width and position to avoid overlapping floats. Fixes the main problem on the amazon.co.uk front page.
svn path=/trunk/netsurf/; revision=6142
2009-01-18 23:41:48 +00:00
Michael Drake
e5a5bbec3f Move handling of background related print options to background specific functions.
svn path=/trunk/netsurf/; revision=6119
2009-01-17 19:39:38 +00:00
John Mark Bell
2d3b9e435b Charset fallbacks. If we don't support the charset declared in the HTTP header, fall back to autodetect. If we don't support the charset declared in a meta charset, fall back to Windows-1252.
svn path=/trunk/netsurf/; revision=5974
2009-01-06 22:06:14 +00:00
John Mark Bell
ec868fdcdc It's probably a good idea if we're consistent in which allocation routines we're using.
svn path=/trunk/netsurf/; revision=5972
2009-01-06 17:52:47 +00:00
John Mark Bell
7f099d6675 More lenient refresh delay parsing
svn path=/trunk/netsurf/; revision=5948
2008-12-30 15:46:06 +00:00
Michael Drake
d27a1c625f Only increase the root element's redraw box to cover margin, if the redraw box isn't already bigger due to protruding descendants.
svn path=/trunk/netsurf/; revision=5934
2008-12-27 17:29:17 +00:00
Michael Drake
5a3b076869 Fix crash bug.
svn path=/trunk/netsurf/; revision=5932
2008-12-27 17:09:35 +00:00
Michael Drake
e5e68a3feb Handle replaced inline borders and backgrounds like blocks.
svn path=/trunk/netsurf/; revision=5930
2008-12-27 15:03:54 +00:00
Michael Drake
8ecaccd8a4 Plot backgrounds on the root element over margin box, as per CSS 2.1 spec.
svn path=/trunk/netsurf/; revision=5927
2008-12-27 00:08:25 +00:00
Michael Drake
f26342940b Fix display of inline borders when inline has no background.
svn path=/trunk/netsurf/; revision=5924
2008-12-26 15:10:28 +00:00
Michael Drake
0ba4a444cc Fix some wrap to 80 chars and tabs for indentation.
svn path=/trunk/netsurf/; revision=5923
2008-12-26 11:34:23 +00:00
Michael Drake
a673ad21ee Don't apply text decoration if the box isn't text.
svn path=/trunk/netsurf/; revision=5921
2008-12-22 21:57:56 +00:00
François Revel
fe355fc087 C89
svn path=/trunk/netsurf/; revision=5919
2008-12-21 21:28:12 +00:00
Michael Drake
6a4d4489f5 Rewrite inline rendering. Fixes issues with borders,
background colour and background image display when
inlines have margins and paddings. Support for
background position on inlines. Fix BOX_INLINE
descendant calculation to include BOX_INLINE_END.

svn path=/trunk/netsurf/; revision=5916
2008-12-21 15:51:23 +00:00
François Revel
53fe38504f C89
svn path=/trunk/netsurf/; revision=5837
2008-11-29 22:53:58 +00:00
John Mark Bell
3a5d7d6b64 Process error page correctly.
TODO: Why don't *_process_data take a const pointer to the data?

svn path=/trunk/netsurf/; revision=5757
2008-11-20 14:47:36 +00:00
John Mark Bell
37278a0fa5 Don't care about chunk sizes.
svn path=/trunk/netsurf/; revision=5671
2008-11-09 19:18:18 +00:00
John Mark Bell
ee675539e0 Don't introduce an unnecessary error message
svn path=/trunk/netsurf/; revision=5670
2008-11-09 19:17:36 +00:00
John Mark Bell
8a16d5942b Port to new hubbub parser API
svn path=/trunk/netsurf/; revision=5669
2008-11-09 19:04:30 +00:00
Michael Drake
f33fd2c604 Take into account variations in text line height due to styled inlines when laying out inline containers.
svn path=/trunk/netsurf/; revision=5587
2008-10-16 20:50:48 +00:00
John Mark Bell
a55c1f6e41 Fixup hubbub binding
svn path=/trunk/netsurf/; revision=5576
2008-10-14 15:48:14 +00:00
John Mark Bell
76976d7db6 Fix warnings on OS X
svn path=/trunk/netsurf/; revision=5573
2008-10-14 14:54:49 +00:00
Rob Kendrick
34a1b46411 add bitmap.h include to silence some warnings on Fedora.
svn path=/trunk/netsurf/; revision=5571
2008-10-14 00:12:31 +00:00
Michael Drake
b3f32dece4 Implement percentage min/max-height.
svn path=/trunk/netsurf/; revision=5566
2008-10-13 19:22:16 +00:00
Michael Drake
38619e2d29 Finish 80 char widthing.
svn path=/trunk/netsurf/; revision=5560
2008-10-13 15:06:19 +00:00
Michael Drake
7293b6f4bb Tidy up where spaces were used for indentation.
svn path=/trunk/netsurf/; revision=5555
2008-10-13 12:30:23 +00:00
Michael Drake
a5ac56655c Fix float percentage heights to match other browsers: for floated elements the containing block is the nearest ancestor box at block level, rather than the block formatting context block that the float is in.
svn path=/trunk/netsurf/; revision=5553
2008-10-13 10:50:46 +00:00
Michael Drake
79978eafcd Set float_container before float layout. Fixes percentage height on floated elements.
svn path=/trunk/netsurf/; revision=5552
2008-10-12 21:45:38 +00:00
Michael Drake
1a237535f7 Better commenting of percentage height stuff.
svn path=/trunk/netsurf/; revision=5551
2008-10-12 21:35:04 +00:00
Michael Drake
b7a1b3999e Implement percentage heights for block level elements in normal flow, floats and positioned boxes. Percentage min/max-height not yet handled.
svn path=/trunk/netsurf/; revision=5550
2008-10-12 21:22:28 +00:00
Michael Drake
c1db0e90cc Use style guide switch formatting all over.
svn path=/trunk/netsurf/; revision=5549
2008-10-12 15:34:43 +00:00