Commit Graph

29822 Commits

Author SHA1 Message Date
Bobby Holley
fe9f1a2d22 Bug 1258017 - Redesign and simplify rule tree GC. r=dbaron a=ritu
The basic idea here is as follows:
* Rule nodes are reference-counted, but releasing them adds them to a linked
  list rather than freeing them. This allows for the reuse that motivated the
  original GC scheme.
* We get rid of the marking, and instead rely on the reference count.
* Sweeping no longer requires a complicated traversal. We just pop items
  off the free list until it's empty. When a child is destroyed, its parent
  may go onto the free list.
* We remove special handling for the root node, and use a regular reference-counted
  edge from the style set.
* The free list automatically asserts that it's empty (meaning all nodes have been
  freed) in its destructor, which runs when the style set is destroyed.
* We get rid of the list of style context roots on the style set. We still need
  a count though, because of the HasCachedStyleData check.
2016-04-19 12:23:26 -07:00
Bobby Holley
10661c2456 Bug 1258017 - Use a RefPtr to hold onto the parent style context. r=dbaron 2016-04-19 12:23:26 -07:00
Bobby Holley
6e09db3326 Bug 1258017 - Use an nsCOMPtr to hold onto the nsIStyleRule. r=dbaron 2016-04-19 12:23:26 -07:00
Wes Kocher
2c35584a54 Backed out 3 changesets (bug 1258017) for android r24 crashes in download-3-notref.html a=backout
Backed out changeset 1287b9f362ee (bug 1258017)
Backed out changeset ece911f4b8e3 (bug 1258017)
Backed out changeset bceb57212824 (bug 1258017)

MozReview-Commit-ID: EtNPchp8f99
2016-04-19 11:12:15 -07:00
Bobby Holley
17b7bc209b Bug 1258017 - Redesign and simplify rule tree GC. r=dbaron a=ritu
The basic idea here is as follows:
* Rule nodes are reference-counted, but releasing them adds them to a linked
  list rather than freeing them. This allows for the reuse that motivated the
  original GC scheme.
* We get rid of the marking, and instead rely on the reference count.
* Sweeping no longer requires a complicated traversal. We just pop items
  off the free list until it's empty. When a child is destroyed, its parent
  may go onto the free list.
* We remove special handling for the root node, and use a regular reference-counted
  edge from the style set.
* The free list automatically asserts that it's empty (meaning all nodes have been
  freed) in its destructor, which runs when the style set is destroyed.
* We get rid of the list of style context roots on the style set. We still need
  a count though, because of the HasCachedStyleData check.
2016-04-18 17:12:34 -07:00
Bobby Holley
15ee34aca0 Bug 1258017 - Use a RefPtr to hold onto the parent style context. r=dbaron 2016-04-18 17:09:03 -07:00
Bobby Holley
fcdabfac83 Bug 1258017 - Use an nsCOMPtr to hold onto the nsIStyleRule. r=dbaron 2016-04-18 17:09:03 -07:00
L. David Baron
a0b014323e Bug 1256745 - Cancel the DidPaint timer in SetShell(nullptr). r=mattwoodrow a=ritu
MozReview-Commit-ID: KwtJD4AywX1
2016-03-16 13:47:41 -07:00
Markus Stange
1d089c8632 Bug 1264092 - Don't use scrollingElement in this reftest. r=kats a=testonly
MozReview-Commit-ID: JqbgIkmnH3h
2016-04-13 13:33:23 -04:00
Markus Stange
ac59752bcf Bug 1260335 - On perspective ContainerLayers, the clip deferred from their child layer needs to be affected by the perspective layer's async transforms. r=botond a=ritu
MozReview-Commit-ID: EEgsdFXGI1E
2016-04-04 23:21:31 -04:00
Matt Woodrow
e41cd97e19 Bug 1238928 - Don't assume that our child list is unchanged in nsDisplayPerspective::BuildLayer. r=tnikkel, a=lizzard 2016-04-01 14:37:15 +13:00
Kartikaya Gupta
76c3cd8735 Bug 1254273 - Align the displayport to a max of 256 pixels even if the layer is larger. r=BenWa, a=ritu
MozReview-Commit-ID: CLghUMWkJU8
2016-03-14 15:02:43 -04:00
Matt Woodrow
6dc4cdc386 Bug 1258843 - Don't build SVG display items if their visibility is hidden. r=dholbert, a=ritu 2016-04-01 14:36:46 +13:00
Ting-Yu Chou
8d91f7c463 Bug 1197913 - Keep the last hovered item highlighted after moving the cursor outside the <select> drop-down list on Windows. r=neil, a=ritu
MozReview-Commit-ID: 1mWm5ltckHl
2016-03-25 17:10:16 +08:00
Matt Woodrow
854e4a232b Bug 1251527 - Don't override visible regions for background-attachment:fixed. r=mstange, a=ritu 2016-03-09 17:35:48 +13:00
Jonathan Kew
4324c663de Bug 1249279 - Let subdocuments' presContexts inherit the DPI setting of their parent, instead of retrieving it from their widget, to avoid using stale values from a currently-hidden widget on a screen with a different DPI. r=bz a=ritu 2016-04-07 10:01:30 +01:00
Jeff Muizelaar
22e17895c3 Bug 1258650 - Properly use aExtraMasksTransform when combining masks. r=Bas, a=sledru
Previously we were ignoring the scale.
2016-04-06 13:19:00 -04:00
Gabor Krizsanits
865430497d Bug 1247420 - Part 1: removeContentState. r=smaug, a=ritu 2016-03-30 11:54:27 +02:00
Bobby Holley
eb4f505d2d Bug 1259677 - nsRuleNode passes wrong hash key to PLDHashTable when converting child list into child hash. r=bz, a=ritu 2016-03-24 22:49:27 -07:00
Mason Chang
a97ce317b4 Bug 1250947. Fill area outside blur with solid color. r=mstange a=ritu
MozReview-Commit-ID: 4OTU1v4nMv
2016-03-29 08:24:21 -07:00
Tobias Schneider
d9f822bff9 Bug 1237198 - [experiment] Block SWFs on the content blocking list hosted on the Shavar service 0.6.9 r=francois a=ritu
MozReview-Commit-ID: 7Zgdjph7wN3
2016-04-06 16:34:08 -07:00
Markus Stange
b1d2e6afb9 Bug 1244258 - Back out bug 1201327 on Aurora in order to fix bug 1227327 and friends. a=lizzard 2016-04-05 18:28:52 -04:00
Timothy Nikkel
56b0fcfd9d Bug 1261230. r=mats, a=ritu 2016-04-02 01:54:00 -05:00
Kartikaya Gupta
14d4c0d15a Bug 1261062 - When constraining the displayport by the max texture size, maintain the relative distribution of the margins. r=dvander, a=ritu
MozReview-Commit-ID: GsQBy0rIlP5
2016-04-01 08:03:28 -04:00
L. David Baron
4833aa2b7a Bug 1182247 - Only RegisterPluginForGeometryUpdates in nsPluginFrame::EndSwapDocShells if mInstanceOwner is non-null. r=tnikkel, a=ritu
Having a non-null mInstanceOwner corresponds to when registration
normally happens (from nsPluginInstanceOwner::SetFrame), and it's
disconnecting the instance owner that leads to unregistration.

MozReview-Commit-ID: 3X15t9zoXIj
2016-03-17 17:57:53 -07:00
Timothy Nikkel
279f8ddf69 Bug 1251150. Add crash annotations if image visibility is re-entering. r=mats a=ritu
The previous annotations only checked if the re-entrancy happened via DecrementVisibleCount.

The check in RebuildApproximateFrameVisibility is not needed because we add a check in DoUpdateApproximateFrameVisibility.

The check in ClearApproximatelyVisibleFramesList is not needed because we add checks in DoUpdateApproximateFrameVisibility and Destroy. The other caller, ClearApproximateFrameVisibilityVisited, is covered because it is only called from DoUpdateApproximateFrameVisibility.

MozReview-Commit-ID: 5UaOQ4l50wP
2016-04-04 15:57:59 -07:00
Benoit Girard
3cff7a768a Bug 1257369 - Suppress the DisplayPort when scrolling via nsSliderFrame. r=kats a=ritu
MozReview-Commit-ID: 8I3UfWlkdPq
2016-03-18 14:46:54 -04:00
Brendan Dahl
baa4e8fe97 Bug 1256084 - Don't force reflow on size mode change. r=heycam, a=ritu 2016-03-28 10:40:00 -04:00
Markus Stange
709c592838 Bug 1209100 - Back out bug 1165185. a=lizzard
MozReview-Commit-ID: JqohyXNvjiU
2016-03-21 16:45:32 -04:00
Andrew Halberstadt
85af2a77f3 Bug 1245092 - Fix beta-only non-local network bustage on reftest, r=me, a=test-only
MozReview-Commit-ID: 1N6lsrbMNyI
2016-03-14 17:00:40 -04:00
Matt Woodrow
e3a56c7e31 Bug 1220466 - Don't build event region display items for pseudo stacking contexts, unless they are also an AGR. r=mstange, a=ritu 2016-03-10 13:55:00 +13:00
Brian Birtles
daeb4f338c Bug 1245260 - Add crashtest; r=hiro a=ritu
MozReview-Commit-ID: IBe0zbsCJJy
2016-03-24 09:04:53 +09:00
Brian Birtles
cfb0417f52 Bug 1245260 - Ignore redundant calls to RestyleManager::IncrementAnimationGeneration; r=dbaron a=ritu
While processing restyles and starting transitions, we may trigger
a call to EffectCompositor::UpdateCascadeResults which may, in turn, call
EffectCompositor::RequestRestyle with RestyleType::Layer, which ultimately
results in a call to RestyleManager::IncrementAnimationGeneration().

Typically, nsTransitionManager::StyleContextChanged compares the animation
generation on its collection with that of the restyle manager and uses this
to ignore the restyle that it generates. However, given the sequence of events
above, that check may no longer help since the restyle manager's animation
generation will be out of step. As a result,
nsTransitionManager::StyleContextChanged will fail to ignore a subsequent
and redundant restyle. With certain combinations of content, this can mean that
restyles are posted in such a manner than an infinite cycle of restyles ensues.

This patch causes RestyleManager to ignore calls to IncrementAnimationGeneration
when it is already processing restyles such that the animation generation is
only ever updated once per restyle. This makes the check for a matching
animation generation in nsTransitionManager::StyleContextChanged work as
expected, preventing us from generating needless transitions which can produce
this endless loop.

MozReview-Commit-ID: 9HYDrknKPAI
2016-03-16 15:05:10 +08:00
Markus Stange
3dadaea877 Bug 1255068 - Do not allow empty transaction transform changes if the scroll position has changed since the last paint. r=kats, r=mattwoodrow, a=ritu
MozReview-Commit-ID: 7exuhuf3HTJ

***

Bug 1255068 - Add a check for null scrollid. r=kats

MozReview-Commit-ID: 15lbTMb76np
2016-03-24 16:19:14 -04:00
Timothy Nikkel
346a596c50 Bug 1251150 - Add crash annotations if image visibility is re-entering. r=mats, a=ritu 2016-03-14 22:59:02 -05:00
Timothy Nikkel
3777573189 Bug 1251150 - Add some crash annotations to try to track down a crash bug. r=dholbert, a=ritu 2016-03-10 00:37:19 -06:00
Jonathan Kew
e39045d1a4 Bug 1140413 - Mark subsuper-fallback.html test as random on Android (as well) due to bug 1139269. (manifest annotation, no review) a=test-only 2016-03-21 07:29:06 +00:00
Markus Stange
6b273ed5cc Bug 1248913 - Make nsDisplayBlendContainer active or inactive based on its contents. r=mattwoodrow, a=ritu
MozReview-Commit-ID: GN0084Rrmlm
2016-03-08 14:39:07 -05:00
Markus Stange
0cb7d62085 Bug 1248913 - Remove mCanBeActive and second nsDisplayBlendContainer constructor. r=mattwoodrow, a=ritu
MozReview-Commit-ID: Jcrip22bW5k
2016-03-08 14:38:22 -05:00
Markus Stange
00a98b95bf Bug 1248913 - Build nsDisplayBlendMode items for background-blend-mode. r=mattwoodrow, a=ritu
MozReview-Commit-ID: 72IzlcgHFtd
2016-03-08 14:22:36 -05:00
Markus Stange
19523a5f34 Bug 1248913 - Let nsDisplayBackgroundImage specify the background blend mode. r=mattwoodrow, a=ritu
This is needed because blending for nsDisplayBackgroundImage items will soon
happen outside of nsDisplayBackgroundImage::Paint, it will be done by an
nsDisplayBlendMode item that wraps the nsDisplayBackgroundImage item.

MozReview-Commit-ID: 20cILOGVFEG
2016-03-08 16:54:09 -05:00
Markus Stange
7736846620 Bug 1248913 - Rename nsDisplayMixBlendMode to nsDisplayBlendMode. r=mattwoodrow, a=ritu
We're going to use it both for background-blend-mode and for mix-blend-mode.

MozReview-Commit-ID: 6zKCDSkLspc
2016-03-05 17:04:02 -05:00
Markus Stange
6f08472a23 Bug 1248913 - Add a constructor argument to nsDisplayMixBlendMode that lets you specify the blend mode. r=mattwoodrow, a=ritu
MozReview-Commit-ID: 9MqjLKjRmeh
2016-03-05 16:39:25 -05:00
Markus Stange
294384e4cf Bug 1248913 - nsDisplayListBuilder doesn't need to know what blend modes it contains, just whether it contains any. r=mattwoodrow, a=ritu
MozReview-Commit-ID: 5yQcGnXBKKp
2016-03-05 12:46:14 -05:00
Carsten "Tomcat" Book
1a1d95ded9 Backed out changeset d84ed6588b23 (bug 1255068) for causing android crashes/assertions 2016-03-24 14:21:49 +01:00
Markus Stange
d4939592d9 Bug 1192910 - Stop triggering repaints when the displayport margins change without the displayport changing. r=kats, a=ritu
MozReview-Commit-ID: K1g6sNlZdRk
2016-03-07 16:27:41 -05:00
Carsten "Tomcat" Book
f4092f575d Backed out changeset 7e5731e04d40 (bug 1248913) for crashes in @ nsLayoutUtils::FindContentFo 2016-03-24 12:08:40 +01:00
Carsten "Tomcat" Book
1a4765c040 Backed out changeset 201a70d6ddc7 (bug 1248913) 2016-03-24 12:08:23 +01:00
Carsten "Tomcat" Book
47af01e197 Backed out changeset ca238297899e (bug 1248913) 2016-03-24 12:08:21 +01:00
Carsten "Tomcat" Book
e2a9f10560 Backed out changeset b5f16ce81326 (bug 1248913) 2016-03-24 12:08:19 +01:00