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

121 Коммитов

Автор SHA1 Сообщение Дата
Masayuki Nakano aa9e5eb547 Bug 920377 part.6 Get rid of nsTransitionEvent r=roc 2013-09-27 15:20:55 +09:00
Masayuki Nakano 80d3ef9ea0 Bug 912956 part.17 mozilla/ContentEvents.h should be included directly r=roc 2013-09-25 20:21:20 +09:00
Ehsan Akhgari 6ada2899b2 Bug 916610 - Minimize the #includes in layout/style; r=roc 2013-09-15 21:06:52 -04:00
L. David Baron 83888f2a57 Bug 900783: Make HasAnimationOfProperty return false in the refresh driver tick in which the transition completes. r=nrc
I don't know of any observable bug that this fixes, but the code without
this fix seems incorrect; the "removed sentinel" concept generally
requires that callers enumerating transitions check that they're not
enumerating the sentinel.

This ensures that HasAnimationOfProperty switches from returning true to
false in the first refresh cycle after the end of the animation rather
than the second.

I originally wrote this in
https://bugzilla.mozilla.org/show_bug.cgi?id=876626#c13 but it turned
out not to be related to that bug.
2013-09-09 12:21:24 +02:00
Ehsan Akhgari 2621b190f1 Bug 906790 - Minimize layout/base #includes; r=roc 2013-08-19 18:55:18 -04:00
L. David Baron c2fb56d067 Bug 898888: Transition manager should use SetStyleContext rather than SetStyleContextWithoutNotification. r=nrc
While debugging bug 858937 I noticed that the transition manager was
calling nsIFrame::SetStyleContextWithoutNotification rather than
nsIFrame::SetStyleContext.  SetStyleContextWithoutNotification should
only be used for things that aren't really style changes, but are
instead changes we make during frame construction before things are
really initialized.  Anything that's really a dynamic style change, as
these are, should use SetStyleContext.

I realize I said the opposite in bug 780692 comment 186, and bz said the
same in bug 780692 comment 204, which is why this is the state that it
is.
2013-07-30 17:36:08 -07:00
L. David Baron a7c8d44db9 Bug 896138 patch 4: Move restyle management code from nsCSSFrameConstructor to RestyleManager. r=heycam
This moves restyling management out of nsCSSFrameConstructor (thus
reducing its size), and keeps the restyling code closer together.

This is the first of two big chunks of code moved in this patch series.
A later patch in this series will move related code from nsFrameManager
into the same destination file.
2013-07-20 12:14:25 -07:00
Nicholas Cameron ab2aeb90c3 Bug 878142; be more precise about removing the animation manager from the refresh driver. r=dbaron 2013-06-25 20:58:46 +12:00
L. David Baron ea5e7313db Bug 858937 patch 2: Make off-main-thread CSS transitions/animations code that should be using nsLayoutUtils::GetStyleFrame do so. r=nrc
The fixes to the miniflush code
(nsTransitionManager::UpdateThrottledStyle and UpdateAllThrottledStyles)
fix the case where we constructed totally incorrect style contexts for
outer table frames (which have special style contexts inheriting from
the table frame) during the miniflush, leading to inconsistent style
data and other bad things, when we should have been touching the style
on the table frame instead.

The fixes to the other OMTA codepaths lead to layer tests being
performed on the same frame that the styles will be applied to, and
probably fix real bugs (which would occur when animating opacity or
transform on a table).
2013-06-24 22:32:10 -07:00
Phil Ringnalda 3d0fc66442 Back out 2332bb3fe186:10f70b8b04fe (bug 858937) for warnings-as-errors bustage
CLOSED TREE
2013-06-24 23:42:05 -07:00
L. David Baron 85ffcbb8ad Bug 858937 patch 2: Make off-main-thread CSS transitions/animations code that should be using nsLayoutUtils::GetStyleFrame do so. r=nrc
The fixes to the miniflush code
(nsTransitionManager::UpdateThrottledStyle and UpdateAllThrottledStyles)
fix the case where we constructed totally incorrect style contexts for
outer table frames (which have special style contexts inheriting from
the table frame) during the miniflush, leading to inconsistent style
data and other bad things, when we should have been touching the style
on the table frame instead.

The fixes to the other OMTA codepaths lead to layer tests being
performed on the same frame that the styles will be applied to, and
probably fix real bugs (which would occur when animating opacity or
transform on a table).
2013-06-24 22:32:10 -07:00
Catalin Iacob 6f4758d23e Bug 798914 (part 5) - Use newly introduced mozilla::MallocSizeOf instead of nsMallocSizeOfFun. r=njn.
--HG--
extra : rebase_source : fc472490dd978d165f02f77ed37f07aed6e5bb61
2013-06-23 14:03:39 +02:00
Nicholas Cameron a14102618a Bug 849399. Invalidate existing style rule if we start a transition. r=dbaron 2013-06-18 14:18:55 +12:00
Ryan VanderMeulen 04e740d525 Backed out changesets a06a3cca82e8 and 711d46a1f67e (bug 849399) for frequent Android reftest-2 failures. 2013-06-12 15:23:23 -04:00
Nicholas Cameron d7ee0f5b5f Bug 880075. Move def of pts in one scope since it is no longer used in the if statement and add comment; r=dbaron 2013-06-12 17:43:17 +12:00
Nicholas Cameron 31c88825ca Bug 849399. Invalidate existing style rule if we start a transition. r=dbaron 2013-06-12 17:39:42 +12:00
L. David Baron 92ae951214 Bug 879255: Refactor fix for bug 613888, step 4: consolidate conditions, and reindent (and fix bracing while doing so). r=nrc 2013-06-05 09:35:52 +09:00
L. David Baron e44a65f4cd Bug 879255: Refactor fix for bug 613888, step 3: move no-change test earlier so that we don't have to clutter conditions between the new location and old with logic to fall through to it. r=nrc 2013-06-05 09:35:52 +09:00
L. David Baron 7770a26c1c Bug 879255: Refactor fix for bug 613888, step 2: consolidate oldPT variable. r=nrc 2013-06-05 09:35:52 +09:00
L. David Baron 4cdda0b980 Bug 879255: Refactor fix for bug 613888, step 1: create haveCurrentTransition variable. r=nrc 2013-06-05 09:35:52 +09:00
David Zbarsky 2091ff11cc Bug 788549 Part 6: Remove a redundant if check r=dbaron 2013-05-30 17:45:17 -07:00
L. David Baron b5c2e54e41 Bug 815408: Ignore CSS transitions and animations in print and print preview. r=bzbarsky
Note that this patch has a little bit of a belt-and-braces aspect to it.
In each file, either one of the changes should be sufficient, but one of
them prevents us from doing unneeded work and the other one ensures that
we never apply style resulting from transitions and animations even if
somehow we do that work.

Also note that the tests don't actually test anything usefully, since
the reftest harness doesn't currently make the pres context non-dynamic.
(Thus they're marked as failing.)  I'm not sure what I should do about
that, though I'm considering just deleting the tests entirely.
2013-05-29 14:36:39 +08:00
David Zbarsky a113dee00c Bug 874770 - Always enable OMTA throttling r=nrc 2013-05-22 18:31:03 +08:00
Olli Pettay cbb79393f6 Bug 848291 - Update TransitionEvent to be compatible with the spec, r=dbaron 2013-05-04 17:41:20 +03:00
Matt Woodrow b6d1579a17 Bug 840480 r=roc 2013-02-20 13:13:01 +13:00
L. David Baron c5b9eee040 Bug 781360 patch 3: Rename {nsIFrame,nsStyleContext,nsComputedDOMStyle}::GetStyle* to Style*, since they can never return null. r=dholbert
Except for the changes in:
  layout/generic/nsIFrame.h (part)
  layout/style/nsComputedDOMStyle.h (all)
  layout/style/nsRuleNode.cpp (part)
  layout/style/nsStyleContext.cpp (part)
  layout/style/nsStyleContext.h (part)
(see patch 3b in the bug), this patch was written with the sed script:
s/\<GetStyle\(Font\|Color\|List\|Text\|Visibility\|Quotes\|UserInterface\|TableBorder\|SVG\|Background\|Position\|TextReset\|Display\|Content\|UIReset\|Table\|Margin\|Padding\|Border\|Outline\|XUL\|SVGReset\|Column\)\>/Style\1/g
2013-02-16 13:51:02 -08:00
L. David Baron 0836abe85d Bug 781360 patch 1: Rename nsStyleContext::GetRuleNode to RuleNode, since it can never return null. r=dholbert
This makes it conform to our convention that getters returning pointers
that can never be null do not begin with "Get".

nsStyleContext's rule node is never null because we require a rule node
in order to construct a style context.
2013-02-16 13:04:53 -08:00
L. David Baron 50d4e367af Bug 841789, patch 1: Rename nsIFrame::GetStyleContext() to nsIFrame::StyleContext() since it can never return null. r=dholbert
This makes it conform to our convention that getters returning pointers
that can never be null do not begin with "Get".
2013-02-15 21:38:33 -08:00
Ms2ger 26de886928 Bug 825407 - Get rid of GetElementParent; r=mounir 2013-01-11 09:43:01 +01:00
L. David Baron 04a2340b4d Bug 822721 followup: remove bogus assertion to fix orange. 2013-01-09 08:51:14 -08:00
L. David Baron 38ab2a49a6 Fix bustage from bug 822721. 2013-01-08 20:53:16 -08:00
L. David Baron 328a3e5be7 Bug 822721: Call CalcStyleDifference and process the style change list resulting from the miniflush we do to update throttled animations prior to seeing if we need to start transitions. r=bzbarsky
The CalcStyleDifference call is absolutely necessary even if we didn't
need to process the change list, because it causes the new style
context to have cached structs that we might need for a later
comparison.  This is important because, as an optimization, we only
compare structs that have been retrieved.  This optimization requires
that when we replace a style context, we fetch all the structs on the
new style context that had been fetched on the old style context (which
is normally necessary anyway in order to do comparison so we can process
the changes appropriately).

However, actually processing the change list is also necessary to fix
the bug; it's the actual change from the miniflush that matters here.
Based on dholbert's debugging information, I think it's mostly likely
because we were failing to process the UpdateOverflow hint.
2013-01-08 20:37:29 -08:00
Nicholas Cameron cf3f70bb6a Bug 823124; speculative fix - null style rule from an animation; r=dbaron 2012-12-27 11:42:34 +13:00
Nicholas Cameron 950053c77a Bug 823460; start throttled transitions with delays; r=dbaron; a=blocking-basecamp
--HG--
extra : rebase_source : 8e57f7106fd8241556e63076f8dedc0cb72052e7
2012-12-23 17:52:13 +13:00
Ms2ger 2536d3e260 Bug 820864 - Fix new build warnings in nsTransitionManager.cpp; r=nrc 2012-12-12 20:32:29 +01:00
Nicholas Cameron c54f8d4754 Bug 780692; throttle OMTA (rollup patch). r=dbaron,bz
--HG--
extra : rebase_source : 1207275df5c509ac1974e2b9333c738b995f9d5e
2012-12-12 10:12:43 +13:00
Boris Zbarsky 05ba9f02c1 Bug 811449 part 8. Get rid of nsGenericElement. r=peterv 2012-11-14 14:10:08 -08:00
Cameron McCormack 28fd36a685 Bug 811581 - Add a base class for all *RuleProcessorData classes. r=bz 2012-11-15 06:09:01 +11:00
Jeff Walden 85c3da4e2b Eliminate a few nullptr-to-bool conversions to avoid a clang warning (which we upgrade to error) in some clang revs. No bug, r=sparky
--HG--
extra : rebase_source : 6b45c8e1dd07449a5ebc34704c19e05fe155f628
2012-10-09 16:14:42 -07:00
David Zbarsky 18258768e4 Bug 785648 - Improve OMTA logging r=cjones 2012-08-25 21:27:28 -04:00
David Zbarsky e3978b50ba Bug 780692 Part 0: Make sure frames that have async animations are marked as having active layers r=roc 2012-08-25 10:52:30 -04:00
David Zbarsky 09705d7fb3 Fix a logging message, no bug, r=me 2012-08-25 00:10:47 -04:00
David Zbarsky aeca3e5aa7 Log when we can't use async animations due to pseudos, no bug, r=cjones 2012-08-24 15:08:18 -04:00
Ehsan Akhgari e368dc9c85 Bug 579517 - Part 1: Automated conversion of NSPR numeric types to stdint types in Gecko; r=bsmedberg
This patch was generated by a script.  Here's the source of the script for
future reference:

function convert() {
echo "Converting $1 to $2..."
find . ! -wholename "*nsprpub*" \
       ! -wholename "*security/nss*" \
       ! -wholename "*/.hg*" \
       ! -wholename "obj-ff-dbg*" \
       ! -name nsXPCOMCID.h \
       ! -name prtypes.h \
         -type f \
      \( -iname "*.cpp" \
         -o -iname "*.h" \
         -o -iname "*.c" \
         -o -iname "*.cc" \
         -o -iname "*.idl" \
         -o -iname "*.ipdl" \
         -o -iname "*.ipdlh" \
         -o -iname "*.mm" \) | \
    xargs -n 1 sed -i -e "s/\b$1\b/$2/g"
}

convert PRInt8 int8_t
convert PRUint8 uint8_t
convert PRInt16 int16_t
convert PRUint16 uint16_t
convert PRInt32 int32_t
convert PRUint32 uint32_t
convert PRInt64 int64_t
convert PRUint64 uint64_t

convert PRIntn int
convert PRUintn unsigned

convert PRSize size_t

convert PROffset32 int32_t
convert PROffset64 int64_t

convert PRPtrdiff ptrdiff_t

convert PRFloat64 double
2012-08-22 11:56:38 -04:00
David Zbarsky 05b13cba8d Bug 784239 - Perform async animations even when not all properties can be asyncified r=roc 2012-08-21 21:48:47 -04:00
David Zbarsky 88efdd2ce1 Bug 768440 Part 2: Animate CSS Transitions on the compositor r=roc,dbaron 2012-07-31 10:28:22 -07:00
David Zbarsky 0a3b3bfe6a Bug 768440 Part 1: Move ElementTransitions and ElementPropertyTransition to the header r=dbaron 2012-07-31 10:28:21 -07:00
Mark Finkle ecceaf8977 Backout 169ff207ed19, a34baed70c1b, f9ccdd490bd7, 39550ed860e6, 2194a2dd66b2, 908eb2e26843, a76e0a267f26 due to mobile viewport bustage (bug 778580) 2012-07-30 14:36:12 -04:00
Aryeh Gregor d0ad5a7d0c Bug 777292 part 2 - Change all nsnull to nullptr 2012-07-30 17:20:58 +03:00
David Zbarsky def7ad497f Bug 768440 Part 2: Animate CSS Transitions on the compositor r=roc,dbaron 2012-07-27 13:23:45 -07:00