Commit Graph

11647 Commits

Author SHA1 Message Date
Wes Kocher
9f58317c65 Backed out changeset 19b5e154c6f9 (bug 1176619) 2015-09-04 16:22:33 -07:00
Wes Kocher
f9f8218c5f Backed out changeset 6bbbffdbda5b (bug 1176621) 2015-09-04 16:22:31 -07:00
Wes Kocher
9442d1aa62 Backed out changeset 16cf05b1664c (bug 1174574) 2015-09-04 16:22:30 -07:00
Wes Kocher
a93ac43a7e Backed out changeset fd3a53075e54 (bug 1174574) 2015-09-04 16:22:28 -07:00
Wes Kocher
d12dfe74c5 Backed out changeset 332af3c9e366 (bug 1174553) 2015-09-04 16:22:27 -07:00
Mats Palmgren
3be8c0c8f4 Bug 1174553 part 5 - [css-grid] Replace the ambiguous Dimension with LogicalAxis. r=dholbert 2015-09-04 22:06:58 +02:00
Mats Palmgren
4b66bd9d6c Bug 1174574 part 2 - [css-grid] Implement intrinsic sizing for grid containers (aka GetMinISize/GetPrefISize). r=dholbert 2015-09-04 22:06:58 +02:00
Mats Palmgren
f91e1d63d8 Bug 1174574 part 1 - [css-grid] Move the guts of nsGridContainerFrame::CalculateTrackSizes into a Tracks method. r=dholbert 2015-09-04 22:06:57 +02:00
Mats Palmgren
60bf6b5654 Bug 1176621 - [css-grid] Implement "Stretch Flexible Tracks" and associated algorithms. r=dholbert 2015-09-04 22:06:57 +02:00
Mats Palmgren
bda8d77ccc Bug 1176619 - [css-grid] Implement the "Maximize Tracks" algorithm. r=dholbert 2015-09-04 22:06:57 +02:00
Mats Palmgren
875298f740 Bug 1151212 part 3 - [css-grid] Implement the "Resolve Intrinsic Track Sizes" algorithm. r=dholbert 2015-09-04 22:06:57 +02:00
Mats Palmgren
548b396dbb Bug 1174553 part 3 - [css-grid] Implement the 'min-content' / 'max-content' sizing functions in layout. r=dholbert 2015-09-04 22:06:57 +02:00
Mats Palmgren
e1f94ea6c0 Bug 1174546 part 2 - [css-grid] Implement the 'auto' min-sizing function in Grid layout. r=jfkthame 2015-09-04 22:06:57 +02:00
Mats Palmgren
e4748155d5 Bug 1151212 part 2 - [css-grid] Introduce a local GridItemInfo struct for holding a grid item's GridArea and other things. Put two nsTArrays of those in the grid container frame, one for normal flow items and one for abs.pos. grid-aligned descendants. Add a GridItemIndex method on the grid item iterator to return the index for the current item. r=dholbert 2015-09-04 22:06:57 +02:00
Mats Palmgren
9ee23e16a2 Bug 1151212 part 1 - [css-grid] Introduce a few local structs (GridReflowState, Tracks, TrackSizingFunctions) to make it easier to pass around data. r=dholbert 2015-09-04 22:06:57 +02:00
Sebastian Hengst
1eb50ce368 Backed out 4 changesets (bug 571294, bug 1196479) for W(2) failure on Linux 64 opt. r=backout on a CLOSED TREE
TEST-UNEXPECTED-FAIL | /eventsource/eventsource-close.htm | EventSource: close(), test events - assert_unreached: Dunno what to do with message number 3 Reached unreachable code

Backed out changeset e2612be99d7d (bug 571294)
Backed out changeset 9aea0c4a0822 (bug 1196479)
Backed out changeset 196e98128c58 (bug 571294)
Backed out changeset 1d662c2552bd (bug 571294)
2015-09-04 20:29:48 +02:00
Michael Layzell
931d0d32a7 Bug 1196479 - Fire selectstart and selectionchange events on the input node when the selection in that editor changes. r=ehsan 2015-09-04 12:35:49 -04:00
Michael Layzell
7ab1c57716 Bug 571294 - Part 1: Implement selection events behind the dom.select_events.enabled pref, r=smaug 2015-09-04 12:35:46 -04:00
Jim Mathies
626e7b7b7c Bug 1195472 - Call Show after Enable on puppet widgets to avoid an assertion when running crash tests. r=aklotz 2015-09-01 10:39:30 -05:00
Xidorn Quan
300011c44e Bug 1197765 - Compare text content inside frame instead of the content node for ruby autohiding. r=dbaron
--HG--
extra : source : d265d1e03757b1f886e435ef9b60aa962787e676
2015-09-01 09:24:37 +10:00
Nicholas Nethercote
f44287005f Bug 1198334 (part 1) - Replace the opt-in FAIL_ON_WARNINGS with the opt-out ALLOW_COMPILER_WARNINGS. r=glandium.
The patch removes 455 occurrences of FAIL_ON_WARNINGS from moz.build files, and
adds 78 instances of ALLOW_COMPILER_WARNINGS. About half of those 78 are in
code we control and which should be removable with a little effort.

--HG--
extra : rebase_source : 82e3387abfbd5f1471e953961d301d3d97ed2973
2015-08-27 20:44:53 -07:00
Markus Stange
0eb1d7c10b Bug 1016035 - Make the threshold in AxisPhysicsMSDModel::IsFinished controllable by the caller. r=kip
--HG--
extra : commitid : 8kd91z4FD2n
extra : rebase_source : bcdf5a75c527f871d2077ca1ef2e1958eb3db4d9
2015-08-04 16:11:37 -04:00
Masayuki Nakano
9895f90eca Bug 895274 part.28 Rename NS_MOUSE_ENTER_WIDGET to eMouseEnterIntoWidget r=smaug 2015-08-29 08:58:31 +09:00
Masayuki Nakano
db00b74a82 Bug 895274 part.27 Rename NS_MOUSE_BUTTON_DOWN to eMouseDown r=smaug 2015-08-29 08:58:30 +09:00
Masayuki Nakano
30fdd39afb Bug 895274 part.26 Rename NS_MOUSE_BUTTON_UP to eMouseUp r=smaug 2015-08-29 08:58:30 +09:00
Masayuki Nakano
717c415187 Bug 895274 part.25 Rename NS_MOUSE_MOVE to eMouseMove r=smaug 2015-08-29 08:58:29 +09:00
Masayuki Nakano
07ce780806 Bug 895274 part.19 Rename NS_PLUGIN_FOCUS to ePluginFocus r=smaug 2015-08-29 08:58:28 +09:00
Masayuki Nakano
956405c088 Bug 895274 part.18 Rename NS_PLUGIN_ACTIVATE to ePluginActivate r=smaug 2015-08-29 08:58:28 +09:00
Masayuki Nakano
2fbb0f1587 Bug 895274 part.17 Rename NS_SCROLL_EVENT to eScroll r=smaug 2015-08-29 08:58:28 +09:00
Masayuki Nakano
6ecfef2cde Bug 895274 part.5 Rename NS_EVENT_NULL to eVoidEvent r=smaug 2015-08-29 08:58:26 +09:00
Masayuki Nakano
0d22745cda Bug 895274 part.3 Make the enum of event messages a named enum IGNORE IDL r=smaug 2015-08-26 21:56:59 +09:00
Mats Palmgren
98e0e2b9c8 Bug 1194888 - [css-grid] A line outside the existing grid should be treated as 'auto' for abs.pos (10.1). r=dholbert 2015-08-25 15:40:10 +02:00
Mats Palmgren
5e18f6b48c Bug 1194892 - [css-grid] "span * / span *" should be treated as "auto / auto" for abs.pos. grid items. r=dholbert 2015-08-25 15:40:10 +02:00
Masayuki Nakano
66f2c27305 Bug 895274 part.1 Rename WidgetEvent::message to WidgetEvent::mMessage r=smaug 2015-08-22 10:34:51 +09:00
Ting-Yu Lin
ef51f04d19 Bug 1195672 - Add |nsAutoCString nsIFrame::ListTag()| for debugging. f=mtseng, r=roc
This make it easier to print a frame tag name in one debug log line.

--HG--
extra : commitid : 5bl8GhmTLQi
extra : rebase_source : f151c98dc99c33e8050b106ab8695a9053dbb3ad
2015-08-19 15:54:10 +08:00
Masayuki Nakano
0882629f91 Bug 299603 part.5 nsTextFrame should use system foreground or background color when painting IME selections if whose style defines only one of foreground color or background color r=roc 2015-08-19 16:37:39 +09:00
Masayuki Nakano
f40421a26b Bug 299603 part.4 Some global methods in nsTextFrame.cpp should be members of nsTextFrame class r=roc 2015-08-19 16:37:39 +09:00
Kartikaya Gupta
056c55b10f Bug 1180295 - Rip out call to setContentDocumentFixedPositionMargins. r=rbarker
--HG--
extra : commitid : 7uU6xgPVZom
2015-08-18 14:27:18 -04:00
Cameron McCormack
2e3473ca07 Bug 968923 - part 3b - propagating use counters from SVG images into owning/parent documents; r=seth 2015-06-03 13:42:07 -04:00
Robert O'Callahan
23fec6ad97 Bug 1179288. Make position:fixed induce a stacking context. r=heycam
--HG--
extra : commitid : 7QaxW4IWItK
extra : rebase_source : 33cc2889181a70d662757c0a93a4d1438ffb3573
2015-08-17 11:02:54 +12:00
Ryan VanderMeulen
2b80504f9c Bug 1195472 - Annotate 505912-1.html to expect one assertion in e10s mode. 2015-08-17 15:36:20 -04:00
William Chen
148ff86273 Bug 1181130 - Part 3: Keep track of editable descendants per node and prevent NS_STYLE_USER_SELECT_ALL selection for nodes with editable descendants. r=bz 2015-08-14 10:52:38 -07:00
Ehsan Akhgari
ce551a9f32 Bug 1181130 - Part 1: Add support for -moz-user-select: -moz-text; r=dbaron 2015-08-14 10:49:27 -07:00
Xidorn Quan
8c9c798a7f Bug 1186721 - Suppress line break due to soft hyphen inside ruby. r=jfkthame
--HG--
extra : source : dfcc7df95f21d7b22705ebb24b9f693d70989167
2015-08-13 22:39:51 +10:00
Jonathan Kew
b9df47f5de Bug 1191185 - Simplify nsHypotheticalBox, eliminating obsolete/redundant fields, and rename to nsHypotheticalPosition. r=dholbert 2015-08-12 11:02:02 +01:00
Jonathan Kew
0d98ee0d97 Bug 1191109 - Clean up use of writing-modes in GetHypotheticalBoxContainer, eliminating a redundant ConvertTo call. r=dholbert 2015-08-12 11:02:02 +01:00
Jonathan Kew
b8dbdb1dbd Bug 1191855 - Make the intrinsic size of <iframe> remain physical 300x150, regardless of writing mode. r=dholbert 2015-08-12 11:02:02 +01:00
Matt Woodrow
2ab56744ea Bug 1187432 - Avoid scheduling main-thread paints for scrolls handled by apz. r=tn
--HG--
extra : rebase_source : 343dabda5a9bbbeac0c25b69d63d0a82f595b599
2015-08-07 15:37:56 -04:00
Brian Birtles
937bc54615 Bug 1181392 part 5 - Remove use of IsFinishedTransition from AnimationCollection::HasAnimationOfProperty; r=dbaron
AnimationCollection::HasAnimationOfProperty uses IsFinishedTransition to filter
out transitions that should otherwise be ignored. This is used in the following
places:

1. nsLayoutUtils::HasAnimations

   The is only used by nsIFrame::BuildDisplayListForStackingContext to see if
   there are any opacity animations

   For this case, simply returning *current* animations would be sufficient
   (since finished but filling animations should have already filled in the
   display opacity)

2. CommonAnimationManager::GetAnimationsForCompositor

   This should really only return *current* animations--that is, animations that
   are running or scheduled to run. Finished animations never run on the
   compositor. Indeed, only *playing* animations run on the compositor but, as
   we will see in some of the cases below, it is sometimes useful to know that
   an animation *will* run on the compositor in the near future (e.g. so we can
   pre-render content).

   The places where GetAnimationsForCompositor is used are:

   - When building layers to add animations to layers in nsDisplayList--in this
     case we skip any animations that aren't playing so if
     GetAnimationsForCompositor only returned current animations that would be
     more than sufficient.

   - In nsLayoutUtils::HasAnimationsForCompositor. This in turn is used:

     - In ChooseScaleAndSetTransform to see if the transform is being animated
       on the compositor. If so, it calls
       nsLayoutUtils::ComputeSuitableScaleForAnimation (which also calls
       GetAnimationsForCompositor) and passes the result to
       GetMinAndMaxScaleForAnimationProperty which we have already adjusted in
       part 4 of this patch series to only deal with *relevant* animations

       Relevant animations include both current animations and in effect
       animations but we don't run forwards-filling animations on the compositor
       so GetAnimationsForCompositor should NOT return them. Current animations
       should be enough. In fact, playing animations should be enough but we
       might want to pre-render layers at a suitable size during their delay
       phase so returning current animations is probably ok.

     - In nsDisplayListBuilder::MarkOutOfFlowFrameForDisplay to add a fuzz
       factor to the overflow rect for frames undergoing a transform animation
       on the compositor. In this case too current animations should be
       sufficient.

     - In nsDisplayOpacity::NeedsActiveLayer to say "yes" if we are animating
       opacity on the compositor. Presumably in this case it would be good to
       say "yes" if the animation is in the delay phase too (as it currently
       does). After the animation is finished, we should drop the layer, i.e.
       current animations should be sufficient.

     - In nsDisplayTransform::ShouldPrerenderTransformedContent. As with
       nsDisplayOpacity::NeedsActiveLayer, we only need to pre-render
       transformed content for animations that are current.

     - In nsDisplayTransform::GetLayerState. As with
       nsDisplayOpacity::NeedsActiveLayer, we only need to return active here
       for current animations.

     - In nsIFrame::IsTransformed. Here we test the display style to see if
       there is a transform and also check if transform is being animated on the
       compositor. As a result, we really only need HasAnimationsForCompositor
       to return true for animations that are playing--otherwise the display
       style will tell us if we're transformed or not. Returning true for all
       current compositor animations (which is a superset of playing), however,
       should not cause problems (we already return true for even more than
       that).

     - In nsIFrame::HasOpacityInternal which is much the same as
       nsIFrame::IsTransformed and hence current should be fine.

3. AnimationCollection::CanThrottleAnimation

   Here, HasAnimationOfProperty is used when looking for animations that would
   disqualify us from throttling the animation by having an out-of-date layer
   generation or being a transform animation that affects scroll and so requires
   that we do the occasional main thread sample to update scrollbars.

   It would seem like current animations are enough here too. One interesting
   case is where we *had* a compositor animation but it has finished or been
   cancelled. In that case, the animation won't be current and we should not
   throttle the animation since we need to take it off its layer.

   It turns out checking for current animations is still ok in this case too.
   The reasoning is as follows:

   - If the animation is newly-finished, we'll pick that up in
     Animation::CanThrottle and return false then.

   - If the animation is newly-idle then there are two cases:

     If the cancelled animation was the only compositor animation then
     AnimationCollection::CanPerformOnCompositorThread will notice that there
     are no playing compositor animations and return false and
     AnimationCollection::CanThrottleAnimation will never be called.

     If there are other compositor animations running, then
     AnimationCollection::CanThrottleAnimation will still return false because
     whatever cancelled the animation will update the animation generation and
     we'll notice the mismatch between the layer animation generation and the
     animation generation on the collection.

Based on the above analysis it appears that making
AnimationCollection::HasAnimationOfProperty return only current animations (and
simulatneously renaming it to HasCurrentAnimationOfProperty) is safe. Indeed, in
effect, we already do this for transitions but not for animations. This patch
generalizes this behavior to all animations.

This patch also updates test_animations_omta.html since it was incorrectly
testing that a finished opacity animation was still running on the compositor.
Finished animations should not run on the compositor and the changes in this
patch cause that to happen. The reason we don't just update this test to check
for RunningOn.MainThread is that for opacity animations, unlike transform
animations, we can't detect if an opacity on a layer was set by animation or
not. As a result, for opacity animations we typically test the opacity on
either the main thread or compositor in order to allow for the case where an
animation-set opacity is still lingering on the compositor.
2015-08-07 12:29:36 +09:00
Jonathan Kew
c97e4db638 Bug 1183431 - Ensure hypothetical box has a writing mode with the same block direction as the absolute containing block. r=dholbert 2015-08-06 21:01:31 +01:00
Jonathan Kew
04f89231e4 Bug 1183431 - Tests for hypothetical box computation (to determine static position of abspos element) where orthogonal writing modes are involved. r=dholbert
--HG--
rename : layout/reftests/writing-mode/blue-32x32.png => layout/reftests/writing-mode/abspos/blue-32x32.png
2015-08-06 21:00:45 +01:00
Jonathan Kew
17045bb405 Backout changesets 1639af64e372, 74ecf0f57a56, 94831690f525, 27eab13d3cf2 (bug 1183431) for Android-specific failure in reftest 1183431-orthogonal-modes-5a.html. 2015-08-06 17:32:20 +01:00
Jonathan Kew
157a3efa31 Bug 1183431 followup - Crashtest no longer asserts, so mark it appropriately on the CLOSED TREE. 2015-08-06 16:36:50 +01:00
Jonathan Kew
aae5ae1f7f Bug 1183431 - Ensure hypothetical box has a writing mode with the same block direction as the absolute containing block. r=dholbert 2015-08-06 15:44:50 +01:00
Jonathan Kew
120ac081be Bug 1183431 - Tests for hypothetical box computation (to determine static position of abspos element) where orthogonal writing modes are involved. r=dholbert 2015-08-06 15:44:48 +01:00
L. David Baron
bb57d7d42e Bug 451791 patch 2 - Report block non-empty to its parent block during margin collapsing if we encounter clearance. r=roc
The goal of ComputeCollapsedBStartMargin is to collapse all of the
margins that collapse with a block's top margin.  It does this by
scanning forward through the child list until it finds something that
blocks collapsing; it descends into children through recursion.  When we
find a non-empty block or line, we stop collapsing and report to the
parent that the child is non-empty so that it stops collapsing as well.

This patch changes our behavior when we have clearance to do the same
thing that we do for non-empty lines or blocks (which makes both
occurrences of |goto done| be preceded by the same code).  Without the
patch we would fail to report being non-empty to the parent (and instead
report emptiness based on the IsEmpty() method).  This meant that,
without the patch, if a block has a child with clearance but also has
IsEmpty() true, we would stop scanning margins in that block after the
clearance, but start searching again for margins in the block's parent,
starting with the block's bottom margin.  This patch sets *aBlockIsEmpty
to true in that case so that we do not pick up again in the block's
parent (or, potentially, grandparent, etc.).

--HG--
extra : commitid : LCMTvXvZT3G
2015-08-05 21:04:38 -07:00
L. David Baron
8c08fc4385 Bug 451791 patch 1 - Remove write-only nsHTMLReflowState::mFlags::mHasClearance. r=roc
This was introduced in bug 209694 (gecko-dev 13a65028) but became unused
through bug 292295 (gecko-dev 4593df2a57) and bug 300030 (gecko-dev
31f18988).

--HG--
extra : commitid : 1YUuWOKeInm
2015-08-05 21:04:38 -07:00
Robert O'Callahan
1e49288224 Bug 1184842. Pass aOldValue to all mutation observers. r=peterv
--HG--
extra : commitid : CYjyQn3BAqb
extra : rebase_source : ef153c7cf1e08a058d8de6a76dbe7dc343a299fb
2015-07-25 18:01:19 +12:00
Robert O'Callahan
f584dfab18 Bug 1184842. Remove frameset mVisibilityOverride since it's always false now. r=mats
--HG--
extra : commitid : 6Ru8WruV4Gy
extra : rebase_source : 019fadb9d61bf3617ca3b1387e139bdd13ed3a8c
2015-07-21 16:22:02 +12:00
Robert O'Callahan
bef5029ecc Bug 1184842. Remove layout.frames.force_resizability pref. r=mats
--HG--
extra : commitid : 7nC2lTgLu0Q
extra : rebase_source : f13e3e7009930be6a0cacc5a9badbd5ae80dc30e
2015-07-21 16:18:17 +12:00
CJ Ku
009a82453e Bug 1061393 - Export display list info to layer scope viewer. r=kamidphish 2015-08-03 02:11:00 -04:00
L. David Baron
119b557460 Bug 538194 patch 2 - Redo block reflow below floats when the height of a block that does not intersect floats pushes it into the way of other floats. r=roc
This adds an additional retry loop in block reflow that we can only
trigger when reflowing a block formatting context (replacedBlock
non-null).  It can retry in two different ways, either with a narrower
width but at the same vertical position (when
ReplacedBlockFitsInAvailSpace is still true) or at a new vertical
position (which is treated as a form of clearance).

Fortunately we don't have to worry about margins collapsing *through*
such a boundary since we're dealing with a new block formatting context.

Note that Chromium passes all of the new bfc-displace-* tests, although
it moves the block formating context down unnecessarily in
bfc-shrink-1.html (which we do neither before nor after the patch),
though agrees with the width we have after the patch (but not before the
patch).

--HG--
extra : commitid : FgDc4hjTxHp
2015-08-02 21:03:09 -07:00
L. David Baron
e92e2b3d34 Bug 538194 patch 1 - Refactor some code dealing with fitting block formatting contexts around floats into separate functions. r=roc
--HG--
extra : commitid : 5GnXOwsYaJA
2015-08-02 21:03:09 -07:00
Daniel Holbert
f933dadde9 Bug 1023344: Tweak asserts() annotation for crashtest 876074-1.html, to allow for occasional no-assertion & extra-assertion. 2015-07-31 16:29:50 -07:00
Nicholas Nethercote
87b80f8c66 Bug 1188745 - Rename nsTArray::SizeOfExcludingThis() as ShallowSizeOfExcludingThis(). r=froydnj.
This makes it clearer that, unlike how SizeOf*() functions usually work, this
doesn't measure any children hanging off the array.

And do likewise for nsTObserverArray.

--HG--
extra : rebase_source : 6a8c8d8ffb53ad51b5773afea77126cdd767f149
2015-07-28 23:24:24 -07:00
Timothy Nikkel
4e61ce38ec Bug 1189010. In ScrollFrameHelper::BuildDisplayList decide if we are building a scrollable layer before we call AppendScrollPartsTo because it needs this information. r=mstange
AppendScrollPartsTo finds or creates a scroll id for the current scroll frame if IsMaybeScrollingActive() is true (otherwise it uses the null scrollid). IsMaybeScrollingActive() looks at mShouldBuildScrollableLayer, which we compute after the first call to AppendScrollPartsTo in ScrollFrameHelper::BuildDisplayList.

This means that on the first paint with a displayport set (or even if we create a displayport is ScrollFrameHelper::BuildDisplayList) we wouldn't layerize the scroll thumb in nsSliderFrame::BuildDisplayListForChildren because it looks for the current scroll id set on the display list builder. On subsequent paints this would be corrected so it caused reftest failures.
2015-07-29 14:45:57 -05:00
L. David Baron
dc94df9c46 Bug 478834 - Record that we need to look for clearance if we encounter a block that might need to be pushed down for intersecting floats (i.e., one that establishes a BFC). r=roc
Without this change, nsBlockFrame::ReflowBlockFrame will fail to have
mayNeedRetry true, which means that it won't set
blockHTMLRS.mDiscoveredClearance, which means that on a descendant
replaced block we will fail to fall into any of the cases that call
ClearFloats.  This change will cause us to hit the first ClearFloats
call and discover the need for clearance.

I tested locally that the new reftest fails without the patch and passes
with the patch.
2015-07-27 20:23:56 -07:00
Jonathan Kew
4d081f1ac4 Bug 1172450 - Size and position the dropdown arrow properly in vertical writing modes. r=smontagu 2015-07-27 16:52:12 +01:00
Robert O'Callahan
501665ec2f Bug 1172239. Add NS_FRAME_DESCENDANT_INTRINSIC_ISIZE_DEPENDS_ON_BSIZE. r=bz
--HG--
extra : commitid : DK71qQdcp6s
extra : rebase_source : a06ac45a67ab18254b815445fd1c8b6ae54390d3
2015-07-18 12:24:53 +12:00
Robert O'Callahan
7dd9009ba5 Bug 1172239. Make vertically-resizing scrollframes reflow their percent-height descendants if necessary, and remove nsChangeHint_NeedDirtyReflow for height changes. r=bz
--HG--
extra : commitid : Hbu6gzLSBUp
extra : rebase_source : 4d0b03a0ff2e53ea262ef6c17630b450b535dc3c
2015-07-17 17:08:54 +12:00
Kearwood (Kip) Gilbert
c06afa1c7f Bug 1181240 - Part 2: Replace gfx3DMatrix with Matrix4x4 in layout,r=vlad
- Refactored code to use Matrix4x4 instead of gfx3DMatrix.
- There is not expected to be any functional effect.
2015-07-10 17:05:47 -07:00
Boris Zbarsky
1b4d68bc0c Bug 1177819. Replace the warning about anon content being passed into frame construction with an assert plus whitelisting of the known-OK cases. r=dholbert 2015-07-23 11:51:09 -04:00
Nicholas Nethercote
954e563acc Bug 1185399 (part 1) - Remove macros from pldhash.h. r=froydnj. 2015-07-20 17:06:38 -07:00
Ted Clancy
0f306bbcf3 Bug 1180417 - Part 2: Fix failure in layout/base/crashtests/942690.html. r=smontagu 2015-07-17 18:29:28 -03:00
Ted Clancy
adde1f1a09 Bug 1180417 - Part 1: Put back optimizations for determining end of flow. r=smontagu 2015-07-17 18:29:25 -03:00
Ting-Yu Lin
3a3113dc21 Bug 1185436 - Mark DumpFrameTree() and DumpFrameTreeLimited() const. r=roc
Let's make it easier to dump the frame tree via |const nsIFrame*| in
a debugger.
2015-07-19 23:39:00 +02:00
Seth Fowler
ec30688068 Bug 1151359 (Part 3) - Treat nsImageFrames subject to scale animation as having an identity scale when predicting size. r=tn,birtles 2015-07-19 19:30:40 -07:00
Seth Fowler
faeeebcacd Bug 1151359 (Part 1) - Predict the size of nsImageFrame images before drawing. r=tn 2015-07-19 19:30:35 -07:00
Ryan VanderMeulen
cc7dc07708 Backed out changeset a5ea84a0a779 (bug 812899) for reftest failures. 2015-07-17 12:04:24 -04:00
Karl Dubost
07780be821 Bug 812899 - Make vertical 'auto' margins on absolutely positioned elements always center, even when the margins are negative. r=dbaron 2015-07-17 16:12:04 +09:00
Jonathan Kew
68793c3765 Bug 1131451 followup - Remove one more bidi-in-vertical-mode hack that is no longer required. r=dholbert 2015-07-16 21:04:06 +01:00
Jonathan Kew
60417d0338 Bug 1183439 - Update the wording of a few assertions to reflect logical-coordinate conversion. r=dholbert 2015-07-16 10:08:10 +01:00
Jonathan Kew
8ebb1db8e5 Bug 1131451 part 2 - Respect the container height when converting vertical-RTL inline-direction coordinates. r=dholbert
* * *
Bug 1131451 part 2a - Remove hack for rtl-in-vertical-mode from ReflowAbsoluteFrame. r=dholbert
* * *
Bug 1131451 part 2b - Mark relative-overconstrained tests that now pass in vertical mode with rtl. r=dholbert
* * *
Bug 1131451 part 2c - Mark vertical border-collapse bevel tests that now pass. r=dholbert
* * *
Bug 1131451 part 2d - Remove partial rtl-in-vertical support from nsBidiPresUtils now that logical-coordinate classes handle it better. r=dholbert
* * *
Bug 1131451 part 2e - Remove hack for float positioning in vertical mode with dir=rtl. r=dholbert
* * *
Bug 1131451 part 2f - Mark vertical-mode float-in-rtl reftests that are now passing. r=dholbert
* * *
Bug 1131451 part 2g - Compute both dimensions of containerSize in nsFlexContainerFrame::DoLayout. r=dholbert
* * *
Bug 1131451 part 2h - Mark flexbox writing-mode tests that are now passing. r=dholbert
2015-07-16 10:08:05 +01:00
Jonathan Kew
4e6c40d7ea Bug 1131451 part 1 - Replace containerWidth with containerSize in logical-coordinate classes and APIs, frame classes, etc. r=dholbert 2015-07-16 10:07:57 +01:00
Jonathan Kew
76e21c1574 Bug 1177614 - Provide a utility method on nsHTMLReflowState to return the computed size including border-padding, for use as a container for logical coordinate conversions, or zero if unconstrained. r=dholbert 2015-07-16 10:07:46 +01:00
Masatoshi Kimura
52428897a6 Backed out changeset acb7eb7f5ad4 (bug 1176496) for web compat problems 2015-07-15 23:37:22 +09:00
Cameron McCormack
d2c7d17fac Bug 1057921 - Don't propagate text decorations through outer <svg> elements. r=dholbert 2015-07-15 14:41:06 +10:00
Markus Stange
d47ec8dfc5 Bug 1182929 - Work around bug 803703 by refusing to turn heavily-downscaled images into image layers. r=seth 2015-07-14 12:06:27 -04:00
Boris Zbarsky
3dc492a257 Bug 1181765. Remove uses of mozRequestAnimationFrame from layout tests. r=bkelly 2015-07-14 15:28:58 -04:00
Botond Ballo
9eadc95b3f Bug 1181832 - Keep gfxPrefs.h out of header files. r=kats
--HG--
extra : rebase_source : 33d5abb8f12f1173ae50d1712f15e273f9b26ace
extra : source : 4bd2e2744ef1b914d2859f3433b6b9026d91401b
2015-07-13 11:53:10 -04:00
Birunthan Mohanathas
a8939590de Bug 1182996 - Fix and add missing namespace comments. rs=ehsan
The bulk of this commit was generated by running:

  run-clang-tidy.py \
    -checks='-*,llvm-namespace-comment' \
    -header-filter=^/.../mozilla-central/.* \
    -fix
2015-07-13 08:25:42 -07:00
Neil Deakin
bf46cf123d Bug 1132518, add a flag to nsIFrameTraversal to skip the popup checks, r=mats 2015-07-13 06:07:49 -04:00
Timothy Nikkel
85d58a7d97 Bug 1176156. Make sure images are asked to decode if we are drawing the alt feedback instead of the image. r=seth
The Draw() call on the image would normally kick off decoding, but we don't do that if we are drawing the alt feedback instead.
2015-07-12 19:10:07 -05:00
Geoff Brown
52d4e225a0 Bug 1026290 - Update mochitest-chrome manifests for android; r=jgriffin 2015-07-10 14:41:59 -06:00
Wes Kocher
e09f38deeb Merge m-c to inbound, a=merge 2015-07-09 18:06:22 -07:00
Wes Kocher
2c7068c994 Merge inbound to central, a=merge 2015-07-09 18:01:25 -07:00
Ryan VanderMeulen
f416bf7777 Merge m-c to fx-team. a=merge 2015-07-09 13:53:46 -04:00
Timothy Nikkel
4e55eafd08 Bug 1176081. Add a pref to control drawing of the image loading place holder icon and border, and disable it. r=seth
The loading icon and border is a little too intrusive.
2015-07-09 19:13:31 -05:00
Tim Taubert
90b163c879 Bug 834830 - Add nsISelectionController.SELECTION_URLSTRIKEOUT to enable striking out parts of the URL in the URL bar r=roc 2015-07-08 15:45:21 +02:00
Benoit Girard
31cb6e3f30 Bug 1103106 - Change will-change to be first-come, first-served. r=roc
--HG--
extra : transplant_source : %1E%93%D4%3A%9C%BD%AE%3EI%C1C%A6%E5%E6%E7E2%1C%EE%EF
2015-07-06 16:32:53 -04:00
Kyle
4b077fd12e Bug 1178971 - Changed line snapping behaviour depending on even/odd-ness of stroke width. r=mstange
--HG--
extra : rebase_source : bddeb31d488b74337889a874f7f60b47bf65ed2a
extra : histedit_source : 0dee20bd92d1f656bd8b97d06acf6b99febc7a02
2015-07-07 14:56:23 -04:00
Xidorn Quan
7e8beb711d Bug 1180443 - Consider whitespace collapse when calculating intrinsic isize of ruby. r=dbaron
--HG--
extra : source : f3bc6f334e57602ee8be8d9fd32f87c3d0af7db3
2015-07-09 16:05:26 +10:00
Masatoshi Kimura
6c8654865c Bug 1176496 - Drop support for -moz-prefixed gradients. r=dbaron 2015-07-10 00:57:50 +09:00
Markus Stange
c0c566b251 Bug 1178382 - Ignore overflow: -moz-hidden-unscrollable on <select size=n> listboxes. r=roc
forms.css sets overflow: -moz-hidden-unscrollable on all select elements.
ApplyOverflowClipping in nsFrame.cpp applies overflow clips that are not managed by scroll frames.
nsCSSFrameConstructor::ConstructSelectFrame creates an nsListControlFrame for listbox select elements.
nsListControlFrame is an nsHTMLScrollFrame.
As a result, the clip as applied twice - once by the nsHTMLScrollFrame, and then again by ApplyOverflowClipping.
Adding an exception for nsListControlFrame to ShouldApplyOverflowClipping gets rid of the double clip.
But we still need to apply the clip when calculating the frame's visual overflow rect, so we add the
list box frame type to the list of special-cased frames in UnionBorderBoxes.

--HG--
extra : rebase_source : d334647f84e5ebda2e7121c772e3b1ecec0d23a4
2015-07-06 17:57:37 -04:00
Seth Fowler
8f92f8c5b0 Bug 1177587 - Detect use of <img> elements for animation and use sync decoding to reduce flicker. r=tn 2015-07-07 14:00:08 -07:00
Simon Montagu
40033a0fc8 Bug 1180178: Add writing-mode and logical coordinates to frame dumps, r=jfkthame 2015-07-07 06:37:30 -07:00
Jonathan Kew
e467a5abeb Bug 1181087 - part 2 - Remove the unused physical setter methods on logical-coordinate classes. r=smontagu 2015-07-07 14:20:09 +01:00
Jonathan Kew
07b0efa156 Bug 1181087 - part 1 - Eliminate the few callers of physical-coordinate setters on the logical-coordinate geometry classes. r=smontagu 2015-07-07 14:20:09 +01:00
Jonathan Kew
1316bd356f Bug 1180643 - Fix the SetY() method on LogicalPoint to update the correct field. r=smontagu 2015-07-07 14:20:09 +01:00
Dragana Damjanovic
7987d2203e Bug 905127 - Part 2 - remove unnecessary nsNetUtil.h includes r=jduell 2015-07-06 07:55:00 +02:00
Emanuel Hoogeveen
7d1e52f2ff Bug 905127 - Part 1 - Make some functions from nsNetUtil not inline. r=jduell 2015-07-07 04:17:00 +02:00
Ehsan Akhgari
57a5698c57 Bug 1178745 follow-up: Mark overridden ComputeScrollClip() methods as override 2015-07-05 21:26:51 -04:00
Phil Ringnalda
e1b3bafbc3 Back out 0642a5722c59 (bug 1178382) for OS X reftest failures in 825999.html 2015-07-03 19:44:39 -07:00
Juan Gomez
258ad59e3f Bug 1171931 - Refactor duplicated code using XRE_IsParent/ContentProcess. r=froydnj 2015-07-03 18:29:00 -07:00
Markus Stange
4e59bfd404 Bug 1178382 - Ignore overflow: -moz-hidden-unscrollable on <select size=n> listboxes. r=roc
forms.css sets overflow: -moz-hidden-unscrollable on all select elements.
ApplyOverflowClipping in nsFrame.cpp applies overflow clips that are not managed by scroll frames.
nsCSSFrameConstructor::ConstructSelectFrame creates an nsListControlFrame for listbox select elements.
nsListControlFrame is an nsHTMLScrollFrame.
As a result, the clip as applied twice - once by the nsHTMLScrollFrame, and then again by ApplyOverflowClipping.
Adding an exception for nsListControlFrame to ShouldApplyOverflowClipping gets rid of the double clip.

--HG--
extra : amend_source : e6c8e548e31b3f1740f2c32a3aaff560f72d3427
2015-07-03 20:11:51 -04:00
Markus Stange
c15627a716 Bug 1178745 - Add an nsIScrollableFrame API for getting the scroll clip. r=roc
--HG--
extra : rebase_source : 8f2b62b0ce23dcfece6984d89a774a96453ecb6e
extra : histedit_source : 586e99a17ecbb86dc243568cee1ebf1d24f37717
2015-07-02 16:42:10 -04:00
Markus Stange
472ba62ba8 Bug 990974 - Treat carets in async scrolled scrollframes differently from non-caret content. r=roc
This makes those caret display items not share a layer with any other display items, and uses a different async scroll frame clip for that layer.

--HG--
extra : rebase_source : f01cd0343ea3e672b1d696a4e4e8924d070cc23d
extra : histedit_source : 14cefb8c1c9834d02a095e52e463add8a56a8625
2015-07-02 15:02:34 -04:00
Markus Stange
77820dcba1 Bug 990974 - Add a flag to ComputeFrameMetrics so that a different clip can be returned for the caret and non-caret content. r=roc
--HG--
extra : rebase_source : a00358c3191c49c21ad2ad9b1e1a8d5d47285672
extra : histedit_source : 64aafcbf2d8fa32610fe8a30c916dbbe1b4f9283
2015-07-02 13:42:34 -04:00
Markus Stange
5fef3abfd9 Bug 990974 - When using display ports, don't clip the painted contents to the content box clip. r=roc
Store the content box clip on mAncestorClip, and store a different clip for the caret on mAncestorClipForCaret.
In a future patch, those clips will be selectively applied to the right layers.

--HG--
extra : rebase_source : e87e63a7ba5e963b7e3b22b5d93dc8c473a6a905
extra : histedit_source : b0e2193cf73222e51ed641e84ccaea8001e47324
2015-07-03 14:06:15 -04:00
Markus Stange
a3ed6807fa Bug 990974 - Slightly change how the caret clip works. r=roc
Instead of looking at the caret's rect and determining whether we should clip it
to the real content box clip or not at all, we just always clip it, but to a
slightly bigger rect. In the cases that the caret was completely visible before,
it'll still be completely visible with this change. However, in the cases that we
did decide to clip before this patch, the result can be slightly different now:
Before this patch, whenever the caret was partially clipped, it was partially
clipped to the true content clip rect, but with this patch, the caret can be
partially clipped to the slightly larger clip rect.

--HG--
extra : rebase_source : 645afe6474f28a6e10abfeb63172fb480116a6f7
extra : histedit_source : 110328d864d45660335121c8cf7a5994dfea81b8
2015-07-03 14:02:09 -04:00
Jonathan Kew
a5d7c41309 Bug 1177076 patch 2 - Convert nsTableOuterFrame to work with logical coordinates. r=dholbert 2015-07-03 11:37:33 +01:00
Jonathan Kew
4ebe732ab7 Bug 1177076 patch 1 - Add logical values for the caption-side property (though not yet handled by layout code). r=heycam 2015-07-03 11:37:25 +01:00
Lee Salzman
1201a3f336 Bug 771367 - Support compositor animation for pseudo-elements. r=dbaron
--HG--
extra : rebase_source : 9276e835dbc75aaaab718a871ed4eaa7c8389867
2015-07-01 11:55:51 -04:00
Xidorn Quan
5ce6110994 Bug 1175485 part 3 - Remove unused operators, typedefs and IteratorTraits. r=waldo
--HG--
extra : source : c1d3256e987c25935cc8bd321c413a1e0c7586b3
2015-07-02 13:31:07 +10:00
Xidorn Quan
f15e97fc12 Bug 1175485 part 1 - Allow inner iterator of ReverseIterator deref to any type, and change IntegerIterator, EnumeratedRange, and nsFrameList::Iterator to return value type instead of a reference. r=roc,waldo
--HG--
extra : source : 1e932a13595a1d3862f171e7e7435422d890fbf0
2015-07-02 13:31:07 +10:00
Markus Stange
020bfc17f8 Bug 1148582 - Include the rounded clip of the async scrolled scroll frame in its mAncestorClip.
--HG--
extra : rebase_source : 77813db37ceb9abaa3c1c28f0eb98f8425f88fc0
extra : source : aff9ea7ce4fe01d4737aa6c6c059567cdbc6ba06
2015-06-22 01:38:23 -04:00
David Anderson
55a0f8ee25 Bug 1148582 - Add mask layers to FrameMetrics for ancestor scroll frame clips. r=mattwoodrow
--HG--
extra : rebase_source : 9bf7a73b14e40972b3a5824b2f1344b7770ab789
extra : source : 745366787bcae737c0aec908554db2a3ec288908
2015-06-21 12:27:31 -04:00
Markus Stange
f1b62506d9 Back out bug 1148582 for static analysis bustage. 2015-07-01 01:20:59 -04:00
Markus Stange
3ae4a5d71f Bug 1148582 - Include the rounded clip of the async scrolled scroll frame in its mAncestorClip. 2015-06-22 01:38:23 -04:00
David Anderson
c29b4c6dfa Bug 1148582 - Add mask layers to FrameMetrics for ancestor scroll frame clips. r=mattwoodrow 2015-06-21 12:27:31 -04:00
Kartikaya Gupta
26766c4f1e Bug 1178060 - Ensure that if there is a document-level apz-aware event listener on a subdocument, we build the nsDisplaySubdocument item to hold that information. r=tn 2015-06-30 06:43:07 -04:00
Daniel Holbert
cb57b1ad8c Bug 1177925: Use range-based "for" loops for nsFrameList iteration, in various places in layout. r=tn 2015-06-29 13:02:21 -07:00
Cameron McCormack
5b21df1652 Bug 1161413 - Part 6: Update test assertion annotations. r=jdaggett 2015-06-27 11:39:54 +10:00
Ryan VanderMeulen
5f5c327690 Backed out changeset 8b4e4083639e (bug 1171931) for B2G debug emulator bustage. 2015-06-25 19:48:42 -04:00
Juan Gomez
702a59d135 Bug 1171931 - Refactor duplicated code using XRE_IsParent/ContentProcess. r=froydnj
--HG--
extra : rebase_source : 2ecbe6c1dd8a7ad8dc529b53349ad431cf1116c9
2015-06-24 14:11:00 -04:00
Masayuki Nakano
1b42eb60f1 Bug 1175789 Draw underline as overline when it's in vertical writing mode and the language is Japanese or Korean r=dbaron 2015-06-24 09:35:04 +09:00
Jonathan Kew
a043edf3b3 Bug 1174504 - Logical-coordinate versions of nsIFrame::SetSize should maintain the frame's logical position. r=smontagu 2015-06-23 06:06:16 -07:00
Ted Clancy
35a963f9e9 Bug 1164693 - part 3: Exclude optimizations that don't apply to preformatted paragraphs. r=smontagu 2015-06-20 08:52:34 -07:00
Ted Clancy
b1d966b6e0 Bug 1164693 - Part 1: Directional caret should point in caret direction in bidi paragraphs. r=smontagu 2015-06-05 21:44:54 -04:00
Cameron McCormack
cf92b5df2c Bug 804975 - Part 1: Expose WritingMode bits. r=dbaron 2015-06-23 11:48:17 +10:00
Jonathan Kew
f0a5c3023f Bug 1174711 - patch 4 - Rename mSpecialHeightReflow to mSpecialBSizeReflow, and update comments to match. r=dholbert 2015-06-22 10:33:34 +01:00
Jonathan Kew
2d252085be Bug 1174711 - patch 3 - Rename a couple more frame-state bits from physical to logical. r=dholbert 2015-06-22 10:33:34 +01:00
Jonathan Kew
10bd90547b Bug 1174711 - patch 1 - Rename nsIPercentHeightObserver to nsIPercentBSizeObserver, and update related frame methods to match. r=dholbert
--HG--
rename : layout/base/nsIPercentHeightObserver.h => layout/base/nsIPercentBSizeObserver.h
2015-06-22 10:33:34 +01:00
Ms2ger
98d44fafe9 Bug 1172536 - Stop using for each loops in layout; r=roc
These are SpiderMonkey-proprietary legacy feature which has been deprecated
and is expected to be removed in due course.

This commit also fixes a number of bugs in test_bug708874.xul. In particular,
because of the semicolon after the for head, the (alleged) loop body was only
executed for the final element of the array ({}), and because each of the
functions under test threw an exception, only the first call was executed.

I do not know of a way to test the changes in frame-verify.js, so I can't
guarantee they actually work.

--HG--
extra : commitid : 9WYVkuNzWOA
2015-06-20 09:16:51 +02:00
Simon Montagu
fd24391154 Bug 1173689: allow column sets in an orthogonal writing mode to their container to expand in the container's block direction, r=roc 2015-06-19 01:09:19 -07:00
Jonathan Kew
a3380043e5 Bug 1174507 - Replace the frame flag CONTAINS_RELATIVE_HEIGHT with CONTAINS_RELATIVE_BSIZE, and adjust callsites appropriately. r=dholbert 2015-06-18 07:33:50 +01:00
Ehsan Akhgari
c197ee959d Bug 1174521 - Backout the second part of bug 1143570 to fix the regression; r=roc 2015-06-17 17:45:51 -04:00
Steven Michaud
d584ce81c9 Bug 1167069 - Watch out for deletion of current frame. r=jmathies 2015-06-17 12:59:34 -05:00
Carsten "Tomcat" Book
47a56a31ae Backed out changeset b857e7a2ab26 (bug 1174521) for timeouts in test_bug1174521.html 2015-06-17 10:12:21 +02:00
Ehsan Akhgari
4dd45d21af Bug 1174521 - Backout the second part of bug 1143570 to fix the regression; r=roc 2015-06-17 01:34:00 -04:00