diff options
author | James Bursa <james@netsurf-browser.org> | 2002-12-27 22:29:45 +0000 |
---|---|---|
committer | James Bursa <james@netsurf-browser.org> | 2002-12-27 22:29:45 +0000 |
commit | 54ec269af3e8e13d27d225c562bc337a87bb4608 (patch) | |
tree | b2189e8db5bc0dbbc2fb9e1870e55fd304e289db /render | |
parent | e2ba6726c5f6a0f9aaf8c59f9ecdb03750ac7397 (diff) | |
download | netsurf-54ec269af3e8e13d27d225c562bc337a87bb4608.tar.gz netsurf-54ec269af3e8e13d27d225c562bc337a87bb4608.tar.bz2 |
[project @ 2002-12-27 22:29:45 by bursa]
Implement color property.
svn path=/import/netsurf/; revision=68
Diffstat (limited to 'render')
-rw-r--r-- | render/layout.c | 19 |
1 files changed, 14 insertions, 5 deletions
diff --git a/render/layout.c b/render/layout.c index 142eede0e..e136a009a 100644 --- a/render/layout.c +++ b/render/layout.c @@ -1,5 +1,5 @@ /** - * $Id: layout.c,v 1.26 2002/12/27 18:58:03 bursa Exp $ + * $Id: layout.c,v 1.27 2002/12/27 22:29:45 bursa Exp $ */ #include <assert.h> @@ -537,11 +537,20 @@ void layout_table(struct box * table, unsigned long width, struct box * cont, } table_width = table->min_width; } else if (max_width <= table_width) { - /* more space than maximum width: maximise widths */ - for (i = 0; i < table->columns; i++) { - table->col[i].width = table->col[i].max; + /* more space than maximum width */ + if (table->style->width.width == CSS_WIDTH_AUTO) { + /* for auto-width tables, make columns max width */ + for (i = 0; i < table->columns; i++) { + table->col[i].width = table->col[i].max; + } + table_width = max_width; + } else { + /* for fixed-width tables, distribute the extra space too */ + unsigned long extra = (table_width - max_width) / table->columns; + for (i = 0; i < table->columns; i++) { + table->col[i].width = table->col[i].max + extra; + } } - table_width = max_width; } else { /* space between min and max: fill it exactly */ float scale = (float) (table_width - table->min_width) / |