Commit Graph

22336 Commits

Author SHA1 Message Date
Morris Tseng
a59488b63d Bug 1023041 - Part 1: Rename SetMouseDownState to SetDragState. r=roc 2014-08-04 00:26:00 -04:00
Jonathan Kew
5468b836e6 bug 1046491 - ensure the font-variant css features are enabled for reftests that require them. r=jdaggett 2014-08-05 14:14:58 +01:00
William Chen
b5232d07d1 Bug 1022866 - Fix insertion point frame for content distributed to insertion points. r=bz 2014-08-04 21:37:25 -07:00
Matt Woodrow
f0f0bad187 Bug 1045864 - Disable layerized background-attachment:fixed when we're using a software compositor. r=roc 2014-08-05 15:25:00 +12:00
Kartikaya Gupta
0e930ef1d7 Bug 1047403 - Refactor linebreaking debug print code into [f]print_stderr functions that take stringstreams. r=BenWa 2014-08-02 06:03:00 -04:00
Masayuki Nakano
0799adcc73 Bug 1046101 part.32 Rename NS_EVENT to eBasicEventClass r=smaug 2014-08-04 14:28:58 +09:00
Masayuki Nakano
8bb45b8c1f Bug 1046101 part.18 Rename NS_TOUCH_EVENT to eTouchEventClass r=smaug 2014-08-04 14:28:53 +09:00
Masayuki Nakano
3edbd8fb45 Bug 1046101 part.17 Rename NS_SIMPLE_GESTURE_EVENT to eSimpleGestureEventClass r=smaug 2014-08-04 14:28:53 +09:00
Masayuki Nakano
5241ef84be Bug 1046101 part.16 Rename NS_GESTURENOTIFY_EVENT to eGestureNotifyEventClass r=smaug 2014-08-04 14:28:52 +09:00
Masayuki Nakano
29273d4088 Bug 1046101 part.15 Rename NS_POINTER_EVENT to ePointerEventClass r=smaug 2014-08-04 14:28:52 +09:00
Masayuki Nakano
c19caaece3 Bug 1046101 part.14 Rename NS_WHEEL_EVENT to eWheelEventClass r=smaug 2014-08-04 14:28:51 +09:00
Masayuki Nakano
bc9c6223e8 Bug 1046101 part.13 Rename NS_MOUSE_SCROLL_EVENT to eMouseScrollEventClass r=smaug 2014-08-04 14:28:51 +09:00
Masayuki Nakano
5dd6ba156f Bug 1046101 part.12 Rename NS_DRAG_EVENT to eDragEventClass r=smaug 2014-08-04 14:28:50 +09:00
Masayuki Nakano
29bd521c18 Bug 1046101 part.11 Rename NS_MOUSE_EVENT to eMouseEventClass r=smaug 2014-08-04 14:28:50 +09:00
Masayuki Nakano
b19dd031fd Bug 1046101 part.8 Rename NS_QUERY_CONTENT_EVENT to eQueryContentEventClass r=smaug 2014-08-04 14:28:49 +09:00
Masayuki Nakano
6d826c9a34 Bug 1046101 part.7 Rename NS_TEXT_EVENT to eTextEventClass r=smaug 2014-08-04 14:28:48 +09:00
Masayuki Nakano
0aa89314d0 Bug 1046101 part.6 Rename NS_COMPOSITION_EVENT to eCompositionEventClass r=smaug 2014-08-04 14:28:48 +09:00
Masayuki Nakano
4bc5175b20 Bug 1046101 part.5 Rename NS_KEY_EVENT to eKeyboardEventClass r=smaug 2014-08-04 14:28:48 +09:00
Masayuki Nakano
77d7a1ac4b Bug 1046101 part.1 Rename nsEventStructType to mozilla::EventClassID r=smaug 2014-08-04 14:28:46 +09:00
L. David Baron
953073e82b Bug 996796 patch 22 - Make restyling exact - only call RestyleBeforePseudo and RestyleAfterPseudo when we have an eRestyle_Subtree hint. r=heycam 2014-08-03 13:11:55 -07:00
L. David Baron
35090da319 Bug 996796 patch 21 - Make restyling exact - Only call MaybeRecreateFramesForElement when we have a nonzero restyle hint. r=heycam 2014-08-03 13:11:55 -07:00
L. David Baron
96c3b8e582 Bug 996796 patch 20 - Make restyling exact - Avoid rerunning selector matching on everything when the basis of rem units changes. r=heycam 2014-08-03 13:11:55 -07:00
L. David Baron
f1be28fb66 Bug 996796 patch 19 - Avoid reresolution for extra style contexts when the restyle hint is not eRestyle_Self or eRestyle_Subtree. r=heycam
This is part of making reresolution not touch style that it was not
asked to touch, so that we can use it for the animation-only restyle.
2014-08-03 13:11:55 -07:00
L. David Baron
873fa8d249 Bug 996796 patch 18 - Fix RestyleTracker to handle restyle hints exactly rather than pessimistically when restyling continuations with varying styles (e.g., spans inside ::first-line or ::first-letter). r=heycam
This will be necessary when we use the restyle tracker for the
animation-only style flush, because animation-only style flushes need to
update *only* the animation style data and no other style data.  Thus
using the RestyleTracker for animation-only style flushes requires that
we do this.
2014-08-03 13:11:55 -07:00
L. David Baron
0b7ed4e755 Back out bug 996796 patch 18 through patch 25 (changesets fbe97c2db729 through 9719c08c3144) to fix 50%-of-the-time Android 4.0 debug orange from single assertion ("Why did this not get handled while processing mRestyleRoots?", layout/base/RestyleTracker.cpp, line 87) in gfx/tests/crashtests/815489.html . 2014-08-03 01:22:07 -07:00
L. David Baron
9422cdaf83 Bug 1045161 patch 2 - Remove write-only member variables of nsStyleTable. r=bzbarsky 2014-08-02 19:37:49 -07:00
L. David Baron
49b104a310 Bug 996796 patch 25 - Remove the old (now-unused) miniflush code (preserving one of the header comments). r=heycam 2014-08-02 19:37:49 -07:00
L. David Baron
bdab5a4920 Bug 996796 patch 24 - Use a RestyleTracker for the coalescing in the animation-only style flush (miniflush). r=heycam
This changes the coalescing behavior during the animation-only style
flush by doing tree-based coalescing between the style updates required
by animations and those required by transitions, rather than doing
animations and transitions separately.

Note that both the old and the new code update all
animating/transitioning styles rather than only the throttled styles,
though we should fix that eventually as noted in the FIXME comment in
the code (but only for the existing caller, and not for the new one to
be introduced in bug 960465).

Note that this depends for its correctness on the previous patches to
make the restyling process exact.

The test changes are because the effects of bug 1031688 are changed by
the change in coalescing.  In the old code, we updated transition styles
before animation styles; in the new code we do a single pass over the
tree, which for the relevant test means updating animations on the
parent before transitions on the child, which changes the effects of the
bug.
2014-08-02 19:37:49 -07:00
L. David Baron
c802140c48 Bug 996796 patch 23 - Make transition manager ignore StyleContextChanged notifications during an animation-only style update. r=heycam
This will be necessary when we use the restyle tracker for the
animation-only style flush.
2014-08-02 19:37:48 -07:00
L. David Baron
c5ca06995a Bug 996796 patch 22 - Make restyling exact - only call RestyleBeforePseudo and RestyleAfterPseudo when we have an eRestyle_Subtree hint. r=heycam 2014-08-02 19:37:48 -07:00
L. David Baron
7f0b38bd33 Bug 996796 patch 21 - Make restyling exact - Only call MaybeRecreateFramesForElement when we have a nonzero restyle hint. r=heycam 2014-08-02 19:37:48 -07:00
L. David Baron
995eeb66e6 Bug 996796 patch 20 - Make restyling exact - Avoid rerunning selector matching on everything when the basis of rem units changes. r=heycam 2014-08-02 19:37:47 -07:00
L. David Baron
065ed3abba Bug 996796 patch 19 - Avoid reresolution for extra style contexts when the restyle hint is not eRestyle_Self or eRestyle_Subtree. r=heycam
This is part of making reresolution not touch style that it was not
asked to touch, so that we can use it for the animation-only restyle.
2014-08-02 19:37:47 -07:00
L. David Baron
fa21064cd2 Bug 996796 patch 18 - Fix RestyleTracker to handle restyle hints exactly rather than pessimistically when restyling continuations with varying styles (e.g., spans inside ::first-line or ::first-letter). r=heycam
This will be necessary when we use the restyle tracker for the
animation-only style flush, because animation-only style flushes need to
update *only* the animation style data and no other style data.  Thus
using the RestyleTracker for animation-only style flushes requires that
we do this.
2014-08-02 19:37:47 -07:00
L. David Baron
345c8f4156 Bug 996796 patch 17 - Add comment about how RuleNodeWithReplacement should interact with nsTransitionManager and nsAnimationManager. r=heycam 2014-08-02 19:37:46 -07:00
L. David Baron
6675996cb4 Bug 996796 patch 16 - Add comment about potential performance impromevent to RuleNodeWithReplacement. r=heycam 2014-08-02 19:37:46 -07:00
L. David Baron
64efd328fe Bug 996796 patch 15 - Copy the eSkipParentDisplayBasedStyleFixup bit from ReparentStyleContext as well. r=heycam 2014-08-02 19:37:46 -07:00
L. David Baron
56fa692637 Bug 996796 patch 14 - Fix the aElementForAnimation passed from ResolveStyleWithReplacement. r=heycam 2014-08-02 19:37:45 -07:00
L. David Baron
9b14538555 Bug 996796 patch 13 - Fix the pseudo element information created by ResolveStyleWithReplacement. r=heycam
Note that we're not yet using this code for style contexts that have
pseudo-elements, since we don't run transitions or animations on
pseudo-elements on the compositor thread.  But bug 960465 will (with
some more work) start doing so.
2014-08-02 19:37:45 -07:00
L. David Baron
18d1fe4a33 Bug 996796 patch 12 - Fix the visited rule node handling in ResolveStyleWithReplacement. r=heycam
The added test passes locally on Linux with OMT compositing and OMT
animations enabled.  However, it also passes without the patch because
the calls to FlushAnimations and FlushTransitions from
PresShell::FlushPendingNotifications cover up the damage done by bugs in
the animation-only style flush.

Unfortunately due to lack of global history on B2G and not running OMT
animations tests on any other platforms, the new test won't actually run
in automation right now.
2014-08-02 19:37:45 -07:00
L. David Baron
d22706b548 Bug 996796 patch 11 - Fix the visited flag handling in ResolveStyleWithReplacement. r=heycam
This does the same thing as ReparentStyleContext (which thanks to the
patch to bug 1031149 deals with aNewParentStyleContext being null).
2014-08-02 19:37:44 -07:00
L. David Baron
d59096e3a0 Bug 996796 patch 10 - Separate the rule node replacement code from the style context handling so that we can make visited handling correct. r=heycam 2014-08-02 19:37:44 -07:00
L. David Baron
8a92c2cbcf Bug 996796 patch 9 - Make nsStyleSet::ResolveStyleWithReplacement handle changing between having and not having animation or transition rules, make it set IsImportantRule on rule nodes correctly, and merge the bogus ResolveStyleForRules into it. r=heycam
ResolveStyleForRules had various problems:  it failed to set importance
correctly and really only handled replacing a path in the rule tree
since it didn't handle creating important rules.  (Possibly more.)
2014-08-02 19:37:44 -07:00
L. David Baron
59c702a635 Bug 996796 patch 8 - Pass the replacements through to ResolveStyleWithReplacement. r=heycam
This means ResolveStyleWithReplacement will replace only the rules in
the nsRestyleHint rather than always replacing both the animations rule
and the transitions rule.  (This will become even more useful later when
we add the ability to replace the style attribute rule.)
2014-08-02 19:37:44 -07:00
L. David Baron
1321a6e91b Bug 996796 patch 7 - Add new restyle types that replace only the data from CSS transitions or animations. r=heycam
This is the start of a refactoring of the existing code in
CommonAnimationManager, nsTransitionManager, and nsAnimationManager,
which will be removed in later patches (after patches in between cause
this code to be used instead of the current code).

But it also handles interesting cases more correctly, such as cases
where style context parents are unusual.

FIXME: It would be nice to add tests for these cases, but they're mostly
pretty obscure (e.g., a transition of 'transform' that's affected by
inheriting 'transform' from ::first-line), so I'm not treating it as a
priority right now.
2014-08-02 19:37:43 -07:00
L. David Baron
67f83f31cd Bug 996796 patch 6 - Adjust checks of restyle types to accomodate new types weaker than eRestyle_Self. r=heycam
FIXME: Adjust for eRestyle_Force if bug 931668 lands first.

Later patches will add such types that are like eRestyle_Self but that
only replace the style attribute, animation rule, or transition rule.
2014-08-02 19:37:43 -07:00
L. David Baron
7edfef701e Bug 996796 patch 5 - Move the guts of UpdateThrottledStyle into nsStyleSet, where it can be reused. r=heycam 2014-08-02 19:37:43 -07:00
L. David Baron
dce572e25a Bug 1031149 - Consistently pass correct aRelevantLinkVisited to nsStyleContext::FindChildWithRules. r=heycam
I believe this will fix some cache misses in the FindChildWithRules
lookup when restyling.  I don't think it will fix any correctness bugs
because the RelevantLinkVisited() bit will always end up set to true
anyway as the non-link descendant of a visited link style context, and
link descendants shouldn't be able to share styles with non-link
descendants due to matching rules in the UA style sheet.
2014-08-02 19:37:42 -07:00
James Kolb
3cec744b69 Bug 1028288: Add two reftests for globalAlpha. One just tests globalAlpha, and one tests scaling and globalAlpha. r=roc 2014-08-02 16:14:55 +09:00
James Kolb
4cce70609b Bug 1028288 Add canvas global transparency support to svgs. r=roc 2014-08-02 16:14:53 +09:00