mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-10-11 20:35:50 +00:00
Bug 1041510. Allow z-index overrides of 0 to work correctly on display items. r=roc
This commit is contained in:
parent
6c3f5d7b8e
commit
3ace971252
@ -2937,6 +2937,7 @@ nsDisplayWrapList::nsDisplayWrapList(nsDisplayListBuilder* aBuilder,
|
||||
nsIFrame* aFrame, nsDisplayList* aList)
|
||||
: nsDisplayItem(aBuilder, aFrame)
|
||||
, mOverrideZIndex(0)
|
||||
, mHasZIndexOverride(false)
|
||||
{
|
||||
MOZ_COUNT_CTOR(nsDisplayWrapList);
|
||||
|
||||
@ -2983,6 +2984,7 @@ nsDisplayWrapList::nsDisplayWrapList(nsDisplayListBuilder* aBuilder,
|
||||
nsIFrame* aFrame, nsDisplayItem* aItem)
|
||||
: nsDisplayItem(aBuilder, aFrame)
|
||||
, mOverrideZIndex(0)
|
||||
, mHasZIndexOverride(false)
|
||||
{
|
||||
MOZ_COUNT_CTOR(nsDisplayWrapList);
|
||||
|
||||
|
@ -2511,7 +2511,7 @@ public:
|
||||
nsDisplayWrapList(nsDisplayListBuilder* aBuilder, nsIFrame* aFrame,
|
||||
nsDisplayItem* aItem);
|
||||
nsDisplayWrapList(nsDisplayListBuilder* aBuilder, nsIFrame* aFrame)
|
||||
: nsDisplayItem(aBuilder, aFrame), mOverrideZIndex(0)
|
||||
: nsDisplayItem(aBuilder, aFrame), mOverrideZIndex(0), mHasZIndexOverride(false)
|
||||
{
|
||||
MOZ_COUNT_CTOR(nsDisplayWrapList);
|
||||
}
|
||||
@ -2574,11 +2574,12 @@ public:
|
||||
|
||||
virtual int32_t ZIndex() const MOZ_OVERRIDE
|
||||
{
|
||||
return (mOverrideZIndex > 0) ? mOverrideZIndex : nsDisplayItem::ZIndex();
|
||||
return (mHasZIndexOverride) ? mOverrideZIndex : nsDisplayItem::ZIndex();
|
||||
}
|
||||
|
||||
void SetOverrideZIndex(int32_t aZIndex)
|
||||
{
|
||||
mHasZIndexOverride = true;
|
||||
mOverrideZIndex = aZIndex;
|
||||
}
|
||||
|
||||
@ -2611,8 +2612,8 @@ protected:
|
||||
// this item's own frame.
|
||||
nsTArray<nsIFrame*> mMergedFrames;
|
||||
nsRect mBounds;
|
||||
// Overrides the ZIndex of our frame if > 0.
|
||||
int32_t mOverrideZIndex;
|
||||
bool mHasZIndexOverride;
|
||||
};
|
||||
|
||||
/**
|
||||
|
Loading…
Reference in New Issue
Block a user