Commit Graph

20666 Commits

Author SHA1 Message Date
Daniel Holbert
60596fc507 Bug 983427 part 4b: If axes are reversed, align baseline-aligned items with respect to to the flex-end edge (which is the "real" flex-start edge). r=mats 2014-04-07 17:17:43 -07:00
Daniel Holbert
bc07f71ba1 Bug 983427 part 4a: Expand FlexItem baseline accessor to let caller pick the edge as well as the axis. r=mats 2014-04-07 17:17:43 -07:00
Daniel Holbert
523dfed6f1 Bug 983427 part 3: If axes are reversed, swap "flex-start" and "flex-end" alignment (& treat "stretch" as a variety of "flex-start"). r=mats 2014-04-07 17:17:42 -07:00
Daniel Holbert
21b807e55f Bug 983427 part 2: If axes are reversed, link up our lists of FlexLines & FlexItems in reverse, too. r=mats 2014-04-07 17:17:42 -07:00
Daniel Holbert
a515ca6ad8 Bug 983427 part 1: Add FlexboxAxisTracker flag to indicate whether we've detected bottom-to-top flow & are internally reversing axes. r=mats 2014-04-07 17:17:42 -07:00
Chris Lord
9c5e7e0874 Bug 990608 - Make tile size configurable. r=tn,nical,bgirard 2014-04-04 18:42:44 +01:00
Aryeh Gregor
8224d6e2e8 Bug 927558 - Missing null check in Selection::GetPrimaryFrameForFocusNode; r=ehsan 2014-04-02 19:01:01 +03:00
Timothy Nikkel
df81b7d231 Backout 389ff4b5612c and d234394e0147 (bug 987680) for reftest failuires. 2014-04-07 04:52:36 -05:00
Timothy Nikkel
f36020916b Bug 987680. Change a reftest to expect scrollbars on top of non-positioned sibling content. Mark some other reftests as passing now. r=roc 2014-04-07 03:15:47 -05:00
Timothy Nikkel
cdf9e2e208 Bug 987680. Overlay scrollbars should be placed on top of content. r=roc
Bug 926292 accidentally put them in the background list if there were no positioned descendents that they needed to be on top of it (because this was where non-overlay scrollbars went, which never made sense). If there are no positioned descendents overlay scrollbars should go on the top-most non-positioned list, which is outlines for the current implementation.
2014-04-06 22:00:01 -05:00
Mats Palmgren
f4adc1db1d Bug 992447 - Make <select> have 'overflow-clip-box:padding-box!important' for now since 'content-box' doesn't really work there. r=roc 2014-04-04 19:39:00 +02:00
Phil Ringnalda
542c4dfcab Back out b9085d8ca22e (bug 987680) for b2g reftest failures and passes
CLOSED TREE
2014-04-06 23:11:35 -07:00
Timothy Nikkel
d56f39fcf9 Bug 987680. Overlay scrollbars should be placed on top of content. r=roc
Bug 926292 accidentally put them in the background list if there were no positioned descendents that they needed to be on top of it (because this was where non-overlay scrollbars went, which never made sense). If there are no positioned descendents overlay scrollbars should go on the top-most non-positioned list, which is outlines for the current implementation.
2014-04-06 22:00:01 -05:00
Bobby Holley
b4a8be6b33 Bug 986730 - Fix up a bunch of tests that assume that they can touch AC in content. r=mrbkap 2014-04-06 12:32:38 -07:00
Timothy Nikkel
4b020940a7 Bug 990631. When processing a native window move for a popup compare the new position with the actual position we expect to popup to be at. r=enndeakin
The ScreenPosition() (which looks at mScreenX/YPos) doesn't actually hold the screen position for anchored popups.
2014-04-04 18:59:03 -05:00
Ryan VanderMeulen
01e048154a Backed out changeset bf184a7a1d63 (bug 990608) for Android crashes.
CLOSED TREE
2014-04-04 15:20:49 -04:00
Chris Lord
5a2c48da2d Bug 990608 - Make tile size configurable. r=tn,nical,bgirard 2014-04-04 18:42:44 +01:00
Neil Deakin
ba71f5497a Bug 475981, remove titles from a bunch of tests, fixing box wrapped in a block warnings,r=neil 2014-04-04 13:11:12 -04:00
Oleg Romashin
ea3f8c41bd Bug 968148 - Implement PointerCapture for pointer events. tests. r=smaug
--HG--
rename : layout/base/tests/test_bug582771.html => layout/base/tests/bug968148_inner.html
rename : dom/indexedDB/test/test_event_propagation.html => layout/base/tests/test_bug968148.html
extra : rebase_source : 723612a9487b7310daf56bfd0120f5ee971fe34e
2014-04-04 10:10:12 -07:00
Maksim Lebedev
518ac59f91 Bug 968148 - Implement PointerCapture for pointer events. r=smaug
--HG--
extra : rebase_source : 331cf187194c8827e4b75835e85b2d79fdc419c7
2014-04-04 10:09:10 -07:00
Daniel Holbert
6a7faff5d3 Bug 984786 part 8: Give NS_INLINE_DECL_*REFCOUNTING classes private destructor & MOZ_FINAL annotation where appropriate, in /gfx and /content/canvas. r=bjacob 2014-04-04 09:27:02 -07:00
Carsten "Tomcat" Book
8ef164f6c7 Backed out changeset bae32cf47dec (bug 988882) since it seems this breaks debug-bc tests 2014-04-04 13:23:20 +02:00
Carsten "Tomcat" Book
055dab2d1a Backed out changeset 17941c43375f (bug 991575) for test failures like reftests and others 2014-04-04 12:36:43 +02:00
Jonathan Watt
164b50056a Bug 991575 - Stop PresShell::GetReferenceRenderingContext from creating a Thebes backed gfxContext (Moz2D migration). r=mattwoodrow 2014-04-04 09:15:57 +01:00
Botond Ballo
69a1f77b38 Bug 988882 - Special-case handling of root composition bounds calculation on Android when the toolbar is perma-visible. r=tn 2014-04-02 01:35:25 -04:00
Mats Palmgren
76ea7c2156 Bug 990655 - Don't apply 'text-overflow' to nsComboboxControlFrame, its anon block deals with it. r=roc 2014-04-03 18:02:09 +00:00
Mats Palmgren
e933738778 Bug 967296 - Remove diagnostic code added in bug 946929. r=tn 2014-04-03 18:02:08 +00:00
Daniel Holbert
e1e2408909 Bug 991512: Add convenience methods to calculate outer main & cross size of a FlexItem. r=mats 2014-04-03 10:40:12 -07:00
Tatiana Meshkova
42cebf4c6d Bug 990869 - Allow to enable sub Apzc for non WIN gecko clients. r=kats 2014-04-02 18:40:00 +02:00
Brian Birtles
06110d67b2 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
628a1ffb0d 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
1547db730a 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
8f264e90e2 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
4d45c0227d 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
Brian Birtles
917d2e24b6 Bug 880596 part 9 - Fix comment about mFlushCount; r=dbaron
Two comments in AnimationCommon.h refer to 'mFlushCount' which was presumably
the old name for mAnimationGeneration. Also, one comment says
nsCSSFrameConstructor tracks this. This patch adjusts the comments to refer
to mAnimationGeneration and RestyleManager.

(The reference to nsTransitionManager::UpdateAllThrottleStyles() is still valid
since there is useful documentation accompanying that method despite the fact
that the relevant code is mostly contained in AnimationCommon.h since bug
914847. Eventually we will unify the structures of transitions and
animations to the the point that we can replace the
IMPL_UPDATE_ALL_THROTTLED_STYLES_INTERNAL macro in AnimationCommon.h with an
actual method. At that point we can move the documentation accompanying
nsTransitionManager::UpdateAllThrottleStyles and its references to
AnimationCommon.)
2014-04-03 14:57:28 +09:00
Brian Birtles
ae6e60dda5 Bug 880596 part 8 - Rename ElementAnimation to StyleAnimation; r=dbaron
We need a basic representation of animations from which we can derive subclasses
to represent specific cases such as transitions. For now we will retrofit
ElementAnimation for that purpose hence renaming it to StyleAnimation.

This patch removes the "using namespace mozilla::layers" line from
AnimationCommon.cpp since the unified build system concatenates several files
together before compiling making using declarations like this leak into other
files potentially creating ambiguities. Previously, when we were calling
ElementAnimation, 'Animation', there were ambiguities between
mozilla::layers::Animation and this new 'Animation' class. In general, it is
probably a good idea to limit the scope of these using declarations so I've kept
that change.
2014-04-03 14:57:28 +09:00
Brian Birtles
095840cb6d Bug 880596 part 7 - Move ElementAnimation to AnimationCommon; r=dbaron
This patch relocates ElementAnimation from nsAnimationManager.{h,cpp} to
AnimationCommon.{h,cpp} and in the process moves it into the mozilla::css
namespace.
2014-04-03 14:57:28 +09:00
Brian Birtles
c4ffbc205d Bug 880596 part 6 - Factor out common method for adding animations and transitions to a layer; r=dbaron
The loops for adding animations and transitions to a layer in
nsDisplayList::AddAnimationsAndTransitionsToLayer are now identical and so can
be factored out into a common method.

Since it is not possible to implicitly convert from
nsTArray<ElementPropertyTransition> to nsTArray<ElementAnimation> despite
ElementPropertyTransition being a subclass of ElementAnimation a templated
method is used. In the future, as animations and transitions share more and more
code, we should be able to remove the need for templates.
2014-04-03 14:57:28 +09:00
Brian Birtles
e4bdcd3cfb Bug 880596 part 5 - Make ElementAnimation::HasAnimationOfProperty no longer virtual; r=dbaron
ElementAnimation::HasAnimationOfProperty doesn't seem to be overridden anywhere.
I suspect it was a copy-paste mistake because the methods of the same name on
ElementAnimations, ElementTransitions, and CommonElementAnimationData are
virtual.
2014-04-03 14:57:28 +09:00
Brian Birtles
217cb32ecc Bug 880596 part 4 - Reuse ElementAnimation::HasAnimationOfProperty; r=dbaron
Now that ElementTransitionProperty inherits from ElementAnimation,
ElementTransitions::HasAnimationOfProperty can re-use
ElementAnimation::HasAnimationOfProperty in its definition of
ElementTransitions::HasAnimationOfProperty.

Similarly, in nsDisplayList::AddAnimationsAndTransitionsToLayer we can use this
method rather than drilling down to the appropriate segment by hand.
2014-04-03 14:57:27 +09:00
Brian Birtles
e503422f93 Bug 880596 part 3 - Remove ElementPropertyTransition::IsRunningAt and mIsRunningOnCompositor; r=dbaron
Both ElementPropertyTransition and ElementAnimation specify an IsRunningAt
method which have the same purpose but with two subtle differences:

a) ElementPropertyTransition::IsRunningAt checks if the transition is a removed
sentinel and if so returns false. This patch adds a check for a null start time
to IsRunningAt since I think in future we will want to allow null times in
various places to represent, for example, animations that are not connected to
a timeline. (However, ultimately we will probably not allow start times on
*animations* to be null, only on their associated player.)

Should we later use a different mechanism for marking sentinel transitions (e.g.
a boolean flag) this method should still be correct as it checks if aTime is
inside the transition interval before returning true.

b) ElementPropertyTransition::IsRunningAt returns false if the transition is in
the delay phase, that is, waiting to start. This patch changes this behavior so
that transitions are considered running even if they are in the delay phase.
This brings their behavior into line with animations and removes the need for
the ElementPropertyTransition::mIsRunningOnCompositor since it is only used to
determine when a transition in the delay phase has begun.

ElementAnimation::IsRunningAt also handles pause state and iterations but this
logic should still be correct for transitions which, in this area, only use
a subset of the functionality of animations since their pause state is always
playing and their iteration count is 1.
2014-04-03 14:57:27 +09:00
Brian Birtles
5e2f8ede42 Bug 880596 part 2 - Make ElementPropertyTransition inherit from ElementAnimation; r=dbaron
As part of moving towards more shared data structures for animation, this patch
makes ElementPropertyTransition inherit from ElementAnimation. At the same time
we switch from storing the target property, start/end values, start time, delay,
and timing function on the transition to the corresponding location in
ElementAnimation.

Since nsDisplayList::AddAnimationsAndTransitionsToLayer was already doing this
conversion in order to create animations to pass to the compositor thread, we
can remove the conversion code from there and just use the ElementAnimation data
structures as-is.

A number of assertions are added to verify that transitions are set up as
expected (namely, they have only a single property-animation with a single
segment). As we move to more generic handling of animations and transitions
these assertions should disappear.
2014-04-03 14:57:27 +09:00
Brian Birtles
19e2304b94 Bug 880596 part 1 - Separate delay from start time for transitions; r=dbaron
As a first step towards making CSS animations and CSS transitions use the same
data structures, this patch aligns their behavior with regards to start time and
delay handling.

Previously, ElementAnimation objects maintained separate mStartTime and mDelay
members whilst ElementPropertyTransition objects maintained a single mStartTime
property that incorporated the delay. This patch adds an mDelay member to
ElementPropertyTransition and stores the delay and start time separately.
Calculations involving ElementPropertyTransition::mStartTime are adjusted to
incorporate mDelay.
2014-04-03 14:57:27 +09:00
L. David Baron
4d2197bf3c Bug 975397 - Call TrackImage when constructing a new nsStyleBorder. r=heycam
I confirmed that the crashtest crashes in the harness without the patch.

--HG--
rename : layout/reftests/backgrounds/blue-32x32.png => layout/style/crashtests/blue-32x32.png
2014-04-02 22:56:19 -07:00
Masayuki Nakano
852403f45d Bug 990855 part.2 Remove dom/events from local includes of moz.build files r=smaug 2014-04-03 13:18:38 +09:00
Masayuki Nakano
5c4524957a Bug 989212 Rename nsEventStates to mozilla::EventStates r=smaug
--HG--
rename : dom/events/nsEventStates.h => dom/events/EventStates.h
2014-04-03 13:18:36 +09:00
Timothy Nikkel
cdb2189d90 Bug 989897. In order to properly compute root composition size view the root composition size first as layer pixels in the target layer, then convert to css pixels. r=kats
Since our goal is to use the root composition size to bound the layer size of the display port of the child layer this makes sense.
2014-04-02 17:46:38 -05:00
Ed Morley
d95ca1259e Merge mozilla-central and inbound 2014-04-02 18:24:05 +01:00
Xidorn Quan
0a8f327ab2 Bug 990297 - Refactor table initialization code in nsCSSProps::AddRefTable. r=dbaron 2014-04-02 11:47:55 -04:00
Carsten "Tomcat" Book
a715b7c75b merge b2g-inbound to mozilla-central 2014-04-02 15:57:57 +02:00