Coverage Report

Created: 2018-09-25 14:53

/src/mozilla-central/layout/painting/nsDisplayListInvalidation.cpp
Line
Count
Source (jump to first uncovered line)
1
/* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
2
/* vim: set ts=8 sts=2 et sw=2 tw=80: */
3
/* This Source Code Form is subject to the terms of the Mozilla Public
4
 * License, v. 2.0. If a copy of the MPL was not distributed with this
5
 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
6
7
#include "nsDisplayListInvalidation.h"
8
#include "nsDisplayList.h"
9
#include "nsIFrame.h"
10
#include "nsTableFrame.h"
11
12
nsDisplayItemGeometry::nsDisplayItemGeometry(nsDisplayItem* aItem,
13
                                             nsDisplayListBuilder* aBuilder)
14
0
{
15
0
  MOZ_COUNT_CTOR(nsDisplayItemGeometry);
16
0
  bool snap;
17
0
  mBounds = aItem->GetBounds(aBuilder, &snap);
18
0
}
19
20
nsDisplayItemGeometry::~nsDisplayItemGeometry()
21
0
{
22
0
  MOZ_COUNT_DTOR(nsDisplayItemGeometry);
23
0
}
24
25
nsDisplayItemGenericGeometry::nsDisplayItemGenericGeometry(
26
  nsDisplayItem* aItem,
27
  nsDisplayListBuilder* aBuilder)
28
  : nsDisplayItemGeometry(aItem, aBuilder)
29
  , mBorderRect(aItem->GetBorderRect())
30
0
{
31
0
}
32
33
bool
34
ShouldSyncDecodeImages(nsDisplayListBuilder* aBuilder)
35
0
{
36
0
  return aBuilder->ShouldSyncDecodeImages();
37
0
}
38
39
void
40
nsDisplayItemGenericGeometry::MoveBy(const nsPoint& aOffset)
41
0
{
42
0
  nsDisplayItemGeometry::MoveBy(aOffset);
43
0
  mBorderRect.MoveBy(aOffset);
44
0
}
45
46
nsDisplayItemBoundsGeometry::nsDisplayItemBoundsGeometry(
47
  nsDisplayItem* aItem,
48
  nsDisplayListBuilder* aBuilder)
49
  : nsDisplayItemGeometry(aItem, aBuilder)
50
0
{
51
0
  nscoord radii[8];
52
0
  mHasRoundedCorners = aItem->Frame()->GetBorderRadii(radii);
53
0
}
54
55
nsDisplayBorderGeometry::nsDisplayBorderGeometry(nsDisplayItem* aItem,
56
                                                 nsDisplayListBuilder* aBuilder)
57
  : nsDisplayItemGeometry(aItem, aBuilder)
58
  , nsImageGeometryMixin(aItem, aBuilder)
59
0
{
60
0
}
61
62
nsDisplayBackgroundGeometry::nsDisplayBackgroundGeometry(
63
  nsDisplayBackgroundImage* aItem,
64
  nsDisplayListBuilder* aBuilder)
65
  : nsDisplayItemGeometry(aItem, aBuilder)
66
  , nsImageGeometryMixin(aItem, aBuilder)
67
  , mPositioningArea(aItem->GetPositioningArea())
68
  , mDestRect(aItem->GetDestRect())
69
0
{
70
0
}
71
72
void
73
nsDisplayBackgroundGeometry::MoveBy(const nsPoint& aOffset)
74
0
{
75
0
  nsDisplayItemGeometry::MoveBy(aOffset);
76
0
  mPositioningArea.MoveBy(aOffset);
77
0
  mDestRect.MoveBy(aOffset);
78
0
}
79
80
nsDisplayThemedBackgroundGeometry::nsDisplayThemedBackgroundGeometry(
81
  nsDisplayThemedBackground* aItem,
82
  nsDisplayListBuilder* aBuilder)
83
  : nsDisplayItemGeometry(aItem, aBuilder)
84
  , mPositioningArea(aItem->GetPositioningArea())
85
  , mWindowIsActive(aItem->IsWindowActive())
86
0
{
87
0
}
88
89
void
90
nsDisplayThemedBackgroundGeometry::MoveBy(const nsPoint& aOffset)
91
0
{
92
0
  nsDisplayItemGeometry::MoveBy(aOffset);
93
0
  mPositioningArea.MoveBy(aOffset);
94
0
}
95
96
nsDisplayBoxShadowInnerGeometry::nsDisplayBoxShadowInnerGeometry(
97
  nsDisplayItem* aItem,
98
  nsDisplayListBuilder* aBuilder)
99
  : nsDisplayItemGeometry(aItem, aBuilder)
100
  , mPaddingRect(aItem->GetPaddingRect())
101
0
{
102
0
}
103
104
void
105
nsDisplayBoxShadowInnerGeometry::MoveBy(const nsPoint& aOffset)
106
0
{
107
0
  nsDisplayItemGeometry::MoveBy(aOffset);
108
0
  mPaddingRect.MoveBy(aOffset);
109
0
}
110
111
nsDisplayBoxShadowOuterGeometry::nsDisplayBoxShadowOuterGeometry(
112
  nsDisplayItem* aItem,
113
  nsDisplayListBuilder* aBuilder,
114
  float aOpacity)
115
  : nsDisplayItemGenericGeometry(aItem, aBuilder)
116
  , mOpacity(aOpacity)
117
0
{
118
0
}
119
120
void
121
nsDisplaySolidColorRegionGeometry::MoveBy(const nsPoint& aOffset)
122
0
{
123
0
  nsDisplayItemGeometry::MoveBy(aOffset);
124
0
  mRegion.MoveBy(aOffset);
125
0
}
126
127
nsDisplaySVGEffectGeometry::nsDisplaySVGEffectGeometry(
128
  nsDisplaySVGEffects* aItem,
129
  nsDisplayListBuilder* aBuilder)
130
  : nsDisplayItemGeometry(aItem, aBuilder)
131
  , mBBox(aItem->BBoxInUserSpace())
132
  , mUserSpaceOffset(aItem->UserSpaceOffset())
133
  , mFrameOffsetToReferenceFrame(aItem->ToReferenceFrame())
134
0
{
135
0
}
136
137
void
138
nsDisplaySVGEffectGeometry::MoveBy(const nsPoint& aOffset)
139
0
{
140
0
  mBounds.MoveBy(aOffset);
141
0
  mFrameOffsetToReferenceFrame += aOffset;
142
0
}
143
144
nsDisplayMaskGeometry::nsDisplayMaskGeometry(nsDisplayMask* aItem,
145
                                             nsDisplayListBuilder* aBuilder)
146
  : nsDisplaySVGEffectGeometry(aItem, aBuilder)
147
  , nsImageGeometryMixin(aItem, aBuilder)
148
  , mDestRects(aItem->GetDestRects())
149
  , mOpacity(aItem->Frame()->StyleEffects()->mOpacity)
150
  , mHandleOpacity(aItem->ShouldHandleOpacity())
151
0
{
152
0
}
153
154
nsDisplayFilterGeometry::nsDisplayFilterGeometry(nsDisplayFilter* aItem,
155
                                                 nsDisplayListBuilder* aBuilder)
156
  : nsDisplaySVGEffectGeometry(aItem, aBuilder)
157
  , nsImageGeometryMixin(aItem, aBuilder)
158
0
{
159
0
}
160
161
nsCharClipGeometry::nsCharClipGeometry(nsCharClipDisplayItem* aItem,
162
                                       nsDisplayListBuilder* aBuilder)
163
  : nsDisplayItemGenericGeometry(aItem, aBuilder)
164
  , mVisIStartEdge(aItem->mVisIStartEdge)
165
  , mVisIEndEdge(aItem->mVisIEndEdge)
166
0
{
167
0
}
168
169
nsDisplayTableItemGeometry::nsDisplayTableItemGeometry(
170
  nsDisplayTableItem* aItem,
171
  nsDisplayListBuilder* aBuilder,
172
  const nsPoint& aFrameOffsetToViewport)
173
  : nsDisplayItemGenericGeometry(aItem, aBuilder)
174
  , nsImageGeometryMixin(aItem, aBuilder)
175
  , mFrameOffsetToViewport(aFrameOffsetToViewport)
176
0
{
177
0
}