Closed
Bug 279156
Opened 20 years ago
Closed 20 years ago
[FIXr]Default constructor for nsStyleBorder should set mBorderStyle better
Categories
(Core :: CSS Parsing and Computation, defect, P3)
Tracking
()
RESOLVED
FIXED
mozilla1.8beta2
People
(Reporter: bzbarsky, Assigned: bzbarsky)
Details
Attachments
(1 file)
5.21 KB,
patch
|
dbaron
:
review+
dbaron
:
superreview+
|
Details | Diff | Splinter Review |
In brief, we want the default constructor to create the "initial" border struct.
That is, it should have the equivalent of setting:
border-width: medium;
border-style: none;
border-color: -moz-use-text-color;
At the moment, we set it to:
border-width: medium;
border-style: none;
border-color: rgb(0,0,0);
and then set the BORDER_COLOR_DEFINED flag to false so that in
nsStyleBorder::RecalcData we will go through and call SetBorderToForeground() on
all the sides. I think we should be able to just eliminate BORDER_COLOR_DEFINED
altogether if we just set the color up front in the constructor.
Please test:
http://dbaron.org/css/test/shortborder
http://dbaron.org/css/test/shortborder2
(particularly the latter)
Assignee | ||
Comment 2•20 years ago
|
||
The basic idea here is that the only way that BORDER_COLOR_DEFINED could be not
set on a side is if the color for that side had never been set (to a color, to
foreground, or to transparent), and the border-colors for that side had never
been set. In that case, the "foreground" flag got set.
The same effect can be achieved by setting the "foreground" flag in the
constructor, and eliminating the "defined" flag altogether, since border
structs now always have a defined border color ("foreground" if nothing else
was explicitly set on the struct).
I've tested that this correctly handles things like "border-style: solid"
(without setting color) on root and nonroot elements, and that it passes the
tests at http://dbaron.org/css/test/shortborder and
http://dbaron.org/css/test/shortborder2
The "defined" flag on outline was simply unused, so I removed it from there
too...
Attachment #171911 -
Flags: superreview?(dbaron)
Attachment #171911 -
Flags: review?(dbaron)
Assignee | ||
Comment 3•20 years ago
|
||
fantasai, want to check on that patch too? You've messed around in this code...
Priority: -- → P3
Summary: Default constructor for nsStyleBorder should set mBorderStyle better → [FIX]Default constructor for nsStyleBorder should set mBorderStyle better
Target Milestone: --- → mozilla1.8beta
Comment on attachment 171911 [details] [diff] [review]
Patch
r+sr=dbaron; sorry for the delay
Attachment #171911 -
Flags: superreview?(dbaron)
Attachment #171911 -
Flags: superreview+
Attachment #171911 -
Flags: review?(dbaron)
Attachment #171911 -
Flags: review+
Assignee | ||
Updated•20 years ago
|
Summary: [FIX]Default constructor for nsStyleBorder should set mBorderStyle better → [FIXr]Default constructor for nsStyleBorder should set mBorderStyle better
Assignee | ||
Comment 5•20 years ago
|
||
Checked in for 1.8b2
Status: NEW → RESOLVED
Closed: 20 years ago
Resolution: --- → FIXED
Target Milestone: mozilla1.8beta1 → mozilla1.8beta2
You need to log in
before you can comment on or make changes to this bug.
Description
•