Граф коммитов

6508 Коммитов

Автор SHA1 Сообщение Дата
Xidorn Quan e183e5dc14 Bug 990297 - Refactor table initialization code in nsCSSProps::AddRefTable. r=dbaron 2014-04-02 11:47:55 -04:00
Simon Sapin e717247ca9 Bug 988780 - Refactor ParseGridTemplateAfterString() to not use CheckEndProperty() (layout/style/nsCSSParser.cpp). r=dbaron 2014-03-27 02:24:00 +01:00
Cameron McCormack b40f160398 Bug 989965 - Resolve style for pseudo-elements correctly when style rules that have user action pseudo-classes on them are present. r=bzbarsky 2014-04-02 15:08:52 +11:00
Cameron McCormack 281ddc537e 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 cae334e085 Bug 987404 - Disable failing mochitest-browser tests in e10s. r=ted. 2014-04-02 10:53:55 +11:00
L. David Baron ff4104e646 Bug 989560 patch 4 - Remove most uses of CheckEndProperty()/ExpectEndProperty(). r=heycam 2014-04-01 11:53:32 -07:00
L. David Baron 7326cdf75a Bug 989560 patch 3 - Add one more ExpectEndProperty() call that is needed for variables. r=heycam
This adds a check that is currently present in most but not all
codepaths leading to this point, but which patch 4 will remove from many
of those codepaths.
2014-04-01 11:53:32 -07:00
L. David Baron 664bcb2295 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 7a44e4a78b 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 901acf6951 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 42801e2a88 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 0c7167f1d9 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 5584e3271c 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 006fadfc0c 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 ccb817744a 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 ce2d7b005c 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
Neil Rashbrook cf9b85f5a7 Bug 514280 Consistently declare and define IID accessors r=bsmedberg 2014-03-28 08:45:02 +00:00
Ehsan Akhgari 186680d83a Bug 798158 - Part 1: Use a pointer-sized type to store refcounts internally; r=bsmedberg 2014-03-27 16:38:33 -04:00
Simon Sapin 40a44c4767 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
Simon Sapin 8c545f7857 Bug 983175 - Part 1: Refactor ParseGridLineNames (CSS Grid). r=dholbert
Return a CSSParseResult rather than a bool to distinguish between
an empty list of names '()' and the lack of a list.
2014-03-27 11:54:40 -04:00
Simon Sapin c53d0ea1d0 Bug 983175 - Part 0: Rename nsParsingStatus to CSSParseResult. r=dbaron 2014-03-27 11:54:40 -04:00
Boris Zbarsky bbe206097b Bug 610733. Vertically center the text in the combobox display area when a non-default height is set for the combobox. r=dbaron 2014-03-25 22:48:46 -04:00
Brian Birtles 6fb124d929 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
Bobby Holley a82fe6e195 Bug 987672 - Use a more reliable Function constructor and |bind| implementation for marquee event handler compilation. r=bz 2014-03-25 12:36:39 -03:00
Matt Woodrow be161f1c7c Bug 976365 - Make 'perspective' create a containing block for absolute and fixed positioned children. r=dbaron 2014-03-25 11:45:43 +13:00
Simon Sapin 20769aaaa3 Bug 984728 - Refactor grid-auto-flow parsing to use ParseBitmaskValues; r=dholbert 2014-03-24 14:26:04 +01:00
Boris Zbarsky 2cb93a4388 Bug 955860 followup to add a pointer to the source of the tests. 2014-03-21 23:07:12 -04:00
Simon Sapin 6f19092d3e Bug 984760 part 2: Use GridTemplateAreasValue though nsRefPtr pointers. r=dholbert 2014-03-21 23:06:16 +08:00
Simon Sapin 98db16b1af Bug 984760 part 1: Rename nsCSSValueGridTemplateAreas to css::GridTemplateAreasValue. r=dholbert 2014-03-21 23:06:13 +08:00
Simon Sapin 58006b1242 Bug 981752 part 3: Add the grid shorthand. r=dholbert 2014-03-21 23:06:12 +08:00
Simon Sapin 9034f0f8ec Bug 981752 part 2c: Add the grid-template shorthand. r=dholbert 2014-03-21 23:06:12 +08:00
Simon Sapin 2a8908079a Bug 981752 part 2b: Refactor grid-template-{columns,rows} parsing, preparing for the grid-template shorthand. r=dholbert
... and a bit of grid-auto-flow, for the grid shorthand.

* Avoid using CheckEndProperty() when possible
* Distinguish between "error" and "not a <track-size>"
* Split out parsing of a <track-list>, given its initial [<line-names>?]
2014-03-21 23:06:12 +08:00
Simon Sapin 8d091ccef4 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 843cf9276a 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 ed5bad699b 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 0750783e1b 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 97f46c1cf2 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 4348ab3768 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 67824e20dd Bug 955860. Implement the CSS.escape API for escaping CSS identifiers from script. r=bzbarsky 2014-03-20 23:19:43 -04:00
Daniel Holbert 501666c627 Bug 984786 part 1: Add MOZ_FINAL and private destructors to some refcounted classes in layout. r=dbaron 2014-03-21 09:16:20 +08:00
Simon Sapin b2b7f42b87 Bug 984241: Refactor/optimize grid-template-areas, store number of columns. r=dholbert
In the parsing code for grid-template-areas:

* Move some of the processing into the helper function,
  so that the grid-template will not have to duplicate it.

* Store the number of parsed columns (and rows),
  as they will affect the size of the "explicit grid".

* Use a hash table instead of a linear scan to avoid O(n²)-ish complexity.
2014-03-18 22:05:49 +08:00
Cameron McCormack 2b8efd3f5d Bug 950436 - Store ImageValues that resulted from re-parsing a nsCSSValueTokenStream on that object. r=dbaron 2014-03-18 20:11:14 +11:00
Cameron McCormack 1e049545bb Bug 984739 - Make nsCSSValue::StartImageLoad assume |new ImageValue| is infallible. r=dbaron 2014-03-18 16:49:51 +11:00
Masayuki Nakano 3234ceea19 Bug 983049 part.5 Rename nsEventDispatcher to mozilla::EventDispatcher r=smaug
--HG--
rename : dom/events/nsEventDispatcher.cpp => dom/events/EventDispatcher.cpp
rename : dom/events/nsEventDispatcher.h => dom/events/EventDispatcher.h
2014-03-18 13:48:21 +09:00
Neil Rashbrook 604d9a5302 Bug 514280 Stop using nsCOMPtr for concrete types r=bsmedberg
--HG--
extra : rebase_source : f8fb50de9292320eb7589dd28dc566d0f5044da6
2014-03-18 00:23:03 +00:00
Wes Kocher c879b47079 Backed out 2 changesets (bug 514280) for OSX build bustage on a CLOSED TREE
Backed out changeset 2a015b45d808 (bug 514280)
Backed out changeset a01f97c1ed02 (bug 514280)
2014-03-17 15:19:53 -07:00
Neil Rashbrook 3e8915c4b8 Bug 514280 Stop using nsCOMPtr for concrete types r=bsmedberg
--HG--
extra : rebase_source : eaca8b2925eaffb49e29a617cd72c0d6686e6d9e
2014-03-17 19:07:09 +00:00
Kyle Huey d7764d686d Bug 981150: Use nsTArrayForwardDeclare.h more. r=ehsan 2014-03-15 12:00:17 -07:00
Kyle Huey fe6c4e28d6 Bug 967364: Rename already_AddRefed::get to take. r=bsmedberg 2014-03-15 12:00:15 -07:00
Bill McCloskey fd05f3eb04 Bug 982828 - [e10s] Disable mochitest-plain tests that don't pass in e10s (r=ted) 2014-03-13 21:38:19 -07:00