Commit Graph

171575 Commits

Author SHA1 Message Date
L. David Baron
b109d5c930 Bug 979557: CanAnimatePropertyOnCompositor should return early when there's no OMT compositing, whether or not logging is enabled. r=dzbarsky
This shouldn't behave differently depending on whether or not logging is
enabled; that difference was introduced in bug 785648.
2014-03-04 20:13:22 -08:00
L. David Baron
383c71d957 Bug 979555: Add default value for layers.offmainthreadcomposition.log-animations preference to all.js. r=dzbarsky
It's good practice to have default values for all preferences in all.js.
Otherwise some preference APIs throw exceptions and/or leave values
uninitialized.  It also makes the preference show up in about:config.

Bug 875204 accidentally removed this line from all.js even though the
pref was not removed.  (The pref was initially added in bug 780342.)
2014-03-04 20:13:22 -08:00
L. David Baron
c9ae86a635 Bug 828173 patch 6: Remove calls to ForceLayerRerendering from the miniflush code (UpdateThrottledStyles, which flushes animations whose main thread updates are throttled without updating any other styles). r=mattwoodrow
I've been wanting to remove this code for a while.  I think this code is
problematic for three reasons:

 (1) It's in the middle of code where it doesn't belong, and which ought
     to be handling purely-style-system things.  (This is blocking me
     from reusing that code elsewhere, e.g., in bug 977991 and
     bug 960465, both of which could use it in some form.)

 (2) It defeats the optimization from bug 790505 whenever we do a
     miniflush (in other words, whenever we have any style change,
     whether or not it's related)

 (3) It means the conditions for when we decide to ship a new set of
     animation data to a layer doesn't cover all the cases the layer
     needs it.  In particular, we only run this miniflush code when we
     have a currently running animation or transition that's running on
     the compositor thread.  On the other hand, the UpdateTransformLayer
     style change handling in DoApplyRenderingChangeToTree depends on
     whether the frame currently has a transform layer, which can
     continue to be true for a bit after the animation stops.  So if we
     need to send animations to the layer because of a transform style
     change that happens soon after an animation completes, our style
     change handling will find the existing layer and call its
     SetBaseTransformForNextTransaction method but never do anything
     that triggers layer construction.  The style throttling code, in
     turn, will never stop doing main thread updates because the
     animation generation on the layer is out-of-date, and these main
     thread updates will keep the layer active, but they'll never show
     up because the stale animation data overrides the new transform
     that we've been setting.  (At least, I think that's what was
     happening; it makes sense to me and matches the behavior I was
     observing.  I didn't verify which main thread updates and which
     layer updates were actually happening, though.)

     This shows up, for example, in the animation in attachment 8384813
     just halting at a corner if I'm careful not to disturb it.  (I'm
     testing on Linux, with both accelerated layers and OMT animations
     explicitly enabled.)

I think there are probably some other things that can be removed as
followups to removing this code, because I think we made some boundary
conditions intentionally incorrect so that problem (3) above wouldn't be
as bad as it otherwise would have been.
2014-03-04 20:13:22 -08:00
L. David Baron
b98ff26924 Bug 828173 patch 5: Call AddAnimationsAndTransitionsToLayer when we choose not to repaint when handling an UpdateTransformLayer hint, so that any new animations resulting from the style change get sent to the layer. r=mattwoodrow 2014-03-04 20:13:22 -08:00
L. David Baron
4603813c94 Bug 828173 patch 4: Expose AddAnimationsAndTransitionsToLayer and allow it to be called from style change handling. r=mattwoodrow 2014-03-04 20:13:21 -08:00
L. David Baron
358f564ab9 Bug 828173 patch 3.5: Move GetTransformRootFrame to nsLayoutUtils. r=mattwoodrow 2014-03-04 20:13:21 -08:00
L. David Baron
365f5250f9 Bug 828173 patch 3: Add a concept of pending animations to Layer, like pending transform. r=mattwoodrow 2014-03-04 20:13:21 -08:00
L. David Baron
4bc85751cb Bug 828173 patch 2: Make Layer::AddAnimation have the caller fill in the data instead of taking parameters. r=mattwoodrow
(This is a bigger simplification later in the patch queue, when I add a
variant of AddAnimation called AddAnimationForNextTransaction.)
2014-03-04 20:13:21 -08:00
L. David Baron
4d4545cfcb Bug 828173 patch 1: Add nsLayoutUtils::GetReferenceFrame. r=mattwoodrow 2014-03-04 20:13:21 -08:00
L. David Baron
ef65031de5 Bug 978903: Fix some uninitialized variable warnings in the CSS parser. r=heycam
The first provides a reasonable default (failure to parse) for the case
of an unknown value type (which should never happen).

The second reorders two failure checks so that the one that returns
early when units is uninitialized happens before the one that looks at
units.
2014-03-04 20:13:20 -08:00
L. David Baron
537d857ff5 Bug 978648: Handle dynamic changes to @keyframes rules and keyframe rules better. r=heycam 2014-03-04 20:13:20 -08:00
L. David Baron
ef278311e1 Bug 621618 patch 4: Make conditions in Element::RemoveFromIdTable match those in AddToIdTable, to avoid asymmetric calls to the document's functions. r=bzbarsky 2014-03-04 20:13:20 -08:00
L. David Baron
c37c08d10e Bug 621618 patch 3: Add FIXMEs in nsXULDocument for ID handling. r=bzbarsky 2014-03-04 20:13:20 -08:00
L. David Baron
69ad1b9e44 Bug 621618 patch 2: Make nsXMLElement reuse Element::AddToIdTable and Element::RemoveFromIdTable thoroughly. r=bzbarsky 2014-03-04 20:13:20 -08:00
L. David Baron
9dc98d8810 Bug 621618 patch 1: Remove BindToTree overrides in nsXMLElement that exist only to make AddToIdTable/RemoveFromIdTable calls already in the base class (Element). r=bzbarsky
I think this could have been done as part of Bug 700981 part 2, which
moved AddToIdTable and RemoveFromIdTable calls from nsStyledElement to
nsGenericElement.
2014-03-04 20:13:20 -08:00
L. David Baron
dfeaacc718 Bug 976777: Truncate long source lines in script errors before sending them to the parent process. r=bent
This fixes an out-of-memory foreground-tab crash that I could reliably
reproduce on a 256MB Firefox OS phone, and I think also significantly
reduces the number of background tabs I'm seeing killed due to low
memory.
2014-03-04 20:13:19 -08:00
L. David Baron
ee3d9471bc Fix merge error between bug 872273 (changeset 46df3fd9b0dc) and bug 946065 (changeset 243259fda9ab) and move this test to the directory where it's listed in mochitest.ini so it will actually be run. No review.
Bug 979640 is filed on making this mistake harder.

--HG--
rename : content/xbl/test/test_bug872273.xhtml => dom/xbl/test/test_bug872273.xhtml
2014-03-04 20:13:19 -08:00
Jim Blandy
b789a57871 Bug 800200: Print a deprecation warning to the console when JSD is first used. r=bholley 2014-03-04 20:09:15 -08:00
Matthew Gregan
008bca7069 Bug 979100 - Refactor MediaSource's EndOfStream. r=cajbir 2014-03-05 16:35:47 +13:00
Matthew Gregan
569e29ee6e Bug 979099 - Refactor MediaSource's IsTypeSupported. r=cajbir 2014-03-05 16:35:47 +13:00
Matthew Gregan
db37ba47ff Bug 979096 - Rename PR_LOG uses to MSE_LOG in content/media/mediasource. r=cajbir 2014-03-05 16:35:46 +13:00
Andrea Marchesini
aae5561a7c Bug 966054 - MessagePort should use StructuredCloneBuffer as internal member, r=smaug 2014-03-05 03:28:20 +00:00
Andrea Marchesini
66a700605d Bug 979109 - termination string check in Console.cpp, r=smaug 2014-03-05 03:22:32 +00:00
Ehsan Akhgari
258b9a4469 Bug 979681 - Correctly handle SOURCES.flags for sources with relative paths in them; r=glandium 2014-03-04 21:36:16 -05:00
Jed Davis
f6ffcce7a8 Bug 946407 - Disable sandbox when DMDing. r=njn r=kang
See also bug 956961.
2014-03-04 18:27:14 -08:00
Jed Davis
906a754859 Bug 946407 - Reimplement DumpMemoryInfoToTempDir in terms of GetReports. r=njn
This winds up exposing things in the nsIMemoryReporterManager interface
that arguably don't belong at that level of abstraction -- "minimize
memory usage first" and DMD -- in order to take advantage of the
infrastructure that GetReports already has for managing the child
processes.
2014-03-04 18:27:13 -08:00
Wes Kocher
1b6419575b Backed out changeset f814a1a08de6 (bug 865241) for failing at least once per push since the test landed 2014-03-04 18:22:18 -08:00
William Chen
aea72816f8 Bug 901319 - Implement HTML spec change to Adoption Agency Algorithm to not reverse the order of nodes in the document, by removing nodes that we're not recreating from the stack of open elements. r=hsivonen 2014-03-04 18:06:15 -08:00
William Chen
e3e29f278c Bug 978398 - Rename custom element callbacks from enteredView/leftView to attached/detached. r=mrbkap 2014-02-28 17:45:31 -08:00
Seth Fowler
3bc6902fe8 Bug 952354 - Draw non-premultiplied alpha raster image frames if the frame is opaque. r=jrmuizel
--HG--
extra : rebase_source : 62956f725b3a4765a7617a37bf79b4be2e37c739
2014-03-04 17:59:03 -08:00
Eitan Isaacson
9da81ab90d Bug 976274 - Introduce hide support. r=yzen 2014-03-04 17:49:27 -08:00
Eitan Isaacson
dbab3c65b9 Bug 976271 - Add dialog tests to jsat suite. r=yzen 2014-03-04 17:49:27 -08:00
Eitan Isaacson
80a559af9a Bug 965537 - [AccessFu] Introduce ContentControl. r=yzen 2014-03-04 17:49:27 -08:00
Mihaela Velimiroviciu
6cead5f1b3 Bug 959973 - Add tests for using variables in external style sheets. r=heycam,ted 2014-03-05 12:29:44 +11:00
Brian Birtles
1b317920a5 Bug 972199 part 3 - Fix comment in ElementAnimations::GetPositionInIteration; r=nrc
Make comment reflect current parameter names.
2014-03-05 10:19:16 +09:00
Brian Birtles
a863a20459 Bug 972199 part 2 - Add a crashtest for restoring the refresh driver after an advance; r=nrc
In this crash test we restore the refresh driver after manually advancing it.
This causes a situation where a layer has an animation that has yet to start.

Prior to modifying ElementAnimations::GetPositionIteration this test case would
trip an assertion there that rejected negative elapsed times when called from
the compositor thread.
2014-03-05 10:19:15 +09:00
Brian Birtles
2f7bcc48d5 Bug 972199 part 1 - Make SampleAnimations filter out animations that are yet to start; r=nrc
When restoring the refresh driver after testing we can arrive at a situation
where a layer has an animation that has yet to start. However, calling
ElementAnimations::GetPositionInIteration with a negative value from the
compositor thread is an error.

This patch detects animations on the compositor thread that are yet-to-start and
skips them when sampling. It also moves the activeAnimations = true line up as
otherwise we would need special logic to wake up the compositor after the delay
has finished.
2014-03-05 10:19:15 +09:00
Haitao Feng
8a13421d9e Bug 943769 Part 2 -- Set up SIMD inlining infrastructure r=nmatsakis 2014-03-04 20:06:26 -05:00
Haitao Feng
357f0d49f1 Bug 943769 Part 1 -- Use macros to declare and define SIMD functions r=nmatsakis 2014-03-04 20:06:25 -05:00
Terrence Cole
65c199721a Bug 969012 - Use a second register for object allocation; r=jandem
--HG--
extra : rebase_source : 2cbc07d17ed3cf84fbc2590745a4c22a62ee573c
2014-02-17 17:39:14 -08:00
Ehsan Akhgari
444a26ed8e Bug 976896 - Port STL_FLAGS to moz.build; r=mshal 2014-03-04 19:39:06 -05:00
Masayuki Nakano
66706f5a6e Bug 975688 part.28 Rename nsDOMEvent to mozilla::dom::Event r=smaug
--HG--
rename : dom/events/nsDOMEvent.cpp => dom/events/Event.cpp
rename : dom/events/nsDOMEvent.h => dom/events/Event.h
2014-03-05 09:37:43 +09:00
Daniel Schattenkirchner
03ba3b1907 Bug 921761 - margin-collapsing test suite, wave 8; dynamic and additional cases for margins of a BFC; Multi-column margins; margins given in percent and em; r=dholbert
--HG--
rename : layout/reftests/margin-collapsing/block-abs-pos-1.html => layout/reftests/margin-collapsing/block-abs-pos-1-dyn.html
rename : layout/reftests/margin-collapsing/block-abs-pos-2.html => layout/reftests/margin-collapsing/block-abs-pos-2-dyn.html
rename : layout/reftests/margin-collapsing/block-float-1a.html => layout/reftests/margin-collapsing/block-float-1a-dyn.html
rename : layout/reftests/margin-collapsing/block-float-1b.html => layout/reftests/margin-collapsing/block-float-1b-dyn.html
rename : layout/reftests/margin-collapsing/block-float-2a.html => layout/reftests/margin-collapsing/block-float-2a-dyn.html
rename : layout/reftests/margin-collapsing/block-float-2b.html => layout/reftests/margin-collapsing/block-float-2b-dyn.html
rename : layout/reftests/margin-collapsing/block-no-content-1a.html => layout/reftests/margin-collapsing/block-no-content-1a-dyn.html
rename : layout/reftests/margin-collapsing/block-no-content-1b.html => layout/reftests/margin-collapsing/block-no-content-1b-dyn.html
rename : layout/reftests/margin-collapsing/block-no-content-1c.html => layout/reftests/margin-collapsing/block-no-content-1c-dyn.html
rename : layout/reftests/margin-collapsing/block-no-content-2a.html => layout/reftests/margin-collapsing/block-no-content-2a-dyn.html
rename : layout/reftests/margin-collapsing/block-no-content-2b.html => layout/reftests/margin-collapsing/block-no-content-2b-dyn.html
rename : layout/reftests/margin-collapsing/block-no-content-2c.html => layout/reftests/margin-collapsing/block-no-content-2c-dyn.html
rename : layout/reftests/margin-collapsing/block-no-content-2d.html => layout/reftests/margin-collapsing/block-no-content-2d-dyn.html
rename : layout/reftests/margin-collapsing/block-no-content-3.html => layout/reftests/margin-collapsing/block-no-content-3a-dyn.html
rename : layout/reftests/margin-collapsing/block-no-content-3.html => layout/reftests/margin-collapsing/block-no-content-3a.html
rename : layout/reftests/margin-collapsing/block-no-content-4.html => layout/reftests/margin-collapsing/block-no-content-4a-dyn.html
rename : layout/reftests/margin-collapsing/block-no-content-4.html => layout/reftests/margin-collapsing/block-no-content-4a.html
rename : layout/reftests/margin-collapsing/block-overflow-1.html => layout/reftests/margin-collapsing/block-overflow-1-dyn.html
rename : layout/reftests/margin-collapsing/block-overflow-2.html => layout/reftests/margin-collapsing/block-overflow-2-dyn.html
rename : layout/reftests/margin-collapsing/block-overflow-3.html => layout/reftests/margin-collapsing/block-overflow-3-dyn.html
rename : layout/reftests/margin-collapsing/block-overflow-4.html => layout/reftests/margin-collapsing/block-overflow-4-dyn.html
rename : layout/reftests/margin-collapsing/block-overflow-5a.html => layout/reftests/margin-collapsing/block-overflow-5a-dyn.html
rename : layout/reftests/margin-collapsing/block-overflow-5b.html => layout/reftests/margin-collapsing/block-overflow-5b-dyn.html
rename : layout/reftests/margin-collapsing/block-overflow-5c.html => layout/reftests/margin-collapsing/block-overflow-5c-dyn.html
rename : layout/reftests/margin-collapsing/block-overflow-5d.html => layout/reftests/margin-collapsing/block-overflow-5d-dyn.html
rename : layout/reftests/margin-collapsing/block-percent-1.html => layout/reftests/margin-collapsing/block-percent-1-dyn.html
rename : layout/reftests/margin-collapsing/fieldset-child-1.html => layout/reftests/margin-collapsing/fieldset-child-1-dyn.html
rename : layout/reftests/margin-collapsing/fieldset-sibling-1a.html => layout/reftests/margin-collapsing/fieldset-sibling-1a-dyn.html
rename : layout/reftests/margin-collapsing/fieldset-sibling-1b.html => layout/reftests/margin-collapsing/fieldset-sibling-1b-dyn.html
rename : layout/reftests/margin-collapsing/fieldset-sibling-1c.html => layout/reftests/margin-collapsing/fieldset-sibling-1c-dyn.html
rename : layout/reftests/margin-collapsing/fieldset-sibling-2a.html => layout/reftests/margin-collapsing/fieldset-sibling-2a-dyn.html
rename : layout/reftests/margin-collapsing/fieldset-sibling-2b.html => layout/reftests/margin-collapsing/fieldset-sibling-2b-dyn.html
rename : layout/reftests/margin-collapsing/fieldset-sibling-2c.html => layout/reftests/margin-collapsing/fieldset-sibling-2c-dyn.html
rename : layout/reftests/margin-collapsing/inline-block-child-1.html => layout/reftests/margin-collapsing/inline-block-child-1-dyn.html
rename : layout/reftests/margin-collapsing/inline-block-child-2.html => layout/reftests/margin-collapsing/inline-block-child-2-dyn.html
rename : layout/reftests/margin-collapsing/inline-block-sibling-1a.html => layout/reftests/margin-collapsing/inline-block-sibling-1a-dyn.html
rename : layout/reftests/margin-collapsing/inline-block-sibling-1b.html => layout/reftests/margin-collapsing/inline-block-sibling-1b-dyn.html
rename : layout/reftests/margin-collapsing/inline-block-sibling-1c.html => layout/reftests/margin-collapsing/inline-block-sibling-1c-dyn.html
rename : layout/reftests/margin-collapsing/inline-block-sibling-2.html => layout/reftests/margin-collapsing/inline-block-sibling-2-dyn.html
rename : layout/reftests/margin-collapsing/table-caption-1a.html => layout/reftests/margin-collapsing/table-caption-1a-dyn.html
rename : layout/reftests/margin-collapsing/table-caption-1b.html => layout/reftests/margin-collapsing/table-caption-1b-dyn.html
rename : layout/reftests/margin-collapsing/table-caption-2a.html => layout/reftests/margin-collapsing/table-caption-2a-dyn.html
rename : layout/reftests/margin-collapsing/table-caption-2b.html => layout/reftests/margin-collapsing/table-caption-2b-dyn.html
rename : layout/reftests/margin-collapsing/table-caption-2c.html => layout/reftests/margin-collapsing/table-caption-2c-dyn.html
rename : layout/reftests/margin-collapsing/table-caption-bottom-1.html => layout/reftests/margin-collapsing/table-caption-bottom-1-dyn.html
rename : layout/reftests/margin-collapsing/table-caption-bottom-2.html => layout/reftests/margin-collapsing/table-caption-bottom-2-dyn.html
rename : layout/reftests/margin-collapsing/table-caption-top-1.html => layout/reftests/margin-collapsing/table-caption-top-1-dyn.html
rename : layout/reftests/margin-collapsing/table-caption-top-2.html => layout/reftests/margin-collapsing/table-caption-top-2-dyn.html
2014-03-04 14:09:37 -08:00
Andrew McCreight
91a5906974 Bug 979047, part 5 - Make sure we have at least one early forgetSkippable timer fire. r=smaug
With ICC, ccDelay can get close to NS_CC_SKIPPABLE_DELAY, but we want to always want to run at least one forgetSkippable before the actual CC.
2014-03-04 16:21:48 -08:00
Andrew McCreight
a610a708e0 Bug 979047, part 4 - Run ICCSliceTime() after PrepareForCollectionSlice. r=smaug
This way we take into account time spent finishing off a GC, or something.
2014-03-04 16:21:48 -08:00
Andrew McCreight
dfab6771ec Bug 979047, part 3 - Make sure we trigger a GC after a current ICC when we poke the GC. r=smaug 2014-03-04 16:21:48 -08:00
Andrew McCreight
89c6b53b41 Bug 979047, part 2 - Remove unused endGCTime assignments. r=smaug 2014-03-04 16:21:48 -08:00
Andrew McCreight
b04be18580 Bug 979047, part 1 - Only clear mBeginSliceTime in EndCycleCollectionCallback. r=smaug
Run FinishCycleCollectionSlice only once per slice, and only if we've previously run PrepareForCycleCollectionSlice.
2014-03-04 16:21:48 -08:00
Geoff Brown
b354355c41 Bug 979621 - Disable testNewTab on Android 2.3 2014-03-04 17:02:05 -07:00
Geoff Brown
c571f9f4d5 Bug 979620 - Disable testGetUserMedia on Android 2.3 2014-03-04 17:02:05 -07:00