Closed
Bug 1042423
Opened 10 years ago
Closed 10 years ago
Do css background clipping using DisplayItemClip
Categories
(Core :: Layout, defect)
Tracking
()
RESOLVED
FIXED
mozilla34
People
(Reporter: mattwoodrow, Assigned: mattwoodrow)
References
Details
Attachments
(5 files)
21.54 KB,
patch
|
roc
:
review+
|
Details | Diff | Splinter Review |
5.84 KB,
patch
|
roc
:
review+
|
Details | Diff | Splinter Review |
932 bytes,
patch
|
roc
:
review+
|
Details | Diff | Splinter Review |
16.75 KB,
patch
|
roc
:
review+
|
Details | Diff | Splinter Review |
9.76 KB,
patch
|
roc
:
review+
|
Details | Diff | Splinter Review |
Having background painting do it's own clipping causes issues with bug 1039020, and it also stops us from being able to convert backgrounds into color/image layers in many cases.
We already have the all infrastructure to represent all the clips needed, so we might as well use it.
Assignee | ||
Comment 1•10 years ago
|
||
Just moves some duplicated code into this function and makes it publicly accessible.
Attachment #8460725 -
Flags: review?(roc)
Assignee | ||
Comment 2•10 years ago
|
||
Attachment #8460726 -
Flags: review?(roc)
Assignee | ||
Comment 3•10 years ago
|
||
Attachment #8460727 -
Flags: review?(roc)
Assignee | ||
Comment 4•10 years ago
|
||
Attachment #8460728 -
Flags: review?(roc)
Assignee | ||
Updated•10 years ago
|
Attachment #8460725 -
Attachment description: Tidy up GetBackgroundClip and expose it → Part 1: Tidy up GetBackgroundClip and expose it
Assignee | ||
Comment 5•10 years ago
|
||
This no longer does anything useful, and duplicated a lot of code from PaintBackground.
Attachment #8460730 -
Flags: review?(roc)
Assignee | ||
Comment 6•10 years ago
|
||
Attachment #8460725 -
Flags: review?(roc) → review+
Attachment #8460727 -
Flags: review?(roc) → review+
Attachment #8460726 -
Flags: review?(roc) → review+
Comment on attachment 8460728 [details] [diff] [review]
Part 4: Clip background display items using DisplayItemClip
Review of attachment 8460728 [details] [diff] [review]:
-----------------------------------------------------------------
::: layout/base/nsCSSRendering.cpp
@@ +2853,5 @@
> // renderer draw the background and bail out.
> const nsStyleDisplay* displayData = aForFrame->StyleDisplay();
> if (displayData->mAppearance) {
> + nsITheme *theme = aForFrame->PresContext()->GetTheme();
> + if (theme && theme->ThemeSupportsWidget(aForFrame->PresContext(), aForFrame,
create a local variable for PresContext(). it's not free.
::: layout/base/nsDisplayList.cpp
@@ +1896,5 @@
>
> + bool willPaintBorder = !isThemed &&
> + (!aFrame->StyleBorder()->mBoxShadow ||
> + !aFrame->StyleBorder()->mBoxShadow->HasShadowWithInset(true)) &&
> + aFrame->StyleBorder()->HasBorder();
fix indent
Attachment #8460728 -
Flags: review?(roc) → review+
Comment on attachment 8460730 [details] [diff] [review]
Part 5: Remove PaintBackgroundColor
Review of attachment 8460730 [details] [diff] [review]:
-----------------------------------------------------------------
::: layout/base/nsDisplayList.cpp
@@ +2634,2 @@
> nsRect borderBox = nsRect(ToReferenceFrame(), mFrame->GetSize());
> +
trailing whitespace
Attachment #8460730 -
Flags: review?(roc) → review+
Assignee | ||
Comment 9•10 years ago
|
||
https://hg.mozilla.org/integration/mozilla-inbound/rev/dc7ae0a5d9b8
https://hg.mozilla.org/integration/mozilla-inbound/rev/a3dbf9a42955
https://hg.mozilla.org/integration/mozilla-inbound/rev/9b684b43edd9
https://hg.mozilla.org/integration/mozilla-inbound/rev/a23a7e056b1a
https://hg.mozilla.org/integration/mozilla-inbound/rev/06b540d3667a
Assignee | ||
Comment 10•10 years ago
|
||
Comment 11•10 years ago
|
||
https://hg.mozilla.org/mozilla-central/rev/dc7ae0a5d9b8
https://hg.mozilla.org/mozilla-central/rev/a3dbf9a42955
https://hg.mozilla.org/mozilla-central/rev/9b684b43edd9
https://hg.mozilla.org/mozilla-central/rev/a23a7e056b1a
https://hg.mozilla.org/mozilla-central/rev/06b540d3667a
https://hg.mozilla.org/mozilla-central/rev/0bad0d95c5b2
Status: NEW → RESOLVED
Closed: 10 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla34
You need to log in
before you can comment on or make changes to this bug.
Description
•