From 0ba79e1ad41feb944b2ac81521f8343137cb6ddc Mon Sep 17 00:00:00 2001 From: James Bursa Date: Sun, 31 Jul 2005 21:57:07 +0000 Subject: [project @ 2005-07-31 21:57:07 by bursa] Implement clear on
. svn path=/import/netsurf/; revision=1834 --- render/layout.c | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) (limited to 'render/layout.c') diff --git a/render/layout.c b/render/layout.c index 97bfdb71c..dc1111d70 100644 --- a/render/layout.c +++ b/render/layout.c @@ -1431,7 +1431,18 @@ bool layout_line(struct box *first, int width, int *y, } assert(b != first || (move_y && 0 < used_height && (left || right))); - if (move_y) *y += used_height; + + /* handle clearance for br */ + if (b->prev->type == BOX_BR && + b->prev->style->clear != CSS_CLEAR_NONE) { + int clear_y = layout_clear(cont->float_children, + b->prev->style->clear); + if (used_height < clear_y - cy) + used_height = clear_y - cy; + } + + if (move_y) + *y += used_height; *next_box = b; return true; } -- cgit v1.2.3