Commit Graph

21258 Commits

Author SHA1 Message Date
Kartikaya Gupta
4bd95b6fa8 Bug 1016222 - Fuzz a few tests for progressive painting. r=jwatt 2014-05-29 12:47:42 -04:00
Andrea Marchesini
e717179ace Bug 957086 - patch 2 - DataStoreService in C++, r=ehsan, r=bz, r=janv 2014-05-29 16:34:43 +01:00
Mats Palmgren
58a27e36b9 Bug 1007067 - Adding a reftest. r=smontagu 2014-05-29 15:15:14 +00:00
Markus Stange
6e3af2bd5f Bug 1016971 - Remove unncessary clipping to the displayport. r=tn 2014-05-29 14:12:58 +02:00
Markus Stange
f3c52faa59 Bug 1016535 - Mark resize-background.html as fuzzy due to different layerization of the textarea resizer.
--HG--
extra : rebase_source : db042068f14fd59ba2dea35d84633b98ef0b1233
2014-05-28 13:18:33 +02:00
Markus Stange
27f705c2ee Bug 1009679 - Layerize the scrollbar thumb on desktop, too. r=roc 2014-05-28 12:52:13 +02:00
Jonathan Kew
41d03e5abc bug 458634 - part 3 - reftests for real small-cap support. r=jdaggett 2014-05-28 11:35:17 +01:00
Jonathan Kew
65d2b0d641 bug 458634 part 1 - use OpenType 'smcp' feature to implement small-caps if available in the font. r=jdaggett 2014-05-28 11:35:12 +01:00
Markus Stange
d4da42b2cc Bug 1016525 - Ignore empty rects in AddTransformedBoundsToRegion. r=roc 2014-05-28 11:47:07 +02:00
Markus Stange
d75b4bfa87 Bug 1016535 - Always give overlay scrollbars their own layers, even for subframes. r=roc 2014-05-28 11:46:10 +02:00
Brian Birtles
d48a8e62e9 Bug 1004361 - Dispatch animationstart events as well when skipping entire animation intervals; r=dholbert 2014-05-28 16:51:50 +09:00
Brian Birtles
4457eea22f Bug 1015803 - Align Layers' Animation.numIterations with AnimationTiming.mIterationCount; r=dholbert
In the IPC Animation struct used in layers code we have a member called
'numIterations' where 'iterate forever' is represented by -1.

In layout/style however we have an AnimationTiming struct with an
mIterationCount member where 'iterate forever' is represented by
NS_IEEEPositiveInfinity().

This patch renames 'numIterations' to 'iterationCount' and uses infinity to
represent 'iterate forever'.
2014-05-28 16:51:50 +09:00
Brian Birtles
4af2cc49f7 Bug 1004871 part 11 - Move ElementAnimation members closer together for readability and packing; r=dholbert
Also shuffle the initialization of members in
nsAnimationManager::BuildAnimations to roughly match the order in which they
are declared (with the exception that mPlayState needs to be set before calling
IsPaused() which is used to set mPauseStart).
2014-05-28 16:51:50 +09:00
Brian Birtles
5a990f0766 Bug 1004871 part 10 - Stop passing a fill mode of "both" to GetComputedTimingAt for throttled samples; r=dholbert
This was only needed when we were inspecting the returned time fraction but now
that we inspect the phase it's not necessary to force the fill mode to "both".
2014-05-28 16:51:50 +09:00
Brian Birtles
510ffce362 Bug 1004871 part 9 - Move ElementAnimations::GetPositionInIteration to ElementAnimation::GetComputedTimingAt; r=dholbert
This patch simply moves the code from ElementAnimations to ElementAnimation so
that it can later be used in transitions code and so we can later move
EnsureStyleRuleFor to ElementAnimation.
2014-05-28 16:51:50 +09:00
Brian Birtles
88b33826c4 Bug 1004871 part 8 - Simplify ElementAnimations::GetEventsAt; r=dholbert
This patch shuffles the code in ElementAnimations::GetEventsAt to make it easier
to follow.

It also removes a check for whether or not the animation is paused.
Previously we would not dispatch events if the animation was paused and in its
active phase (but we would if the animation had finished). There doesn't seem to
be any reason for this. If the animation was paused between the last sample and
the current sample and the boundary of an iteration also occurred in that time
then I expect we should dispatch that event. Removing this check for the pause
state does not cause any tests fail.

Separating out the event logic here makes it clear that we do not dispatch start
events in the situation where one sample falls before the active interval and
one sample falls after it (filed as bug 1004361). This patch adds a comment to
this effect.
2014-05-28 16:51:49 +09:00
Brian Birtles
68e07b4a10 Bug 1004871 part 7 - Remove event queueing from GetPositionInIteration and do it in GetEventsAt; r=dholbert
This patch simply shifts the event-related code from GetPositionInIteration to
GetEventsAt. Although there are simplifications that could be done to
GetEventsAt, they are deferred to a subsequent patch so as not to obscure the
translation of code from one function to another.

As a result of moving event-related handling from GetPositionInIteration it no
longer needs to support different main-thread vs compositor modes.
2014-05-28 16:51:49 +09:00
Brian Birtles
f9a1779d4d Bug 1004871 part 6 - Make GetPositionInIteration return a ComputedTiming object; r=dholbert
This patch makes ElementAnimations::GetPositionInIteration return
a ComputedTiming object instead of just a time portion (time fraction).

Since the ComputedTiming object includes phase information, we can fix those
parts of EnsureStyleRule and GetEventsAt that were temporarily using the time
portion to guess if the animation might have finished or not.
2014-05-28 16:51:49 +09:00
Brian Birtles
5de24213a8 Bug 1004871 part 5 - Add ComputedTiming data structure; r=dholbert
This patch adds a ComputedTiming struct for storing the results of calculating
the timing properties of an animation at a given sample time.
2014-05-28 16:51:49 +09:00
Brian Birtles
5823fef61b Bug 1004871 part 4 - Move FillsForwards/FillsBackwards to AnimationTiming; r=dholbert
This patch moves the FillsForwards/FillsBackwards methods previously defined on
ElementAnimations to the structure contain the fill mode: AnimationTiming. It
also changes GetPositionInIteration to use these methods.
2014-05-28 16:51:49 +09:00
Brian Birtles
ae4fac1710 Bug 1004871 part 3 - Replace parameters to GetPositionInIteration with an AnimationTiming object; r=dholbert
This patch makes use of the AnimationTiming struct introduced in the previous
patch to simplify calls to ElementAnimations::GetPositionInIteration.
2014-05-28 16:51:49 +09:00
Brian Birtles
f22f27e127 Bug 1004871 part 2 - Add AnimationTiming struct, to encapsulate animation timing parameters; r=dholbert
Introduces a struct to store timing parameters for passing to
GetPositionInIteration. In future this struct is expected to be expanded to
include other timing parameters as well (based roughly on Web Animations'
"Timing" interface, hence the name AnimationTiming).
2014-05-28 16:51:49 +09:00
Brian Birtles
2fe00ba5c9 Bug 1004871 part 1 - Factor event queuing out of EnsureStyleRuleFor; r=dholbert
This patch moves event queuing out of EnsureStyleRuleFor into a separate method.
This is a preparatory step towards making GetPositionInIteration into a more
generic method for calculating the current time fraction.

In order to achieve this, GetPositionInIteration needs to be able to calculate
the correct time portion for times outside the range [0, 1] even when it is not
passed a ElementAnimation object. Specifically, it needs the fill mode of the
animation to be passed in.

(Rather than using FillForwards/FillBackwards this patch just compares the
NS_STYLE_ANIMATION_FILL_MODE_* values directly but FillForwards/FillBackwards
are restored in a subsequent patch when they are added to the struct used to
lump the timing parameters together.)

There are a number of places where positionInIteration is used to determine if
the current sample occurs in the active phase or after. This is sub-optimal but
is fixed in a subsequent patch in this series.

The actual work of removing event queuing from GetPositionInIteration is
deferred to a subsequent patch in order to keep the changes as small as
possible. This patch simply makes separate calls to GetPositionInIteration for
interpolating and for event queuing.
2014-05-28 16:51:48 +09:00
Robert O'Callahan
7d4c3fd53a Bug 1014252. Optimize clearing of textruns via RemoveInFlows. r=matspal
We're keeping the core idea that, before we remove the frames-to-be-destroyed
from the continuation chain, their textruns need to be disconnected/destroyed.
However, nsContinuingTextFrame::DestroyFrom tries to optimize when the
destroying frames that aren't mentioned in the userdata for the textrun, and
certain other conditions are met; we need a similar optimization here. It's
simpler here because the other conditions are definitely met, since all the
text for the frames being deleted has already been consumed and reflowed by
previous frames.

We don't need the TEXT_STYLE_MATCHES_PREV_CONTINUATION state bit anymore
because nsContinuingTextFrame::DestroyFrom will never see any textruns when
called via RemoveEmptyInFlows.

--HG--
extra : rebase_source : 6544f923499ef604d48ec15961716549dd25d279
2014-05-28 15:39:25 +12:00
Ryan VanderMeulen
f2349a07bd Merge inbound to m-c on a CLOSED TREE. 2014-05-27 16:23:41 -04:00
Kershaw Chang
8b90d9d66e Bug 1013094 - Rename browser.manifestURL and browser.homescreenURL, r=fabrice 2014-05-27 18:01:01 +08:00
Phil Ringnalda
cc97afea03 Bug 981477 followup, skip one more newly-added XUL reftest on OOP b2g
CLOSED TREE
2014-05-26 23:20:30 -07:00
Carsten "Tomcat" Book
c509721e94 merge b2g-inbound to mozilla-central 2014-05-26 15:26:11 +02:00
Carsten "Tomcat" Book
00eac7d5ba merge fx-team to mozilla-central 2014-05-26 14:59:21 +02:00
Phil Ringnalda
0eda2b2e88 Bug 981477 followup, revert marking invalidation/transform-floating-point-invalidation.html?reverse as failing on OOP b2g since it passes 2014-05-24 13:54:28 -07:00
Wes Kocher
64719ccbd2 Merge m-c to b2g-inbound 2014-05-23 17:39:48 -07:00
Vincent Chen
7e90a06615 Bug 981477 - Disable B2G emulator reftests that fail oop, r=ahal 2014-05-23 15:56:15 -04:00
Andrew Halberstadt
7a5a810dd4 Bug 922680 - Enable out of process b2g emulator reftests, r=jgriffin 2014-05-23 15:55:54 -04:00
Mike Conley
3d1a60d674 Bug 978913 - Dragging e10s window between HiDPI and non-HiDPI displays causes text to be scaled incorrectly. r=smaug. 2014-05-23 10:36:50 -04:00
Andrew Halberstadt
ed8a8f0d40 Bug 1009730 - Stop using /data/local/user.js in b2g unittests, r=jgriffin 2014-05-22 15:47:52 -04:00
Andrew Halberstadt
516973a5ad Bug 1014192 - Add command line option to toggle b2g reftests running oop, r=jgriffin 2014-05-22 14:43:51 -04:00
Frédéric Wang
65b75c61f8 Bug 1014601 - Add some OpenType MATH fonts into mathml.css. r=karl 2014-05-23 08:51:00 +02:00
Matt Woodrow
73814d43f9 Bug 1013771 - Dump nsDisplayTransform transforms during display list dumping. r=roc 2014-05-22 14:36:26 +12:00
Boris Zbarsky
36b5591afb Bug 999456. Page load events should not be cancelable. r=smaug 2014-05-22 00:23:51 -04:00
Timothy Nikkel
b6f61ce569 Bug 1013780. Silly bustage fixup. 2014-05-21 23:17:56 -05:00
Timothy Nikkel
e32f4fb08e Bug 1013780. Only create displayports during display list building if the display list is for painting to the screen. r=botond 2014-05-21 23:14:49 -05:00
Masayuki Nakano
ad939f2f11 Bug 1009388 part.4 nsMenuFrame should use WidgetEvent::AccelModifier() for consistency with other modules r=smaug+enndeakin 2014-05-22 13:06:06 +09:00
Birunthan Mohanathas
6f68094e30 Bug 869836 - Part 9: Use AssignLiteral instead of Assign(NS_LITERAL_STRING(...)). r=ehsan 2014-05-22 06:48:52 +03:00
Birunthan Mohanathas
2deaba6d91 Bug 869836 - Part 8: Use Append('c') instead of Append("c"). r=ehsan 2014-05-22 06:48:52 +03:00
Birunthan Mohanathas
76ca8ec617 Bug 869836 - Part 7: Use AppendLiteral instead of Append where possible. r=ehsan 2014-05-22 06:48:51 +03:00
Birunthan Mohanathas
c4568a7085 Bug 869836 - Part 6: Use EqualsLiteral instead of Equals where possible. r=ehsan 2014-05-22 06:48:51 +03:00
Birunthan Mohanathas
807e72372f Bug 869836 - Part 4: Use EqualsLiteral instead of Equals(NS_LITERAL_STRING(...)). r=ehsan 2014-05-22 06:48:51 +03:00
Birunthan Mohanathas
411a8639b4 Bug 869836 - Part 3: Use Append('c') instead of AppendLiteral("c"). r=ehsan 2014-05-22 06:48:51 +03:00
Birunthan Mohanathas
62570a8716 Bug 869836 - Part 2: Use AppendLiteral instead of Append(NS_LITERAL_STRING(...)). r=ehsan 2014-05-22 06:48:50 +03:00
Birunthan Mohanathas
5d51a7d58f Bug 869836 - Part 1: Use EqualsLiteral instead of == NS_LITERAL_STRING(...). r=ehsan 2014-05-22 06:48:50 +03:00
Wes Kocher
391727c7ba Backed out changeset 91d280c835b2 (bug 1013771) for b2g osx build bustage 2014-05-21 20:00:33 -07:00
Matt Woodrow
212cd95ad4 Bug 1013771 - Dump nsDisplayTransform transforms during display list dumping. r=roc 2014-05-22 14:36:26 +12:00
Matt Woodrow
85cabc53ea Bug 1013536 - Clip paint flashing area when using single-rect painting mode. r=Bas 2014-05-22 14:36:26 +12:00
Mats Palmgren
196236901a Bug 1009329 - Make crashtests/724978.xhtml trigger fewer reflows to not timeout. r=dholbert 2014-05-13 05:09:00 -04:00
Jared Wein
3790399a70 Bug 1000513 - Allow menuitems in menupopups to be children of a menugroup for horizontal arrangement. r=enn
--HG--
extra : rebase_source : 9e6f99b95e48f26aae2c3f7b8ee436781451a299
2014-05-12 16:23:12 -04:00
Wes Kocher
e594fbd022 Merge m-c to inbound 2014-05-22 17:55:00 -07:00
Daniel Holbert
c8a003c7a4 backout c3f1ab75ea51 (bug 421436) for regressing bug 439462 2014-05-22 15:10:20 -07:00
Ehsan Akhgari
643a8b5646 Bug 741295 - Part 0.1: Undo the windows.h damage in nsObjectFrame.h 2014-05-22 18:09:03 -04:00
Ryan VanderMeulen
510bb7eb35 Backed out changeset f1068bf18e64 (bug 978913) for bustage on most platforms.
CLOSED TREE
2014-05-22 16:39:46 -04:00
Mike Conley
aed81296e1 Bug 978913 - Dragging e10s window between HiDPI and non-HiDPI displays causes text to be scaled incorrectly. r=smaug. 2014-05-22 12:07:27 -04:00
Kartikaya Gupta
0935bd8594 Bug 1001438 - Refactor the GetDisplayPortImpl code for readability. r=tn 2014-05-21 12:06:03 -04:00
Kartikaya Gupta
ed28b62150 Bug 1001438 - Remove setCriticalDisplayPortForElement and have the getter function automatically compute it. r=tn 2014-05-21 12:06:02 -04:00
Kartikaya Gupta
cc2c523775 Bug 1001438 - Rearrange the code in nsLayoutUtils::GetDisplayPort. r=tn 2014-05-21 12:06:02 -04:00
Simon Montagu
afbffbcd64 Remove the hack making all <br> frames 1 app unit wide. Bug 421436, r=roc 2014-05-13 07:12:16 -07:00
Shigeyuki Tsukihashi
0c42a785d9 Bug 999964 part 2 - mochitest, reftest for Bug 999964; r=longsonr 2014-05-15 11:03:49 +09:00
Shigeyuki Tsukihashi
4a3b14fabe Bug 999964 part 1 - Patch for SVG 2 getBBox method; r=longsonr, r=bz 2014-05-13 10:24:35 +09:00
Simon Montagu
8eba08a13f Backout 38b25d5e6cf9 because assertions 2014-05-25 03:15:00 -07:00
Simon Montagu
bd81617a3f Add a WritingMode argument to nsHTMLReflowMetrics::ISize() and BSize(). Bug 789096, r=jfkthame 2014-05-24 23:47:04 -07:00
Mats Palmgren
ad2b182633 Bug 1007067 - Add a currentLine->MarkDirty() to wallpaper a bug 936935 regression. r=smontagu 2014-05-25 02:50:59 +00:00
Martijn Wargers
351902f238 Bug 407066 - Adding a crashtest. 2014-05-25 02:50:59 +00:00
Mats Palmgren
b31e876bca Bug 451316 - Adding a crashtest. 2014-05-25 02:50:59 +00:00
Mats Palmgren
9115dbb0a0 Bug 508665 - part 16, Change the type of nsIFrame::mParent to nsContainerFrame* and make it private. r=roc 2014-05-24 22:20:41 +00:00
Mats Palmgren
3231bf9944 Bug 508665 - part 15, s/mParent/GetParent()/ in a bunch of nsIFrame sub-classes. r=roc 2014-05-24 22:20:41 +00:00
Mats Palmgren
3b14701888 Bug 508665 - part 14, uninline nsIFrame::GetPositionIgnoringScrolling() (since it uses a nsContainerFrame method). r=roc 2014-05-24 22:20:41 +00:00
Mats Palmgren
d9fe6769d5 Bug 508665 - part 13, Move nsIFrame::IsBoxWrapped to a static function in nsFrame.cpp. r=roc 2014-05-24 22:20:41 +00:00
Mats Palmgren
1e7dbbc25d Bug 508665 - part 12, Move nsIFrame::GetChildBox/GetNextBox/GetParentBox to XUL where they came from. r=roc 2014-05-24 22:20:41 +00:00
Mats Palmgren
99f34c07f2 Bug 508665 - part 11, Make nsIFrame::SetParent non-virtual. r=roc 2014-05-24 22:20:41 +00:00
Mats Palmgren
3a59014551 Bug 508665 - part 10, Replace nsMenuFrame::mMenuParent with a GetMenuParent() method to eliminate the need for a SetParent override. r=roc 2014-05-24 22:20:41 +00:00
Mats Palmgren
798dc583cb Bug 508665 - part 9, Remove now redundant static_cast<nsContainerFrame*> and do_QueryFrame() calls. r=roc 2014-05-24 22:20:40 +00:00
Mats Palmgren
da5455a4b0 Bug 508665 - part 8, Move child frame insertion/removal methods from nsIFrame to nsContainerFrame. r=roc 2014-05-24 22:20:40 +00:00
Mats Palmgren
621459f534 Bug 508665 - part 7, Require a nsContainerFrame* for aParent in nsFrameManager methods. r=roc 2014-05-24 22:20:40 +00:00
Mats Palmgren
9b83734b6f Bug 508665 - part 6, Require a nsContainerFrame* for aParent in nsFrameList methods. r=roc 2014-05-24 22:20:40 +00:00
Mats Palmgren
80071d48fe Bug 508665 - part 5, Make nsIFrame::Init require a nsContainerFrame* for the parent frame param. r=roc 2014-05-24 22:20:40 +00:00
Mats Palmgren
beb1dea11c Bug 508665 - part 4, Make nsCSSFrameConstructor use nsContainerFrame* for frames used as parent frames. r=roc 2014-05-24 22:20:40 +00:00
Mats Palmgren
285c9e041a Bug 508665 - part 3, Change GetContentInsertionFrame() to return a nsContainerFrame*, and return null for leaf frames. Deal with GetContentInsertionFrame() returning null in a couple of places. r=roc 2014-05-24 22:20:39 +00:00
Mats Palmgren
6af072cbc3 Bug 508665 - part 2, Move nsCSSFrameConstructor::GetFrameFor to a static function in nsCSSFrameConstructor.cpp. r=roc 2014-05-24 22:20:39 +00:00
Mats Palmgren
ac5e91a762 Bug 508665 - part 1, Change the signature of SetParent/GetParent from nsIFrame* to nsContainerFrame*. r=roc 2014-05-24 22:20:39 +00:00
Jonathan Watt
994403b30e Bug 1011806 - Stop loading user-agent and user style sheets for SVG-as-an-image (the main UA sheets svg.css, html.css, etc. will still load on demand). r=bz CLOSED TREE 2014-05-24 21:37:48 +01:00
Jonathan Watt
2783feef5b No bug - Add a comment to nsStyleSet::SizeOfIncludingThis noting that it does _not_ count the size of the sheets in mSheets, only the size of the mSheets buffer. 2014-05-24 21:37:12 +01:00
Jonathan Watt
46e7eec626 Bug 1013936, part 2 - Only load the html.css UA style sheet on-demand for SVG documents. r=bz CLOSED TREE 2014-05-24 20:29:11 +01:00
Jonathan Watt
1e31906fbd Bug 1008455 - Avoid loading the xul.css UA style sheet when possible. r=bz CLOSED TREE
--HG--
rename : toolkit/content/xul.css => toolkit/content/minimal-xul.css
2014-05-24 19:51:06 +01:00
Jonathan Watt
7ae551e9b7 Bug 1015147 - Use the style sheet cache to store the user-agent style sheets svg.css and mathml.css so that we don't create new instances for each new document. r=bz 2014-05-24 19:46:38 +01:00
Sotaro Ikeda
cb17692178 Bug 1006957 - Handle buffer ownership between SurfaceStream and CanvasClient r=nical 2014-05-24 09:14:45 -07:00
Steve Fink
ea69951aea Backed out changeset 171edffe0641 (bug 1006957) for crash at BaseAutoLock<mozilla::Mutex>::BaseAutoLock(mozilla::Mutex&) from layers::AsyncTransactionTrackersHolder::ClearAllAsyncTransactionTrackers on a CLOSED TREE 2014-05-23 21:16:02 -07:00
Sotaro Ikeda
e66ebd661d Bug 1006957 - Handle buffer ownership between SurfaceStream and CanvasClient r=nical 2014-05-23 17:52:43 -07:00
Boris Zbarsky
62cb9daf54 Bug 101800. Add support for text-transform:uppercase/lowercase (but not other values) on <xul:label value="whatever">. r=dholbert 2014-05-23 17:32:37 -04:00
Kartikaya Gupta
363ab2b9b3 Bug 1015369 - Remove some dead code. r=ahal 2014-05-23 17:07:02 -04:00
Kartikaya Gupta
f972d7ae8c Bug 1015369 - Add a flag to enable oop mode to b2g-desktop reftests. r=ahal 2014-05-23 17:07:01 -04:00
Trevor Saunders
cb0e030ae4 bug 966084 - don't QI the result of win->GetFrameElementInternal() when its not required r=smaug 2014-01-23 16:14:29 -05:00
Trevor Saunders
3e8a2ce19d bug 966059 - add nsIDocShell::GetWindow and GetDocument r=smaug 2014-01-09 21:03:47 -05:00