diff options
author | John Mark Bell <jmb@netsurf-browser.org> | 2006-06-29 09:37:18 +0000 |
---|---|---|
committer | John Mark Bell <jmb@netsurf-browser.org> | 2006-06-29 09:37:18 +0000 |
commit | 38bd0b13fe12d5763f2500da61b8902193e4bb32 (patch) | |
tree | 3aac30598ef7c80f7d0fddd32026d221a2ac9a21 | |
parent | 83ef76adc706635db7bdcb5871b8de78001fc6e7 (diff) | |
download | netsurf-38bd0b13fe12d5763f2500da61b8902193e4bb32.tar.gz netsurf-38bd0b13fe12d5763f2500da61b8902193e4bb32.tar.bz2 |
Compensate for box->{min_width,max_width} including mbp when
auto-widthing absolutely positioned content.
svn path=/trunk/netsurf/; revision=2670
-rw-r--r-- | render/layout.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/render/layout.c b/render/layout.c index 248a944d4..f49dfcfe6 100644 --- a/render/layout.c +++ b/render/layout.c @@ -2506,6 +2506,10 @@ bool layout_absolute(struct box *box, struct content *content) margin[LEFT] - border[LEFT] - padding[LEFT] - padding[RIGHT] - border[RIGHT] - margin[RIGHT]; width = min(max(box->min_width, available_width), box->max_width); + width -= box->margin[LEFT] + box->border[LEFT] + + box->padding[LEFT] + box->padding[RIGHT] + + box->border[RIGHT] + box->margin[RIGHT]; + right = containing_block->width - left - margin[LEFT] - border[LEFT] - padding[LEFT] - @@ -2560,6 +2564,10 @@ bool layout_absolute(struct box *box, struct content *content) available_width -= right; width = min(max(box->min_width, available_width), box->max_width); + width -= box->margin[LEFT] + box->border[LEFT] + + box->padding[LEFT] + box->padding[RIGHT] + + box->border[RIGHT] + box->margin[RIGHT]; + left = containing_block->width - margin[LEFT] - border[LEFT] - padding[LEFT] - width - @@ -2576,6 +2584,10 @@ bool layout_absolute(struct box *box, struct content *content) available_width -= left; width = min(max(box->min_width, available_width), box->max_width); + width -= box->margin[LEFT] + box->border[LEFT] + + box->padding[LEFT] + box->padding[RIGHT] + + box->border[RIGHT] + box->margin[RIGHT]; + right = containing_block->width - left - margin[LEFT] - border[LEFT] - padding[LEFT] - |