Commit Graph

24513 Commits

Author SHA1 Message Date
Xidorn Quan
47800e4968 Bug 1121684 - Move one-liners in nsLineLayout.cpp to the header. r=roc
--HG--
extra : source : 1d3128f4f31f9b4998dc09c130657d54e729bb20
extra : amend_source : 21d2320d6699aa6294a233cb515f226500f6879a
2015-01-15 15:52:27 +11:00
Nicholas Nethercote
7e78186cb9 Bug 1121304 (part 2) - Remove PLDHashTableOps::{alloc,free}Table. r=froydnj. 2015-01-14 14:35:56 -08:00
Nicholas Nethercote
e7f3233097 Bug 1120476 (part 4) - Remove PLDHashTableOps::finalize. r=froydnj.
--HG--
extra : rebase_source : b14dda8cdd5cd896d1e32950e38b2a9f7da4d99e
2015-01-13 19:02:35 -08:00
Nicholas Nethercote
00b5865c2a Bug 1120476 (part 3) - Remove PLDHashTable::data. r=froydnj.
--HG--
extra : rebase_source : 24d10af3dbce3ada5252503bc80bb1a4e31bc1c9
2015-01-13 16:42:13 -08:00
Daniel Holbert
7a80463004 Bug 1058954 followup: reorder crashtest.list to preserve numerical order. (no review, test manifest only) 2015-01-14 15:53:07 -08:00
Mats Palmgren
af72adfc78 Bug 1009282 - [css-grid] Add primitive support for implicit named areas. r=dholbert 2015-01-14 21:59:59 +00:00
Ryan VanderMeulen
0d21067666 Merge b2g-inbound to m-c. a=merge 2015-01-14 16:26:57 -05:00
Gregor Wagner
e494dd0dbf Backout bug 1110917 for Gij red. 2015-01-14 11:25:38 -08:00
Gregor Wagner
ac58623238 Backout bug 1110917 for Gij red. 2015-01-14 11:25:15 -08:00
Ryan VanderMeulen
eb91b5ec31 Merge m-c to inbound. a=merge 2015-01-14 13:46:46 -05:00
Ryan VanderMeulen
4e10f3a8cb No bug - Adjust some Android reftest expectations now that they're passing again. r=gbrown, a=test-only
These tests were originally marked as failing on 2.3 so that Android 2.3 could be enabled in production. Something today made them start passing again, so remove the failing annotations.
2015-01-14 13:46:20 -05:00
David Anderson
7ae9b13ba1 Fix classic scrollbars getting occluded with containerless scrolling. (bug 1100756, r=roc)
--HG--
extra : rebase_source : fcf95ab0c435d9c29a6a3552fe05d7f1ad3bc0ec
2015-01-13 23:55:17 -08:00
L. David Baron
d198309580 Bug 1110277 patch 8 - Add test for passing lazy construction parameters through, using flexbox reframe case. r=bzbarsky
This tests a case that is fixed by patch 6.  In particular, I tested that:
 * with none of the patches in the bug applied, the two added tests
   fail, both reporting rgb(255, 255, 0)
 * with all patches 1-7 applied, the two added tests pass
 * with only patches 4-6 applied, the two added tests pass
 * with only patches 4-5 applied, the two added tests fail, both
   reporting rgb(255, 255, 0)

Note that this test is structured in a rather particular way (with two
separate restyles triggered by attributes on different elements, queued
in a particular order) to avoid triggering bug 1111451.  (Though I ended
up fixing that anyway in the revision of these patches, so it's probably
doesn't require as particular a structure anymore.  FIXME: In fact, I
should probably add some additional tests.)
2015-01-13 21:03:13 -08:00
L. David Baron
98bcd6bd74 Bug 1110277 patch 7 - Call CreateNeededFrames from ~ReframingStyleContexts. r=bzbarsky
I don't have any tests that exercise this code, and I can't even find a
codepath that demonstrates that it's needed, since the lazy
reconstruction that happens during style-triggered frame reconstruction
all appears to go through PostRestyleEvent rather than
MaybeConstructLazily.

But I think we should either do this or add an assertion that it's not
needed, and given that it's one line, it seems like we may as well just
do it.  (Note also that we're currently calling CreateNeededFrames at
the start of style reresolution, in
RestyleManager::ProcessPendingRestyles; this adds a call at the end.)
2015-01-13 21:03:13 -08:00
L. David Baron
c611676f36 Bug 1110277 patch 6 - Make the lifetime of the ReframingStyleContexts object longer. r=heycam
This makes the ReframingStyleContexts live across the lifetime of the
processing of a full queue of posted restyles.

This depends on bug 1115812 to behave sensibly (and not assert) when
rebuilding the rule tree (RebuildAllStyleData, etc.).

This handles the form of lazy frame construction that is done in
nsCSSFrameConstructor::RecreateFramesForContent, which posts a restyle.
Patch 7 handles any use of the lazy frame construction mechanism.

This patch (with patches 4 and 5 under it, but without patches 1-3)
fixes the original testcase in bug 1110277, except for some flashing of
the final position as the transition starts.

Also fixes bug 1111451.
2015-01-13 21:03:13 -08:00
L. David Baron
038f883c01 Bug 1110277 patch 5 - Move the AutoRestore into ReframingStyleContexts. r=heycam
This is just a little cleanup that follows from patch 4.
2015-01-13 21:03:13 -08:00
L. David Baron
c2332e431d Bug 1110277 patch 4 - Add a RestyleManager member to ReframingStyleContexts. r=heycam
This is needed for patch 7.
2015-01-13 21:03:13 -08:00
L. David Baron
3fcc54711e Bug 1115812 patch 20 - Add assertions that mDoRebuildAllStyleData and mInRebuildAllStyleData are false by the end of restyle processing. r=heycam
These assertions are as requested in comment 30 in the bug.

(If the first one doesn't fire, it's possible we could even get rid of
the handling of mDoRebuildAllStyleData that it's within.)
2015-01-13 21:03:13 -08:00
L. David Baron
620f1dd6aa Bug 1115812 patch 19 - Avoid bad kungFuDeathGrip pattern. r=heycam
If we need a strong reference to the pres shell, we may as well do it
the first time rather than bothering with an extra variable.
2015-01-13 21:03:12 -08:00
L. David Baron
d173b254e5 Bug 1115812 patch 18 - We only need to call ProcessPendingRestyles recursively, rather than RebuildAllStyleData. r=heycam
If we discover that we've set mDoRebuildAllStyleData in the middle of
ProcessPendingRestyles(), now that ProcessPendingRestyles() fully
handles mDoRebuildAllStyleData, we only need to make a recursive call to
ProcessPendingRestyles, rather than calling RebuildAllStyleData to call
ProcessPendingRestyles.
2015-01-13 21:03:12 -08:00
L. David Baron
d238ef548a Bug 1115812 patch 17 - Do animation-only update properly for a rebuild all. r=heycam
This fixes another pre-existing bug in the rebuild-all codepath; it
didn't handle the animation-only update correctly, which could have
caused bugs in transitions with OMT animations enabled.
2015-01-13 21:03:12 -08:00
L. David Baron
1b2b72fbeb Bug 1115812 patch 16 - Remove the now-unused DoRebuildAllStyleData. r=heycam 2015-01-13 21:03:12 -08:00
L. David Baron
74347ab8fc Bug 1115812 patch 15 - Change the rebuild-all that we do for 'rem' unit changes to use the new way. r=heycam
This means that instead of recurring into DoRebuildAllStyleData, we'll
call StartRebuildAllStyleData in the middle of processing the restyle
queue (which is fine).  StartRebuildAllStyleData will move the old rule
tree out of the way and immediately do a full-tree restyle, before
returning to any queue processing that might be left (the full-tree
restyle should have consumed all remaining restyle hints, but might have
posted some new ones for handling reframes that require reframing
ancestors).  And, more importantly, the EndReconstruct() call to get rid
of the old rule tree won't happen until after we're done processing the
containing RestyleTracker's queue of restyles, which reduces the risk of
having dangling old style contexts and makes it easier (in bug 1110277)
to have a ReframingStyleContexts with the right lifetime.
2015-01-13 21:03:12 -08:00
L. David Baron
00cce81154 Bug 1115812 patch 14 - For rem unit change handling, repost min hint to root just like change hint. r=heycam
This changes what was probably a silly design choice when I wrote the
code for 'rem'-basis handling; we shouldn't try continuing through the
rest of RestyleElement() here, but instead repost the hint to the
rebuild-all process.
2015-01-13 21:03:12 -08:00
L. David Baron
721e0c13f4 Bug 1115812 patch 13 - Make RebuildAllStyleData use the normal ProcessPendingRestyles() codepath. r=heycam
This switches RebuildAllStyleData() to the normal
ProcessPendingRestyles() manner of restyle processing.  This means a
rebuild-all going through this codepath (the main rebuild-all codepath)
only sets up for non-animation restyle processing once rather than doing
it twice (and potentially having reframes posted in
DoRebuildAllStyleData() that don't get processed until
ProcessPendingRestyles(), which causes a variant of bug 1110277 with
transitions on reframed elements failing to start because it doesn't
match the lifetime of the ReframingStyleContexts).
2015-01-13 21:03:12 -08:00
L. David Baron
42bd305124 Bug 1115812 patch 12 - Null-check the root frame in StartRebuildAllStyleData. r=heycam
In the new way of doing a rebuild-all, StartRebuildAllStyleData might be
called directly from ProcessPendingRestyles rather than from
RebuildAllStyleData (which null-checks the root frame) or from within
processing restyles (which can only happen when there's a root frame).
This means it needs its own null-check of the root frame.
2015-01-13 21:03:12 -08:00
L. David Baron
706862a701 Bug 1115812 patch 11 - Move the beginning part of the rebuild-all process to StartRebuildAllStyleData. r=heycam
Here we call StartRebuildAllStyleData from BeginProcessingRestyles (much
like patch 9 and EndProcessingRestyles).  But we will later also call it
from the code that handles a root element font size change when we have
'rem' units.  That's because it's fine to *start* the rebuild process in
the middle of processing the queue of pending restyles.  (We have to end
after the whole process is done, though, in order to avoid wanting to
destroy the old rule tree while we still have style contexts referencing
it.)

We only call StartRebuildAllStyleData in this case when we're processing
our primary restyle queue (mPendingRestyles), not the animation restyles
(to be removed in bug 960465) or the animation-only restyles, since a
rebuild-all should be processed (in terms of animation phases, or in
terms of having an animation-only update before it) like a normal
restyle.  (This isn't true for the 'rem' unit restyle, which could
happen during any sort of update.)
2015-01-13 21:03:12 -08:00
L. David Baron
3a4335c350 Bug 1115812 patch 10 - Add RestyleTracker parameter to BeginProcessingRestyles. r=heycam
This is needed in patch 11.
2015-01-13 21:03:12 -08:00
L. David Baron
56aa82f688 Bug 1115812 patch 9 - Move the end part of the rebuild-all process to RestyleManager::EndProcessingRestyles. r=heycam
This moves the code that finishes the rebuild-all process into
EndProcessingRestyles(), which is part of the main restyling codepath.

Patch 7 ensures that we'll always get to EndProcessingRestyles in this
case, when we're going through the normal ProcessPendingRestyles()
codepath rather than the special DoRebuildAllStyleData() codepath (which
will be removed later in this patch series).
2015-01-13 21:03:12 -08:00
L. David Baron
cc5b8767c2 Bug 1115812 patch 8 - Call BeginProcessingRestyles and EndProcessingRestyles from DoRebuildAllStyleData. r=heycam
This fixes one of the omissions in the rebuild-all codepaths (where it
incorrectly differs from the regular ProcessPendingRestyles codepath).
Note that the explicit FlushOverflowChangedTracker() is no longer needed
because that's part of EndProcessingRestyles.

(This will all get refactored more substantially in the following
patches.)
2015-01-13 21:03:12 -08:00
L. David Baron
da8c0f85aa Bug 1115812 patch 7 - Always call DoProcessRestyles if mInRebuildAllStyleData. r=heycam
This is needed for patch 9 (once patch 9 is used via the
ProcessPendingRestyles() codepath in patch 13); it ensures that when we
use the new way of rebuilding, we don't bail out early because we think
we have nothing to do.
2015-01-13 21:03:12 -08:00
L. David Baron
bd3e3e117e Bug 1115812 patch 6 - Move ProcessRestyles from RestyleTracker to RestyleManager. r=heycam
This is needed for the following patch, so that it can access a member
variable of RestyleManager.
2015-01-13 21:03:12 -08:00
L. David Baron
353a518622 Bug 1115812 patch 5 - Store the state of whether we're currently rebuilding all style data in a member variable, to prepare for future merging of the rebuild into other code. r=heycam
This adds a member variable that is currently only used within a single
function, but that function will be split apart so that different parts
of it can be called from different places within ProcessPendingRestyles.
2015-01-13 21:03:12 -08:00
L. David Baron
740dcec630 Bug 1115812 patch 4 - Rename mRebuildAllStyleData to mDoRebuildAllStyleData. r=heycam
This is the variable that says we *need to* rebuild style data.  Since
the next patch will introduce a variable that says we're *currently*
rebuilding all style data, renaming this one makes things clearer.
2015-01-13 21:03:11 -08:00
L. David Baron
5d2e2e0c78 Bug 1115812 patch 3 - Pass the hints to DoRebuildAllStyleData via the member variables, in preparation for future refactoring. r=heycam
Part of this refactoring involves the ability to start the rebuild-all
process within the processing of restyles.  This means we can't pass
parameters directly from RebuildAllStyleData into DoRebuildAllStyleData.
So this continues storing the hints as member variables a little bit
deeper into the process.

(I tried to move in a different direction in this patch queue, and store
these hints in mPendingRestyles, for the root element.  But that broke
layout/style/test/test_counter_style.html and
layout/style/test/test_font_loading_api.html, and I didn't want to
figure out why.  It would be somewhat better in the long run, since
currently these hints will get processed if we do a rebuild-all on a
RestyleTracker other than mPendingRestyles, which can happen if we have
'rem' units and have a root element font size change in the
animation-only update or in mPendingAnimationRestyles.)
2015-01-13 21:03:11 -08:00
L. David Baron
989020c241 Bug 1115812 patch 2 - Move the eRestyle_ChangeAnimationPhaseDescendants hint in DoRebuildAllStyleData so that the new rebuild-all codepaths will keep it. r=heycam
The patches in this series refactor the process of rebuilding all style
data (RestyleManager::RebuildAllStyleData and
RestyleManager::DoRebuildAllStyleData) so that the process of rebuilding
all style data uses the existing restyle processing loops in
ProcessPendingRestyles.  (Rebuilding all style data is what we do when
we need to throw away the rule tree because something has invalidated
the cached data in it.)  This removes (increasing, especially with bug
960465 coming) code duplicated between the two codepaths, fixes some
omissions from the separate rebuild-all codepath, and (more immediately)
allows fixing lifetime issues of ReframingStyleContexts objects in bug
1110277 so that we can have a single ReframingStyleContexts for all of
the restyle processing in each restyle processing operation.  In other
words, the goal is to change the rebuild-all process from a separate
codepath to a few variables that modify the way ProcessPendingRestyles
works (and make it do the extra work).

This is just a small first step in that process, which moves one piece
of code from a chunk of duplicated and to-be-removed code into a chunk
of code that will be preserved.
2015-01-13 21:03:11 -08:00
L. David Baron
5a6daf61dc Bug 1115812 patch 1 - Remove obsolete comment that was fixed by bug 1047928. r=heycam 2015-01-13 21:03:11 -08:00
L. David Baron
6342166719 Bug 908987 - Honor mIsActive more aggressively to avoid calling IsVisibleConsideringAncestors. r=roc
This means that we avoid an O(N^2) calling pattern of IsVisible when we
call IsVisible for all tabs of a tabbrowser, since in a tabbrowser
(which uses an nsDeckFrame), IsVisibleConsideringAncestors is O(N) in
number of earlier tabs.
2015-01-13 21:03:11 -08:00
Daniel Holbert
399f92f171 Bug 1121256: Remove commented-out debugging printfs from 1998, in nsSubDocumentFrame::Reflow. (comment-only, no review, DONTBUILD) 2015-01-13 16:30:32 -08:00
Ethan Lin
109fa36d5c Bug 1120294 - Modify the svg luminance calculating for reducing memcpy. r=longsonr 2015-01-12 21:51:00 -05:00
Ethan Lin
d7e4e20373 Bug 1120294 - Use A8 format svg mask and refactor svg neon code. r=longsonr 2015-01-12 07:36:00 -05:00
Mats Palmgren
299cf3cc08 Bug 1120198 part 2 - Optimize RebuildImageVisibility[DisplayList]() using nsTHashtable::SwapElements. r=tn 2015-01-13 14:44:33 +00:00
Mats Palmgren
f564466a9a Bug 1116714 part 0 - Iterate forward instead, to avoid depending on undefined integer behavior. r=roc 2015-01-13 14:44:33 +00:00
Kartikaya Gupta
e84c2dd0ec Bug 1119355 - Add a dummy touch listener on nsRangeFrame so the APZ code knows it handles them. r=roc 2015-01-13 09:06:37 -05:00
Gabor Krizsanits
380412f166 Bug 1111633 - Unresolved pseudo class. r=bz 2015-01-13 19:58:06 +01:00
Shih-Chiang Chien
25ea5a7493 Bug 1080474 - Part 1 - device manager for Presentation API. r=fabrice. 2014-08-27 10:28:03 +08:00
Jeremy Chen
56fa844627 Bug 1110917 - Part 2: Fix focus not changing while selecting text by long press v2. r=roc 2015-01-12 18:10:03 +08:00
Jeremy Chen
a871d5973b Bug 1110917 - Add test cases for selectioncaret changes. r=automatedtester 2014-12-31 14:40:39 +08:00
Andrea Marchesini
75032591f8 Bug 1018320 - RequestSync API - patch 2 - Wifi Only, r=ehsan 2015-01-13 09:53:16 +00:00
Xidorn Quan
995fd93010 Bug 1115262 - Fix position of ruby annotation when writing mode is vertical-rl. r=jfkthame
--HG--
extra : source : ec2b2922a741fc5a62bc76c716529eda1b7fe5d0
extra : amend_source : 95bc6d9805f2c0cb9c4d76fcebb5defdd6c69660
2015-01-13 20:04:41 +11:00
Xidorn Quan
ab4ff1f1f3 Bug 1055658 part 4 - Revert RubyReflowState. r=dbaron
--HG--
extra : source : 27e60ddbd077439dadd09641ab54fc7eef09c69f
2015-01-13 20:04:41 +11:00
Xidorn Quan
22347f6735 Bug 1055658 part 3 - Add reftests for ruby annotation relative positioning. r=dbaron
--HG--
extra : source : 1be2cf7edc4219582496a9faba5b4f40fd73a33b
2015-01-13 20:04:41 +11:00
Xidorn Quan
a4fd1bd015 Bug 1055658 part 2 - Add relative positioning support for ruby annotations. r=dbaron
--HG--
extra : source : e15efc6ea7d8fd27cbb334fbab2ba85b0f6868dd
2015-01-13 20:04:41 +11:00
Xidorn Quan
df936207dc Bug 1055658 part 1 - Move code for applying relative position to an independent method. r=dbaron
--HG--
extra : source : 7ba6cbbf02828b4d6d55bd056e92243423eab6d0
2015-01-13 20:04:41 +11:00
Xidorn Quan
59a6f1fedb Bug 1120313 - Fix nested ruby inside ruby annotation. r=dbaron
--HG--
extra : source : ea44dcc7bf0e008d6669a00d107529a97ab1c84d
2015-01-13 15:14:46 +11:00
Robert O'Callahan
89da840acd Bug 1099977. Part 3: Skip creating nsDisplayText when all glyphs are invisible. r=jfkthame
--HG--
extra : rebase_source : db9e1e149ea93be298c0515b792186168ccbb9f0
2014-11-18 23:23:46 +13:00
Robert O'Callahan
68c074dcb8 Bug 1099977. Part 2: Make gfxFont::Measure return an empty bounding-box when all glyphs are invisible. r=jfkthame
--HG--
extra : rebase_source : 41a9f586ef2992d96b789d6bd55daae18f15ed2f
2014-11-18 23:23:45 +13:00
Jonathan Kew
e670e1dd2d Bug 1119770 - Remove the compile-time switch to enable/disable vertical writing mode support. r=smontagu 2015-01-12 20:55:52 +00:00
Ryan VanderMeulen
cf749cfe47 Bug 1119818 - Bump various UUIDs that were missed when IDL changes landed. r=jib, r=jdm, r=gavin, r=bz, a=me 2015-01-12 10:44:18 -05:00
Christoph Kerschbaumer
e7043cc6be Bug 1110469 - Remove NS_OpenURI (r=sworkman) 2015-01-11 20:26:40 -08:00
Nigel Babu
98abca37da Backed out 4 changesets (bug 1055658) for M5 bustage on a CLOSED TREE
Backed out changeset 3cbd9323c896 (bug 1055658)
Backed out changeset 99e071295c42 (bug 1055658)
Backed out changeset 55119d19e4c5 (bug 1055658)
Backed out changeset e82f640cb53f (bug 1055658)
2015-01-12 10:43:11 +05:30
Xidorn Quan
6940abf9e0 Bug 1055658 part 4 - Revert RubyReflowState. r=dbaron
--HG--
extra : source : 27e60ddbd077439dadd09641ab54fc7eef09c69f
2015-01-12 14:31:55 +11:00
Xidorn Quan
f2653be159 Bug 1055658 part 3 - Add reftests for ruby annotation relative positioning. r=dbaron
--HG--
extra : source : 6cc51f0bfbb68999a5361339a09a455ac7723bc6
2015-01-12 14:31:55 +11:00
Xidorn Quan
35fba6afe9 Bug 1055658 part 2 - Add relative positioning support for ruby annotations. r=dbaron
--HG--
extra : source : 3b6cece1b466a724983927329c56dc1d9555b09a
2015-01-12 14:31:55 +11:00
Xidorn Quan
b4c630a9e1 Bug 1055658 part 1 - Move code for applying relative position to an independent method. r=dbaron
--HG--
extra : source : aa1e52e91dd5ae6fdcdc6ca17bd9ec2a0b946f2b
2015-01-12 14:31:55 +11:00
Xidorn Quan
296915850b Bug 1111463 part 3 - Fix ruby reftests for default styles. r=dbaron
--HG--
extra : source : 2a8645f9d275da445738b3aad99630fa6c0a3586
2015-01-12 12:52:19 +11:00
Xidorn Quan
d7e67a75cc Bug 1111463 part 2 - Add styles in html.css and ua.css. r=dbaron
--HG--
extra : source : 36266a6c05c5d40c0ebdd97a3935041a8d8f1010
2015-01-12 12:52:19 +11:00
Xidorn Quan
6d961136a3 Bug 1111463 part 1 - Invalidate html.css when ruby pref changes. r=dbaron
--HG--
extra : source : c33e79d1dc93b9827fff3fa4f0ac66db2e403423
2015-01-12 12:52:19 +11:00
Kartikaya Gupta
fc2b61ecdb Bug 1120252 - Avoid trying to get the APZCTreeManager if APZ isn't enabled. r=mattwoodrow 2015-01-11 20:39:36 -05:00
Robert O'Callahan
a71a6aff8c Bug 1119117. Don't clip nsDisplayOpacity items, since some of its descendants maybe should not be clipped with the nsDisplayOpacity clip. r=mattwoodrow
--HG--
extra : rebase_source : 50ab1923ad5150197128a0862db2af96dfd41658
2015-01-11 00:12:33 +13:00
L. David Baron
1bd44b0a8b Revert one of the assertion additions in Bug 1110277 patch 3 since it fires, causing orange. r=orange
Example stack, from editor/libeditor/tests/browserscope/test_richtext2.html :

###!!! ASSERTION: should only call on first continuation/ib-sibling: 'nsLayoutUtils::IsFirstContinuationOrIBSplitSibling(this)', file /builds/slave/m-in-l64-d-0000000000000000000/build/src/layout/base/../generic/nsIFrame.h, line 875
#01: AdjustAppendParentForAfterContent [layout/base/nsCSSFrameConstructor.cpp:6059]
#02: nsCSSFrameConstructor::ContentAppended(nsIContent*, nsIContent*, bool) [layout/base/nsCSSFrameConstructor.cpp:7155]
#03: PresShell::ContentAppended(nsIDocument*, nsIContent*, nsIContent*, int) [layout/base/nsPresShell.cpp:4520]
#04: nsNodeUtils::ContentAppended(nsIContent*, nsIContent*, int) [dom/base/nsNodeUtils.cpp:132]
#05: nsINode::doInsertChildAt(nsIContent*, unsigned int, bool, nsAttrAndChildArray&) [dom/base/nsINode.cpp:1544]
#06: nsINode::ReplaceOrInsertBefore(bool, nsINode*, nsINode*, mozilla::ErrorResult&) [dom/base/nsINode.cpp:2209]
#07: mozilla::dom::NodeBinding::appendChild [obj-firefox/dom/bindings/NodeBinding.cpp:600]
2015-01-11 16:58:42 -08:00
L. David Baron
8693102462 Bug 1110277 patch 3 - Look for the GenConPseudos() property on the first continuation/ib-split so that we can find it when looking for the ::after frame. r=bzbarsky
The change to GetAfterFrameForContent prevents the reframe that is part
of the chain of events leading to this bug, and thus fixes the bug on
its own.  The change to GetBeforeFrameForContent seems desirable for
symmetry.

Note that patch 6 also independently fixes the reported bug.

This probably needs somewhat careful review.  We should examine:

 (1) what the rules for calling nsLayoutUtils::GetBeforeFrame and
     nsLayoutUtils::GetAfterFrame are, and whether both (or neither)
     need to be patched.

 (2) What the rules are for which frame the GenConProperty() lives on,
     and whether we should adjust nsIFrame::GetGenConPseudos() to either
     do something more intelligent, or assert about callers.

(We should probably clean up some of these things in a followup bug.)

Since the symptom of this bug is (once patch 4 is in the tree) only
causing extra reframes, it can only be tested using the new API (from
bug 1115691) for observing reframes.  I confirmed that the test for this
bug fails without the patch and passes with the patch (as noted by the
removal of its todo annotation).

This patch fixes the assertion on layout/generic/crashtests/600100.xhtml,
though I haven't investigated why.
2015-01-11 15:43:11 -08:00
L. David Baron
877c418cca Bug 1110277 patch 2 - Add nsLayoutUtils::LastContinuationOrIBSplitSibling(). r=bzbarsky
This is used in patch 3.
2015-01-11 15:43:10 -08:00
L. David Baron
9c0ffc3692 Bug 1110277 patch 1 - Consider the ib-split chain when checking for ::before and ::after in order to reframe when they're missing. r=bzbarsky
This patch is not needed to fix the bug, but it seems like it's probably
desirable.  It's not needed for this bug because
MaybeReframeForBeforePseudo and MaybeReframeForAfterPseudo are already
called (by ElementRestyler::RestyleChildren) on only the first and last
continuation or ib-split sibling with the same style.  So this patch
should only actually change anything for cases like a block-in-inline
split whose initial inline part is inside of a ::first-line (where
different parts of the block-in-inline split chain have different style).

Since the symptom of this bug is (once patch 6 is in the tree) only
causing extra reframes, it can only be tested using the new API (from
bug 1115691) for observing reframes.  I confirmed that the test for this
bug fails without the patch and passes with the patch (as noted by the
removal of its todo annotation).
2015-01-11 15:43:10 -08:00
L. David Baron
ac3bd5e648 Bug 1110277 patch 0 - Add mochitest for patch 1 and patch 3. r=heycam
Patch 1 and patch 3 will change the todo status of the first and second
tests, respectively, since they are what fix the tests.
2015-01-11 15:43:10 -08:00
L. David Baron
f1a791b803 Bug 1115691 patch 1 - Store counts of frames constructed and reflowed on the pres context. r=roc
(I've tested the frame construction counts in my test for bug 1110277; I
haven't actually tested the reflow counts.)
2015-01-11 15:43:10 -08:00
Tom Schuster
08ff12ed52 Backout changeset b4ebefd0f7e3:a8044fd506db Bug 1117607, Bug 1118087, Bug 1118092, Bug 1118105, Bug 1030372, Bug 1079627 on CLOSED TREE 2015-01-11 20:43:32 +01:00
Seth Fowler
da7153af11 Bug 1079627 (Part 3) - Support multiple decoders for a single RasterImage. r=tn 2015-01-11 05:34:20 -08:00
Masatoshi Kimura
f70d08c5aa Bug 1120062 - Part 1: Remove most Nullptr.h includes. r=waldo 2015-01-11 11:34:52 +09:00
Robert Longson
edacb3f690 Bug 1117514 - lines with zero length dashes are not rendered. r=jwatt 2015-01-10 22:17:57 +00:00
Ms2ger
a161fccb98 Backed out changeset f5a5f7463224 (bug 1119117) 2015-01-10 20:23:06 +01:00
Robert O'Callahan
f6db416dfe Bug 1119117. Don't clip nsDisplayOpacity items, since some of its descendants maybe should not be clipped with the nsDisplayOpacity clip. r=mattwoodrow
--HG--
extra : rebase_source : d8fbb70e8745a185142430dc341a5fa0146f5532
2015-01-11 00:12:33 +13:00
Geoff Lankow
b26884fe2a Bug 1114297 - Improve performance of nsTreeBodyFrame::AdjustForCellText for very long strings; r=smontagu 2015-01-11 00:07:58 +13:00
Wes Kocher
7ed4db3736 Merge m-c to inbound a=merge 2015-01-09 21:00:13 -08:00
Chris Peterson
0b8b25193e Bug 1118076 - Remove MOZ_THIS_IN_INITIALIZER_LIST. r=Waldo 2015-01-06 21:39:46 -08:00
Neil Deakin
e4fc31f0ac Bug 1089005, add a third consume option that never consumes even over the anchor. This allows clicks on the location field to adjust the caret position, r=dao 2015-01-09 21:12:10 -05:00
William Chen
6a1073c564 Bug 1118764 - Don't distribute anonymous root content in shadow DOM. r=bz 2015-01-08 13:49:51 -08:00
Gregor Wagner
f59502cc09 Bug 1103106 - Make assertion failure: !mWillChangeBudgetCalculated non fatal. r=benwa 2015-01-09 13:29:43 -08:00
Ryan VanderMeulen
85d5bf698c Merge inbound to m-c. a=merge 2015-01-09 14:45:50 -05:00
Carsten "Tomcat" Book
eabda1c7ba Merge mozilla-central to b2g-inbound 2015-01-09 15:54:18 +01:00
Fernando Jimenez Moreno
e7366b0d51 Bug 1101029 - Overlay iframe on top of front-most app. r=roc, sicking 2015-01-09 09:55:18 +01:00
Kartikaya Gupta
10e8171d82 Bug 1117828 - When building event regions for a pseudo-stacking context, use the child frame instead of the parent. r=roc 2015-01-09 10:12:35 -05:00
Makoto Kato
2e0919196e Bug 966157 - Part 3. Ignore assertion of test_bug558663.html for Linux e10s. r=masayuki 2015-01-09 16:40:25 +09:00
Boris Zbarsky
50e2ffad55 Bug 1103000. Update the unitless length quick whitelist to match spec changes. r=dbaron 2015-01-08 11:57:09 -05:00
Carsten "Tomcat" Book
552d0d9806 Backed out changeset 68d2b24c9351 (bug 1055658) for Reftest Failures 2015-01-08 16:08:58 +01:00
Carsten "Tomcat" Book
995dc0fac1 Backed out changeset f4e02295ff1f (bug 1055658) 2015-01-08 16:08:37 +01:00
Carsten "Tomcat" Book
76d20354e3 Backed out changeset 9371c6f11873 (bug 1055658) 2015-01-08 16:08:35 +01:00
Carsten "Tomcat" Book
a63d49e9f0 Backed out changeset 2ee5068037f2 (bug 1055658) 2015-01-08 16:08:33 +01:00
Kartikaya Gupta
01e045fa21 Bug 1109873 - Implement the expanded HitTestingTree. r=botond 2015-01-08 09:40:01 -05:00
pchang
dc0b00c38c Bug 1111433 - Dispatch the SelectionStateChanged event for blur. r=ehsan 2015-01-07 01:01:00 -05:00
Ehsan Akhgari
b6e35bb4b4 Bug 1118486 - Part 1: Use = delete instead of MOZ_DELETE directly; r=Waldo
Most of this patch (with the exception of dom/bindings/Codegen.py) was
generated by the following bash script:

#!/bin/bash

function convert() {
echo "Converting $1 to $2..."
find . ! -wholename "*nsprpub*" \
       ! -wholename "*security/nss*" \
       ! -wholename "*/.hg*" \
       ! -wholename "*/.git*" \
       ! -wholename "obj-*" \
         -type f \
      \( -iname "*.cpp" \
         -o -iname "*.h" \
         -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 MOZ_DELETE '= delete'
2015-01-08 23:19:05 -05:00
Jonathan Kew
ed60bfff90 Bug 1062108 - Adjust existing tests that are affected by the fix to synthetic-bold glyph advance. r=jdaggett 2015-01-08 12:52:10 +00:00
Jonathan Kew
c425c18d0e Bug 1062108 - Test that <space> and <x> have the same width in bold monospace font. r=jdaggett 2015-01-08 12:52:03 +00:00
Xidorn Quan
ba51fd634a Bug 1055658 part 4 - Revert RubyReflowState. r=dbaron
--HG--
extra : source : 4ee892ec7dde8957aa733401bfd7746a97ebcf7e
2015-01-08 23:20:16 +11:00
Xidorn Quan
9151eeca09 Bug 1055658 part 3 - Add reftests for ruby annotation relative positioning. r=dbaron
--HG--
extra : source : c352bc5450a3a939dc79ff55bd94e2cc78614ea0
2015-01-08 23:20:16 +11:00
Xidorn Quan
68abf2aee4 Bug 1055658 part 2 - Add relative positioning support for ruby annotations. r=dbaron
--HG--
extra : source : 19d8bb736510b1f162aba3df5d2a6b851ea705de
2015-01-08 23:20:16 +11:00
Xidorn Quan
90c35eb47c Bug 1055658 part 1 - Move code for applying relative position to an independent method. r=dbaron
--HG--
extra : source : 30aa25e2233135e3c4792f406af6d2cdc055758c
2015-01-08 23:20:16 +11:00
Simon Montagu
fb79ba7c59 Bug 1063471: finish off converting nsBlockReflowContext to logical coordinates (comment-only change), r=jfkthame 2015-01-08 02:10:24 -08:00
Michael Pruett
b9d2bd339e Bug 1118024 - Use new PL_DHashTable{Add,Lookup,Remove} functions. r=nfroyd 2015-01-05 20:27:28 -06:00
Xidorn Quan
2f2823d35f Bug 1099807 part 5 - Reftests for ruby intra-level whitespaces. r=dholbert
--HG--
extra : source : 0bbef725cf7f1abee96b98c7fe507f35115ecea9
2015-01-08 18:28:09 +11:00
Xidorn Quan
57996fc4ea Bug 1099807 part 4 - Fix line breaking around ruby intra-level whitespaces. r=dholbert
--HG--
extra : source : f6ebe9d9c7c863b18497e3c326f4486c5837a163
2015-01-08 18:28:09 +11:00
Xidorn Quan
4f48eecc94 Bug 1099807 part 3 - Use specific frame type in RubyColumn. r=dholbert
--HG--
extra : source : 0d78d1c0d10d9b5e32c0843a258d29e12f1369c4
2015-01-08 18:28:09 +11:00
Xidorn Quan
6314c00688 Bug 1099807 part 2 - Implement intra-level whitespace pairing. r=dholbert
Line breaking is not handled properly in this patch.
It would be fixed in the part 4.

--HG--
extra : source : 49c457bbcd3a55f7ee65b007d50dd2884c7158af
2015-01-08 18:28:09 +11:00
Xidorn Quan
11c1ac01de Bug 1099807 part 1 - Add common superclass for ruby base and ruby text. r=dholbert
--HG--
extra : source : 9dd5b0a847a1d698589c14e9dde5ced195eed646
2015-01-08 18:28:09 +11:00
Xidorn Quan
69be1e0363 Bug 1069519 part 3 - Add reftests for ruby line height calculation. r=dholbert
--HG--
extra : source : 728da9f1603aea283356de9f69f678667514cc70
2015-01-08 16:02:41 +11:00
Xidorn Quan
23c276c586 Bug 1069519 part 2 - Make line height calculation be aware of ruby annotations. r=dholbert
--HG--
extra : source : e8c8f94afde330276b5d907520d93da10e8f998c
2015-01-08 16:02:41 +11:00
Xidorn Quan
2f733e0b8b Bug 1069519 part 1 - Use common.css in previous ruby reftests. r=dholbert
--HG--
extra : source : 044fe5c95847a6324cdc66e0b2f5855c38d05f0e
2015-01-08 16:02:41 +11:00
Neil Deakin
4e63aa936f Bug 1102039, Ensure that the popup's widget visibility is updated after rollup, allows popups to disappear at the start of the minimize animation rather than after, r=tn 2015-01-07 20:52:20 -05:00
Ethan Lin
efd4b89d34 Bug 1116070 - Use neon to speed up the mask creation. r=longsonr 2015-01-06 02:44:00 -05:00
Botond Ballo
2e46796a0f Bug 1076241 - Add an API for setting a resolution on a document and scaling it by that amount. r=kats,tn 2015-01-02 20:06:14 -05:00
Ehsan Akhgari
6446250173 Bug 1118427 - Mark virtual overridden functions as MOZ_OVERRIDE in layout; r=roc 2015-01-07 10:07:36 -05:00
Morris Tseng
306e6a2bf2 Bug 1117643 - Always send blur event to selection carets but cancel long tap detector when leaving document. r=roc 2015-01-05 01:15:00 +01:00
pchang
a222d544ee Bug 1098161 - Notify shortcut mode to system app when long tap on content with empty text. r=roc 2014-12-19 14:04:45 +08:00
Simon Montagu
89be8cd2e4 Tests for bug 1102175, r=jfkthame 2015-01-06 23:50:05 -08:00
Simon Montagu
5d83d7a615 Bug 1079154 patch 7: remove obsoleted nsPoint::GetPhysicalPosition, r=jfkthame 2015-01-06 23:10:43 -08:00
Simon Montagu
f1b1867729 Bug 1079154 patch 6: convert ApplyRelativePosition, ReflowChild and FinishReflowChild in nsFlexContainerFrame to the logical versions, r=dholbert 2015-01-06 23:10:07 -08:00
Simon Montagu
cdac194ec6 Bug 1079154 patch 5: convert callers of ApplyRelativePosition, ReflowChild and FinishReflowChild in layout/generic to the logical versions, r=jfkthame 2015-01-06 23:10:07 -08:00
Simon Montagu
941f71e622 Bug 1079154 patch 4: Logical versions of ReflowChild and FinishReflowChild, r=jfkthame 2015-01-06 23:10:07 -08:00
Simon Montagu
16d0d92ccc Bug 1079154 patch 3: logical versions of ApplyRelativePositioning, r=jfkthame 2015-01-06 23:10:07 -08:00
Simon Montagu
02b85bac8f Bug 1079154 patch 2: add SetPosition with a LogicalPoint to nsIFrame, r=jfkthame 2015-01-06 23:10:07 -08:00
Simon Montagu
647520926b Bug 1079154 patch 1: add a != operator to LogicalPoint and sprinkle some const dust in WritingModes.h, r=jfkthame 2015-01-06 23:10:07 -08:00
Jonathan Kew
4bb521efa4 Bug 1079154 - Reftest for column child-frame positioning in vertical-rl mode, r=smontagu 2014-12-19 13:46:42 +00:00
Xidorn Quan
a8aad3d819 No bug, add a little more fuzz. 2015-01-07 17:20:11 +11:00
Ehsan Akhgari
9fa4436b98 Bug 1118426 - Mark virtual overridden functions as MOZ_OVERRIDE in layout/style; r=dbaron 2015-01-06 23:33:51 -05:00
Xidorn Quan
c1e4ed76d9 Bug 1116688 - Always try to push children after reflowing an incomplete ruby segment. r=dbaron
--HG--
extra : rebase_source : eddbedeaf484513da0789ec73d82801d55234d69
extra : source : afabc75550c1c5b3e8ce4b375cd0b5bb6a30fb21
2015-01-07 12:47:09 +11:00
Xidorn Quan
172cb2654c Bug 1117597 - Sync bounds of ruby annotation containers. r=roc
--HG--
extra : rebase_source : 336b023e6d44031a3a2adfde42a510b6729d83a3
extra : source : a2e4eb7e9c71f299685e8e4c9175bfb31a27a70b
2015-01-07 12:47:09 +11:00
Xidorn Quan
676a72ac80 Bug 1116635 - Fix interaction between ruby alignment and trimmed whitespace. r=roc
--HG--
extra : rebase_source : 02452c197129f05cee9ebf1a868c166c3b5c7880
extra : source : 0d467e9425a4a48d358e65227d6f5f0812e8dd0c
2015-01-07 12:47:09 +11:00
Xidorn Quan
8eeb38494e Bug 1116631 - Fix isize reservation of ruby base container. r=roc
--HG--
extra : rebase_source : efc67e14e7e6bbc2b6ba736b09780a9e507b122e
extra : source : 86371e41d07bab00c6cd04b236d194fa312b99c4
2015-01-07 12:47:09 +11:00
Daniel Holbert
8c8b7c59a7 Bug 1110950 part 0: Annotate b2g test-failures that are probably caused by this bug as "random-if(B2G)" for the time being. (no review, test-manifest-only) 2015-01-06 13:16:55 -08:00
Jonathan Kew
e137529bf4 Bug 1113684 - part 2 - Update test from bug 1105268 to account for position of broken-image icon now being sensitive to vertical-rl mode. r=smontagu 2015-01-06 20:56:03 +00:00
Jonathan Kew
7c90333f67 Bug 1113684 - part 1 - Handle vertical writing modes when displaying alt-text alongside a broken-image icon. r=smontagu 2015-01-06 20:56:03 +00:00
Jonathan Kew
cb01b47afe Bug 1111944 - Reftest for list item markers with vertical text. r=smontagu 2015-01-06 20:56:03 +00:00
Jonathan Kew
9462febf5a Bug 1111944 - part 2 - Update nsBulletFrame::PaintBullet to handle vertical text in list item markers. r=smontagu 2015-01-06 20:56:03 +00:00
Jonathan Kew
0e4fbcf5fd Bug 1111944 - part 1 - Make nsLayoutUtils::DrawString (and the nsFontMetrics methods it calls) handle vertical text. r=smontagu 2015-01-06 20:56:03 +00:00
Jonathan Kew
5fb4c0e20c Bug 1115916 - Reftest for synthetic vertical metrics. r=smontagu 2015-01-06 20:56:02 +00:00
JerryShih
1c75ae0748 Bug 1118336. Extract timer rate function from RefreshDriverTimer into SimpleTimerBasedRefreshTimer. r=roc 2015-01-06 09:28:18 -08:00
Frédéric Wang
443e33d6e5 Bug 619521 - Part 3: Send a notification for missing math fonts. r=jkitch 2014-11-11 02:37:00 -05:00
Jonathan Kew
65c4ca0e3f Bug 619521 - Part 1: Send a notification of any scripts for which font coverage is lacking. r=jdaggett 2014-12-22 16:35:54 +00:00
Ryan VanderMeulen
967224de70 Backed out changesets 4d2d510fbd62, 5e51dc838a89, and 652bd77f36c1 (bug 1116714) for Linux opt mochitest-dt orange.
CLOSED TREE
2015-01-06 08:57:43 -05:00
Mats Palmgren
7a34564ab7 Bug 1117596 - Simplify the code in nsBlockFrame::AddFrames somewhat to avoid a false positive warning ('Uninitialized variable: overflowLines'). r=roc 2015-01-06 11:46:26 +00:00