Commit Graph

4386 Commits

Author SHA1 Message Date
Daniel Holbert
1cc5671011 Bug 1066089: add crashtest. (test-only) 2014-09-23 14:12:54 -07:00
Christoph Kerschbaumer
58b0ee2e6c Bug 1038756: Callsites creating a channel in /layout/style/ (r=dbaron) 2014-09-21 09:41:26 -07:00
Xidorn Quan
7d3a54f5b0 Bug 1069716 - Fix deficient CalcDifference of nsStyleList. r=heycam 2014-09-20 03:43:00 +02:00
Cameron McCormack
a2eb916c20 Bug 1069761 - Move AppendSerializedFontSrc to nsStyleUtil. r=jdaggett 2014-09-22 10:32:58 +10:00
Boris Zbarsky
0e72d84ed9 Bug 958887 part 4. Generate property accessors on the CSS2Properties interface for the dashed-named CSS properties and float that use their actual property names. r=peterv 2014-09-19 22:58:27 -04:00
Cameron McCormack
9fdb2d1e99 Bug 1069065 - Cycle collect ImportRule. r=bzbarsky 2014-09-19 11:12:31 +10:00
Markus Stange
31a78ec715 Bug 944836 - Add CSS property -moz-window-dragging: drag | no-drag. r=dbaron 2014-09-18 10:52:25 +02:00
Daniel Holbert
883faaa78e Bug 1063775, part 2: Document nsCSSValue*List::Clone() as being infallible, and remove null-checks on its result. r=dbaron 2014-09-17 22:04:20 -07:00
Daniel Holbert
0932ccb58a Bug 1063775, part 1: Remove unnecessary null-checks after 'new' in StyleAnimationValue.cpp. r=dbaron 2014-09-17 22:04:17 -07:00
Daniel Holbert
392a8ec031 Bug 1065766 followup: add whitespace between @supports and open-paren, to address review comment. DONTBUILD because whitespace-only 2014-09-17 09:26:22 -07:00
Daniel Holbert
a2631eee53 Bug 1065766: Add UA stylesheet rule to preserve <video> centering-by-default behavior, using "object-fit: contain". r=heycam 2014-09-16 23:19:59 -07:00
Daniel Holbert
af148676ec Bug 1067634: Wrap "will-change" decl in @supports rule, to prevent browser console spam while it's disabled by default. r=heycam 2014-09-16 23:19:58 -07:00
Daniel Holbert
23d30ae6d3 Bug 1066089: Clear dependent data from CustomCounterStyle when it gets dropped from table. f=xidorn r=dbaron 2014-09-16 15:05:04 -07:00
Daniel Holbert
1c392baed1 (no bug) Tweak a comment about eContain & eCover to explicitly mention their specified-style equivalents, for better mxr searchability. comment-only, DONTBUILD 2014-09-16 10:55:13 -07:00
Jonathan Kew
79f0e0881f bug 1057329 - update the values of text-orientation to match current css-writing-modes draft (omitting use-glyph-orientation and [for now] sideways and sideways-left). r=jdaggett 2014-09-16 11:12:00 +01:00
Cameron McCormack
9b086dd079 Bug 1065868 - Make nsStyleMargin::MaxDifference return the right bits. r=dbaron 2014-09-16 16:54:33 +10:00
Gijs Kruitbosch
aa2496c90a Bug 1044595 - fix default/active button text on OS X 10.10, r=mstange,jaws
--HG--
extra : rebase_source : c558491822fc158d44a127cfd5014bd5338d05f1
2014-09-12 00:31:15 +01:00
L. David Baron
be858c5567 Bug 575675 - Remove assertion about aRelevantLinkVisited that isn't needed, and assumes that all link elements are styled with a style sheet that has :visited rules. r=bzbarsky 2014-09-13 06:17:37 -07:00
L. David Baron
9e53a17632 Bug 977991 patch 6 - Use the faster eRestyle_StyleAttribute path for style attribute changes. r=birtles 2014-09-13 06:17:37 -07:00
L. David Baron
3357a00e3a Bug 977991 patch 5 - Add eRestyle_ChangeAnimationPhase to switch between the with-animation and without-animation styles. r=birtles
This is an additional bit on nsRestyleHint that says that the restyling
operation should also perform all the work needed to switch between
style-without-animation and style-with-animation (based on
nsPresContext::IsProcessingAnimationStyleChange).  These concepts will
go away in bug 960465.

Note that we don't want this behavior for the animation-only style
update code (bug 996796, etc.), and I wanted to make this explicit so
that it was clear when it was happening, and so that it was clear what
code should be removed when we git rid of it.

This is the workaround needed to land bug 977991 prior to bug 960465.
(I think there's also a minor dependency in the other direction, so we
need a workaround one way or the other.)

Note that this depends on bug 1057231.
2014-09-13 06:17:37 -07:00
L. David Baron
5e262a47d8 Bug 977991 patch 3 - Add ability for RuleNodeWithReplacement to replace the style attribute rule and its important rule. r=birtles
This allows posting a restyle that says that only the rule(s) from the
StyleAttrSheet cascade level will be replaced, which avoids running
selector matching.

Part 4 will ensure that we only invoke this code for element styles (and
not pseudo-element or anonymous box styles).  Despite that, I prefer
having the runtime check here as well given that it's a very simple way
to ensure we don't do something silly that might have security
implications.
2014-09-13 06:17:36 -07:00
L. David Baron
b4d8a65955 Bug 977991 patch 2 - Add mCheckForImportantRules to the information nsStyleSet::RuleNodeWithReplacement keeps about cascade levels. r=birtles
This is needed to support doing replacements of levels that can contain
important rules, which will happen in patch 3.
2014-09-13 06:17:36 -07:00
L. David Baron
133a7fac65 Bug 977991 patch 1 - Expose variant of RulesMatching on nsHTMLCSSStyleSheet that is less work to call. r=birtles
This allows nsStyleSet::RuleNodeWithReplacement to call it without
constructing an entire (and unnecessary) ElementRuleProcessorData, which
will happen in patch 3.
2014-09-13 06:17:36 -07:00
L. David Baron
e5f6879ca0 Bug 1058346 patch 2 - Add eRestyle_SVGAttrAnimations and support it in nsStyleSet::RuleNodeWithReplacement. r=birtles
This allows posting a restyle that says that only the rule(s) from the
SVGAttrAnimationSheet cascade level will be replaced, which avoids running
selector matching.

This is needed to land bug 977991 prior to landing bug 960465, since
that requires replacing all levels that contain animations.

(I'll rename this to match the name determined in bug 1057231.)
2014-09-13 06:17:35 -07:00
L. David Baron
755d0056e6 Bug 1058346 patch 1 - Expose a simpler variant of RulesMatching from SVGAttrAnimationRuleProcessor. r=birtles
This allows nsStyleSet::RuleNodeWithReplacement to call it without
constructing an entire (and unnecessary) ElementRuleProcessorData, which
will happen in patch 2.
2014-09-13 06:17:35 -07:00
L. David Baron
f5ec865c19 Bug 1057231 patch 4 - Move SVG Attribute Animation rules from the pres hint level to their own cascade level. r=dholbert
This is only a very slight reordering of their position in the cascade,
since they were previously walked at the end of
nsSVGElement::WalkContentStyleRules, which was called near the end of
nsHTMLStyleSheet::RulesMatching.  So the only change should be that they
now take priority over the xml:lang rule added by nsHTMLStyleSheet, a
rule with which they do not interact.
2014-09-13 06:17:35 -07:00
L. David Baron
877da49af1 Bug 1057231 patch 3 - Add new cascade level for rules from SMIL Animation of SVG attributes to the style set. r=dholbert
I will fix the indentation of gCascadeLevels in bug 977991 patch 2,
which adds a member to each element of the array.

Note that this bumps the maximum sheetType from 8 to 9 (and number of
them from 9 to 10), which does not require updating
NS_RULE_NODE_LEVEL_MASK, since NS_RULE_NODE_LEVEL_MASK currently has 4
bits and allows a maximum of 15.
2014-09-13 06:17:35 -07:00
L. David Baron
9842f42ffb Bug 1057231 patch 1 - Add a rule processor class for rules from SMIL Animation of SVG attributes. r=dholbert
This patch series (to move SVG Animation rules to their own level of the
cascade) is needed so that they can participate in the mechanism for
updating only animation styles to the present time without touching any
other styles.

In theory, this should have been done as part of 996796 or even as part
of prior work on off main thread animations, except that it doesn't seem
possible to have SVG Animations and CSS Transitions interacting on the
same element and have that element's style out of date, which means it
wasn't necessary for the existing code to update only animation styles.

However, bug 960465 will use this similar mechanism as the new mechanism
for making sure transitions start in a reasonable way (replacing the
mechanism of phases, going from style without animation to style with
animation via nsPresContext::IsProcessingAnimationStyleChange).  This
will require that, for SVG Animations to continue interacting correctly
with CSS Transitions, that they have their own cascade level so that
they can participate in RestyleManager::UpdateOnlyAnimationStyles.

Additionally, this is needed even sooner, for bug 977991, which needs
(temporarily, until bug 960465 lands) a mechanism for updating the style
attribute style *and* all animation-phase-dependent styles.

Yes, it's a little bit annoying to have to have another class, and
another object per-document for this, but that's currently what comes
with being a level of the cascade.  But it's one class and one object
per document, and I believe there will be substantial benefits to having
all rule processor levels be only-animation-related or
not-animation-related (except for the style attribute level, which is
simple enough that it isn't needed yet).
2014-09-13 06:17:34 -07:00
L. David Baron
fb077873cf Bug 1066911 - Allow eRestyle_Force{,Descendants} in RuleNodeWithReplacement. r=heycam
This is fine since the assertion is just checking that we're not calling
RuleNodeWithReplacement in cases when stronger restyling (i.e.,
restyling that does more work) is needed; the new eRestyle_Force and
eRestyle_ForceDescendants flags control whether we restyle at all.

This probably should have been done in bug 931668 (since bug 996796
landed before bug 931668, although not before the patches were written),
but it doesn't actually show up in our test suite until bug 977991 (or
maybe slightly earlier in bug 1057231 or bug 1058346).
2014-09-13 06:17:34 -07:00
Cameron McCormack
737d1f11ae Bug 1065257 - Assorted cleanups in nsLayoutStyleSheetCache. r=bzbarsky 2014-09-12 07:41:35 +10:00
Makoto Kato
ea5d044e00 Bug 1065261 - SectionCaret might not appears if 2.25dppx or higher. r=mtseng 2014-09-11 15:44:54 +09:00
Daniel Holbert
41bce9ed30 Bug 1065141: Clarify language in mochitest messages about whether OMTA is working. r=birtles 2014-09-09 22:31:56 -07:00
Nathan Froyd
b22d96e512 Bug 1061794 - move -Wshadow flags additions in layout/style/ to moz.build; r=mshal 2014-07-28 11:26:16 -04:00
Robert O'Callahan
bf35c76776 Bug 1063052. NS_RUNTIMEABORT if a builtin stylesheet fails to load. r=heycam 2014-09-10 13:10:18 +12:00
Daniel Holbert
fe4e8d9647 Bug 1055285 part 4: Extend test_transitions_per_property.html with a few more scenarios for background-position & object-position transitions. (no review) 2014-09-09 18:09:32 -07:00
Daniel Holbert
8829bbabc7 Bug 1055285 part 3: Implement animation for 'object-position' property. r=heycam 2014-09-09 18:09:32 -07:00
Daniel Holbert
471ab7f102 Bug 1055285 part 2: Implement CSS parsing & computation (but not animation) for 'object-position' property. r=heycam 2014-09-09 18:09:32 -07:00
Daniel Holbert
751fe17d2f Bug 1055285 part 1: Implement CSS parsing & computation for 'object-fit' property. r=heycam 2014-09-09 18:09:32 -07:00
Daniel Holbert
53a49cbf93 Bug 1060090 part 5: Refactor StyleAnimationValue <position>-handling code to use helper-methods. r=heycam 2014-09-09 11:40:20 -07:00
Daniel Holbert
d67c97c95f Bug 1060090 part 4: Allow computed-style 'Position' struct to have different initial values beyond just 0% 0%. r=heycam 2014-09-09 11:40:18 -07:00
Daniel Holbert
3743cd250c Bug 1060090 part 3: Refactor getComputedStyle implementation for 'background-position' to use helper-method for <position> & its sub-parts. r=heycam 2014-09-09 11:40:17 -07:00
Daniel Holbert
8ff891d5ab Bug 1060090 part 2: Spin out "ComputePositionValue", and rename its helper "ComputeBackgroundPositionCoord" to "ComputePositionCoord". r=heycam 2014-09-09 11:40:15 -07:00
Daniel Holbert
7fbf3d5b1b Bug 1060090 part 1: Rename ParseBackgroundPositionValues to ParsePositionValue. r=heycam 2014-09-09 11:40:10 -07:00
Xidorn Quan
87f0b84691 Bug 1063856 - Add more counter styles from the Predefined Counter Styles document, for better interop and web-compat. 2014-09-09 09:58:07 +01:00
Brian Birtles
9bf11140e4 Bug 1063992 - Set the animation player hold time to zero when it is initially paused; r=dzbarsky
This patch fixes a regression from bug 1033114, m-c changeset 9db3e43c19c1.

That changeset changed the meaning of mHoldTime (despite the commit message
which erroneously refers to mStartTime) to make it an offset from the start time
rather than a timestamp. However, it failed to update the case when we have an
initially-paused player. In that case the offset should be zero but the existing
code set it to the same value as the start time (which is, itself, an offset
from the beginning of the timeline) and the above changeset failed to update
that.
2014-09-09 08:55:34 +09:00
John Daggett
b59e49acf6 Bug 1062058 part 3 - make userfont entry a container of the platform font entry. r=heycam 2014-09-08 16:23:20 +09:00
John Daggett
4152f3896a Bug 1062058 part 2 - rename userfont classes and adjust flags. r=heycam 2014-09-08 16:23:20 +09:00
Daniel Holbert
3884afcf7a Bug 1063815 part 2: Use AddCSSValueCanonicalCalc for interpolating 'background-position' values, now that their coords are reliably calc-valued. r=bz 2014-09-05 18:40:20 -07:00
Daniel Holbert
c000ee3557 Bug 1063815 part 1: Use SetCalcValue() in StyleAnimationValue::ExtractComputedValue 'background-position' case. r=bz 2014-09-05 18:40:15 -07:00
Timothy Nikkel
b45467f328 Bug 1033679. When we clear frames from the image loader make sure that we also remove the images from the refresh driver. r=khuey
Normally a frame being destroyed would do this via PresShell::NotifyDestroyingFrame -> ImageLoader::DropRequestsForFrame but when we are tearing down the whole frame tree we skip per frame notifications like that for perf reasons. So we now make sure to do it when clearing out frames wholesale.

We also need to pass a prescontext pointer to ClearFrames because the ImageLoader only has a document pointer, and by that point in the presshell destruction sequence the presshell pointer on the document has been cleared.
2014-09-04 23:27:16 -05:00