Gitweb links:
...log
http://git.netsurf-browser.org/netsurf.git/shortlog/6f7b5e3f221b4da4ff5da07281e0f2074b9e57fd
...commit
http://git.netsurf-browser.org/netsurf.git/commit/6f7b5e3f221b4da4ff5da07281e0f2074b9e57fd
...tree
http://git.netsurf-browser.org/netsurf.git/tree/6f7b5e3f221b4da4ff5da07281e0f2074b9e57fd
The branch, master has been updated
via 6f7b5e3f221b4da4ff5da07281e0f2074b9e57fd (commit)
from e431e6181b2cd480fc4ec2fb0d7f7474470d5669 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commitdiff
http://git.netsurf-browser.org/netsurf.git/commit/?id=6f7b5e3f221b4da4ff5da07281e0f2074b9e57fd
commit 6f7b5e3f221b4da4ff5da07281e0f2074b9e57fd
Author: Michael Drake <[email protected]>
Commit: Michael Drake <[email protected]>
Layout: Fix auto margins to be affected by {min|max}-width constraints.
diff --git a/render/layout.c b/render/layout.c
index 4086c04..d9b108c 100644
--- a/render/layout.c
+++ b/render/layout.c
@@ -1545,16 +1545,20 @@ layout_solve_width(struct box *box,
/* Find width */
if (width == AUTO) {
- /* any other 'auto' become 0 or the minimum required values */
- if (box->margin[LEFT] == AUTO)
- box->margin[LEFT] = lm;
- if (box->margin[RIGHT] == AUTO)
- box->margin[RIGHT] = rm;
+ int margin_left = box->margin[LEFT];
+ int margin_right = box->margin[RIGHT];
+
+ if (margin_left == AUTO) {
+ margin_left = lm;
+ }
+ if (margin_right == AUTO) {
+ margin_right = rm;
+ }
width = available_width -
- (box->margin[LEFT] + box->border[LEFT].width +
+ (margin_left + box->border[LEFT].width +
box->padding[LEFT] + box->padding[RIGHT] +
- box->border[RIGHT].width + box->margin[RIGHT]);
+ box->border[RIGHT].width + margin_right);
width = width < 0 ? 0 : width;
auto_width = true;
}
@@ -1572,8 +1576,16 @@ layout_solve_width(struct box *box,
}
/* Width was auto, and unconstrained by min/max width, so we're done */
- if (auto_width)
+ if (auto_width) {
+ /* any other 'auto' become 0 or the minimum required values */
+ if (box->margin[LEFT] == AUTO) {
+ box->margin[LEFT] = lm;
+ }
+ if (box->margin[RIGHT] == AUTO) {
+ box->margin[RIGHT] = rm;
+ }
return width;
+ }
/* Width was not auto, or was constrained by min/max width
* Need to compute left/right margins */
-----------------------------------------------------------------------
Summary of changes:
render/layout.c | 28 ++++++++++++++++++++--------
1 file changed, 20 insertions(+), 8 deletions(-)
diff --git a/render/layout.c b/render/layout.c
index 4086c04..d9b108c 100644
--- a/render/layout.c
+++ b/render/layout.c
@@ -1545,16 +1545,20 @@ layout_solve_width(struct box *box,
/* Find width */
if (width == AUTO) {
- /* any other 'auto' become 0 or the minimum required values */
- if (box->margin[LEFT] == AUTO)
- box->margin[LEFT] = lm;
- if (box->margin[RIGHT] == AUTO)
- box->margin[RIGHT] = rm;
+ int margin_left = box->margin[LEFT];
+ int margin_right = box->margin[RIGHT];
+
+ if (margin_left == AUTO) {
+ margin_left = lm;
+ }
+ if (margin_right == AUTO) {
+ margin_right = rm;
+ }
width = available_width -
- (box->margin[LEFT] + box->border[LEFT].width +
+ (margin_left + box->border[LEFT].width +
box->padding[LEFT] + box->padding[RIGHT] +
- box->border[RIGHT].width + box->margin[RIGHT]);
+ box->border[RIGHT].width + margin_right);
width = width < 0 ? 0 : width;
auto_width = true;
}
@@ -1572,8 +1576,16 @@ layout_solve_width(struct box *box,
}
/* Width was auto, and unconstrained by min/max width, so we're done */
- if (auto_width)
+ if (auto_width) {
+ /* any other 'auto' become 0 or the minimum required values */
+ if (box->margin[LEFT] == AUTO) {
+ box->margin[LEFT] = lm;
+ }
+ if (box->margin[RIGHT] == AUTO) {
+ box->margin[RIGHT] = rm;
+ }
return width;
+ }
/* Width was not auto, or was constrained by min/max width
* Need to compute left/right margins */
--
NetSurf Browser
_______________________________________________
netsurf-commits mailing list
[email protected]
http://listmaster.pepperfish.net/cgi-bin/mailman/listinfo/netsurf-commits-netsurf-browser.org