Commit Graph

1005 Commits

Author SHA1 Message Date
Brian Birtles
1161c15afd Bug 964646 part 5 - Add OMTA version of test_animations.html keyframe tests; r=dbaron 2014-04-03 16:55:45 +09:00
Brian Birtles
a6a988ba15 Bug 964646 part 4 - Add OMTA version of test_animations.html animation list tests; r=dbaron
Tests for animation list handling on the compositor thread. Some checks are
currently marked todo_is because they depend on Bug 980769 in order to pass.
2014-04-03 16:55:44 +09:00
Brian Birtles
c6c412f2a7 Bug 964646 part 3 - Refactor OMTA test methods to include opacity too; r=dbaron
This patch takes the compareTransform utility methods and makes them more
generic so they can be used for testing opacity too (the other property
currently animated on the compositor thread).

The naming omta_is and omta_is_approx is intended to mirror is and is_approx in
test_animations.html.
2014-04-03 16:55:44 +09:00
Brian Birtles
eced1fdb7c Bug 964646 part 2 - Add OMTA version of test_animations.html fill mode tests; r=dbaron
This patch adds an additional mochitest for specifically targetting CSS
Animations that run on the compositor thread. The content of the test mimicks
test_animations.html but using properties whose animations are expected to run
on the compositor thread.
2014-04-03 16:55:44 +09:00
Brian Birtles
1db86095cf Bug 964646 part 1 - Add common OMTA test runner to animation_utils.js; r=dbaron
Since off-main thread animation (OMTA) is not available on all platforms we
define a common wrapper function that runs OMTA tests only when available. This
patch further performs an internal check of basic OMTA operation so that
only a single error is produced if OMTA is unexpectedly unavailable.

Typical usage is:

  SimpleTest.waitForExplicitFinish();
  runOMTATest(function() {
    ... test code ...
    SimpleTest.finish();
  },
  SimpleTest.finish);

This can be easily wrapped with promises if needed but does not require using
promises.

The calls to waitForExplicitFinish and finish are not performed automatically
since this function may be integrated with test suites that do other work
outside the call to runOMTATest.
2014-04-03 16:55:44 +09:00
Cameron McCormack
efeaf8eada Bug 985838 - Change custom property name prefix from "var-" to "--" and allow identifiers to begin with "--". r=dbaron 2014-04-02 14:32:16 +11:00
Mark Hammond
cd2c8e6c5b Bug 987404 - Disable failing mochitest-browser tests in e10s. r=ted. 2014-04-02 10:53:55 +11:00
L. David Baron
e176d7070c Bug 989560 patch 2 - Don't accept an empty value for font-variant-alternates. r=heycam
Had patch 3 not been present, this would be needed to prevent a test
failure with patch 4 (which removes the ExpectEndProperty check from the
CSS_PROPERTY_PARSE_VALUE case in
CSSParserImpl::ParseProperty(nsCSSProperty) since its callers handle
checking for appropriate endings), since the way this function returns
success for empty values leads var() functions alone inside
font-variant-alternates to be rejected, since
CSSParserImpl::ParseProperty(nsCSSProperty) won't try reparsing with
variables.
2014-04-01 11:53:32 -07:00
L. David Baron
38512d8749 Bug 989560 patch 1 - Make it an error to have an empty item within an animation or transition shorthand. r=heycam
This is needed to make the test in the next patch (which tests that we
reject entirely-empty properties) pass.
2014-04-01 11:53:31 -07:00
L. David Baron
e19068ec03 Bug 988702 patch 3 - Fix missing UngetToken() calls in ParseCounterData(), and avoid evil CheckEndProperty() calls while I'm there. r=heycam
I tested that test_property_syntax_errors.html gives a failure on the
new test without the patch, and that the failure is not present with the
patch.
2014-04-01 11:53:31 -07:00
L. David Baron
c0359feda4 Bug 988702 patch 2 - Test invalid CSS property values for their balanced-ness of () [] or {}. r=heycam
(This provides an easy mechanism for testing for missing UngetToken()
calls as in the following patch.)
2014-04-01 11:53:31 -07:00
L. David Baron
b893b00a6e Bug 988702 patch 1 - Remove duplication between invalidGradientAndElementValues and the list of invalid values in background-image. r=heycam
Values that are already in invalidGradientAndElementValues don't also
need to be listed in an array that has invalidGradientAndElementValues
appended to it.
2014-04-01 11:53:31 -07:00
Simon Sapin
5ff2bb112e Bug 989755: Fix up serialization of the grid-template shorthand. r=dholbert
* Refuse to serialize some combinations of values that the shorthand
  can not represent: 'grid-template-areas: (not none)' combined with
  'grid-template-rows: subgrid' or 'grid-template-columns: subgrid'.
  (The former used to cause an assertion failure.)
* Remove an extraneous trailing space that occured when a <track-list>
  was last. (ie. followed by an omitted <line-names>)
* Add tests for the result of this serialization.
2014-03-31 13:31:00 +02:00
Simon Sapin
30a2740552 Bug 978478 part 2: Add support for repeat() in <track-list> (CSS Grid) r=dholbert 2014-03-31 22:49:51 -07:00
Simon Sapin
a43b6fb7ef Bug 978478 part 1: Add support for repeat() in <line-name-list> (CSS Grid) r=dholbert 2014-03-31 22:49:45 -07:00
L. David Baron
b6c4857c64 Bug 470769 - Store computed styles of integer-valued properties as integers in nsROCSSPrimitiveValue, so they round-trip correctly. r=bzbarsky 2014-03-29 09:29:30 -07:00
Simon Sapin
be63f95a8a Bug 983175 - Part 2: Add style system support for 'subgrid' in the grid-template* properties. r=dholbert
http://dev.w3.org/csswg/css-grid/#subgrids
2014-03-27 11:54:40 -04:00
Brian Birtles
8039fdb1db Bug 986367 - Make paint_listener.js check for paint suppression; r=mattwoodrow
This patch adds an extra check for paint suppression when waiting for paint
events. This is because on some platforms (notably B2G) we can think all paints
have completed because paint suppression is in effect and as a result call the
callback too soon.

This patch use window.setTimeout(..., 0) to wait for paint suppression to finish
before preceding to check for pending paint events.

When the refresh driver is under test control, if we detect that paint events
are pending we need to force a refresh driver tick. This patch adds that tick.
I suppose we had previously never hit this situation before and never noticed
this.

This patch also rearranges the main loop so that early returns appear first and
calling the callback appears at the end.
2014-03-26 09:20:07 +09:00
Boris Zbarsky
9486277bbe Bug 955860 followup to add a pointer to the source of the tests. 2014-03-21 23:07:12 -04:00
Simon Sapin
3f4edec9c7 Bug 981752 part 3: Add the grid shorthand. r=dholbert 2014-03-21 23:06:12 +08:00
Simon Sapin
66ccfed234 Bug 981752 part 2c: Add the grid-template shorthand. r=dholbert 2014-03-21 23:06:12 +08:00
Simon Sapin
d2b6314b7e Bug 981752 part 1: Add the grid-column, grid-row and grid-area shorthands. r=dholbert 2014-03-21 23:06:12 +08:00
Brian Birtles
07bc4e1535 Bug 975261 part 5 - Fix OMTA animations with backwards fill; r=dzbarsky
When we have a backwards fill and we sample at *exactly* the start of the
animation on the next refresh driver tick, when we get to
RestyleManager::ComputeStyleChangeFor (or more specifically
ElementRestyler::CaptureChange) we notice that the style hasn't changed (since
the first frame of the animation produces the same value as the backwards fill)
and end up with an empty change list. As a result we never schedule a view
manager flush and rebuild the layer. Hence, the animation never gets sent to the
compositor thread. On the next tick we're already throttling the main thread.

This patch fixes this by applying the same approach as is used for transitions,
that is, explicitly marking which animations are running on the compositor
thread so we know if we need to trigger a layer transaction or not. This should
not only be more robust than the previous code but also facilitate aligning
animations and transitions code (bug 880596).
2014-03-22 05:59:58 +08:00
Brian Birtles
a47c4d434e Bug 975261 part 4 - Add test for starting OMTA animations with backwards fill; r=dzbarsky
This test reproduces a bug where we don't send an animation to the compositor
thread. The important step is the sample precisely at the start of the animation
interval.
2014-03-22 05:59:58 +08:00
Brian Birtles
bea9d5001b Bug 975261 part 3 - Add test for transforms; r=dzbarsky
Adds a test for transform animations with a delay where there is already
a transform specified on the element.

This test used to fail but bug 828173 fixed it. It is included here as
a regression test.

(Prior to bug 828173 we were able to fix this by triggering
ForceLayerRerendering inside nsAnimationManager::nsFlushAnimations whenever we
detected *different* style rules but canThrottleTick=true)

The issue stemmed from the fact that when an element has a transform property,
LayerIsPrerenderedDataKey would get set on the layer because in
nsDisplayTransform::ShouldPrerenderTransformedContent we would only check for
the *presence* of an animation, not whether it is running. Then in
RestyleManager::DoApplyRenderingChangeToTree we wouldn't do an invalidating
paint because TryUpdateTransformOnly() returns true since it looks at
LayerIsPrerenderedDataKey.

Bug 828173 fixes this, at least in part, by checking if an animation is running.
This bug may resurface if we put animations with a delay on the compositor
thread hence it is worth including here.
2014-03-22 05:59:57 +08:00
Brian Birtles
d0333ac00a Bug 975261 part 2 - Trigger animations with a delay; r=dzbarsky
Animations with a delay are not put on the compositor thread until the end of
the delay phase. However, there is currently nothing that explicitly triggers
this transaction. It may occur due to flushes that arise from UI events but it
is not guaranteed.

This patch detects the end of a delay phase and turns off throttling for that
sample. It re-uses the mLastNotification member which is not ideal but
a subsequent patch in this queue removes this and replaces it with the approach
used for transitions.
2014-03-22 05:59:57 +08:00
Brian Birtles
612ce80109 Bug 975261 part 1 - Add test for OMTA animations that start with a delay; r=dzbarsky 2014-03-22 05:59:57 +08:00
Srirakshith Betageri
209a660012 Bug 955860. Implement the CSS.escape API for escaping CSS identifiers from script. r=bzbarsky 2014-03-20 23:19:43 -04:00
Bill McCloskey
aa5f40a77e Bug 982828 - [e10s] Disable mochitest-plain tests that don't pass in e10s (r=ted) 2014-03-13 21:38:19 -07:00
Wes Kocher
a3277d291d Backed out changeset 88425ad0f06a (bug 982828) for introducing various mochitest-5 failures on a CLOSED TREE
* * *
Backed out changeset 94f9ebdc6662 (bug 982828)
2014-03-13 19:41:21 -07:00
Bill McCloskey
f4f6bf8e4d Bug 982828 - [e10s] Disable mochitest-plain tests that don't pass in e10s (r=ted) 2014-03-13 15:41:41 -07:00
Bill McCloskey
7193069fa0 Backed out changeset d6261f65070a 2014-03-13 15:52:27 -07:00
Bill McCloskey
69a746922b Bug 982828 - [e10s] Disable mochitest-plain tests that don't pass in e10s (r=ted) 2014-03-13 15:41:41 -07:00
Wes Kocher
a4de6958ad Merge m-c to inbound 2014-03-12 18:59:54 -07:00
Benoit Jacob
162c30b16f Bug 977757 - 1/3 - make nsCSSProps::EnabledState a bitfield - r=dbaron,bz 2014-03-07 12:14:23 -05:00
Peter Chang
1e4d8e1868 backout of rev 45253e02bde3, fd02f1217e4c, 75217485ce5a b=981804 2014-03-12 15:16:20 +08:00
Daniel Holbert
f1a9c96f8b Bug 981919: Add some documentation/clarification in test_flexbox_flex_shorthand.html. r=SimonSapin 2014-03-11 10:06:54 -07:00
Ted Mielczarek
1e45b1eeae Bug 980015 - Remove MOCHITEST_FILES et. al. r=gps 2014-03-05 15:51:39 -05:00
Daniel Holbert
f94056206c (no bug) fix trailing whitespace in test_flexbox_flex_shorthand.html. whitespace-only, DONTBUILD
Pusing on a CLOSED TREE with KWierso|sheriffduty's permission
2014-03-10 16:57:44 -07:00
Simon Sapin
b44cf36696 Bug 976787 part 5: Add grid-{column,row}-{start,end} and grid-auto-position to the style system. r=dholbert 2014-03-10 15:54:17 -07:00
Simon Sapin
e04f66defa Bug 976787 part 4: Add the grid-auto-flow property to the style system. r=dholbert 2014-03-10 15:54:16 -07:00
Simon Sapin
2e4ccc6e82 Bug 976787 part 3: Add the grid-auto-{columns,rows} properties to the style system. r=dholbert 2014-03-10 15:54:15 -07:00
Simon Sapin
a1c124e6f3 Bug 976787 part 2: Add the grid-template-areas property to the style system. r=dholbert 2014-03-10 15:54:14 -07:00
Simon Sapin
ed42775975 Bug 976787 part 1: Add the grid-template-{columns,rows} properties to the style system. r=dholbert 2014-03-10 15:54:13 -07:00
Ryan VanderMeulen
462d354cd5 Backed out changeset 88780b5a201e (bug 980015) for test_property_database.html failures.
CLOSED TREE
2014-03-10 15:31:23 -04:00
Ted Mielczarek
4efe7d076c Bug 980015 - Remove MOCHITEST_FILES et. al. r=gps
--HG--
extra : rebase_source : 3825abc63eb0901bc1422aa00aed3680dbe3e44c
2014-03-05 15:51:39 -05:00
Benoit Jacob
9c93a3d8aa Bug 977757 - 1/3 - make nsCSSProps::EnabledState a bitfield - r=dbaron,bz 2014-03-07 12:14:23 -05:00
Vaibhav Agarwal
9a59a5c96d Bug 971132 - B2G mochitests should use the new manifest format; r=jmaher 2014-03-06 13:42:43 -05:00
Ryan VanderMeulen
02ecb5a5d6 Backed out changesets d65a803d2b9a, 9456495d6121, and 73c710ddf3d8 (bug 977757) for Gaia UI test failures.
CLOSED TREE
2014-03-06 13:10:20 -05:00
Benoit Jacob
323054beb0 Bug 977757 - 1/3 - make nsCSSProps::EnabledState a bitfield - r=dbaron,bz 2014-03-06 11:38:17 -05:00