summaryrefslogtreecommitdiff
path: root/render/box_normalise.c
diff options
context:
space:
mode:
authorJames Bursa <james@netsurf-browser.org>2005-07-02 18:17:51 +0000
committerJames Bursa <james@netsurf-browser.org>2005-07-02 18:17:51 +0000
commit9b78daf135d7fa555990454c219649e4d54157d2 (patch)
treed5d8c1d773d0ef51afbe055dcff60607821f7a9c /render/box_normalise.c
parent894ba8b6230ffa57e1a5037adbd1b246a9a877da (diff)
downloadnetsurf-9b78daf135d7fa555990454c219649e4d54157d2.tar.gz
netsurf-9b78daf135d7fa555990454c219649e4d54157d2.tar.bz2
[project @ 2005-07-02 18:17:51 by bursa]
Rewrite calculation of box minimum and maximum widths to improve layout of many pages. Move calculation of column types and border collapsing to box tree normalising stage, since they are layout independent. Add window height parameter to layout and make <html> and <body> at least window height. svn path=/import/netsurf/; revision=1777
Diffstat (limited to 'render/box_normalise.c')
-rw-r--r--render/box_normalise.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/render/box_normalise.c b/render/box_normalise.c
index 22971af8c..5fd78f419 100644
--- a/render/box_normalise.c
+++ b/render/box_normalise.c
@@ -16,6 +16,7 @@
#include <stdbool.h>
#include "netsurf/css/css.h"
#include "netsurf/render/box.h"
+#include "netsurf/render/table.h"
#ifdef riscos
#include "netsurf/desktop/gui.h"
#endif
@@ -267,8 +268,6 @@ bool box_normalise_table(struct box *table, struct content * c)
table->rows = col_info.num_rows;
free(col_info.spans);
- box_normalise_table_spans(table);
-
if (table->children == 0) {
LOG(("table->children == 0, removing"));
if (table->prev == 0)
@@ -278,6 +277,13 @@ bool box_normalise_table(struct box *table, struct content * c)
if (table->next != 0)
table->next->prev = table->prev;
box_free(table);
+ } else {
+ box_normalise_table_spans(table);
+ if (!table_calculate_column_types(table))
+ return false;
+ if (table->style->border_collapse ==
+ CSS_BORDER_COLLAPSE_COLLAPSE)
+ table_collapse_borders(table);
}
LOG(("table %p done", table));