Commit Graph

16169 Commits

Author SHA1 Message Date
Stone Shih
9985f4aaac Bug 1304290 - Part 2: Keep nsPresShell alive to prevent access invalid address of shell->mPointerEventTarget. r=smaug
MozReview-Commit-ID: FG8AyKEJ6Qr

--HG--
extra : rebase_source : a807b916bf2958b9c1439778600d368f40573709
extra : histedit_source : a0c38d68191016f53eeaf1e1838911b67a7e6cb2
2016-10-03 13:20:14 +08:00
Hiroyuki Ikezoe
ff84f76fce Bug 1278136 - Part 5: Create a stacking context for opacity/transform animations even if it's in delay phase and even if the property is overridden by !important rules. r=birtles
This patch introduces a new functions named HasEffectiveAnimationOfProperty.
This function checks that a given CSS property is overridden by !important
rules.
On the other hand, now KeyframeEffetReadOnly::HasAnimationOfProperty() does
just check that the effect has a given CSS property.  This is used to create
a stacking context because we should create a stacking context for opacity or
transform animations even if the property is overridden by !important rules.

Note about no-stacking-context-(opacity|transform)-removing-animation-in-delay.html
Before this patch we don't create any stacking context for animations overridden
by !important rules, but after this patch we do create a stacking context for
such animations.  As a result, in the test case we did paint a stacking context
in the first rAF callback and then in the second rAF callback we did clear the
painted stacking context. Unfortunately sometimes the second rAF callback was
called prior to clear the stacking context on the compositor because of
compositor delay. To avoid this situation, we have to wait for MozAfterPaint
instead of rAF callback.

MozReview-Commit-ID: AG1Y0IgoB3U
2016-10-13 16:54:25 +09:00
Cameron McCormack
c1f0ee12ba Bug 1309082 - Part 2: Rename some ImageTracker members. r=bholley
MozReview-Commit-ID: 6yOIKKl8npT

--HG--
extra : rebase_source : 247787a0e18640c878e461c4b600bc36a40bad6d
2016-10-13 15:04:19 +08:00
Cameron McCormack
58c32a9088 Bug 1309082 - Part 1: Extract image tracking from nsDocument into a separate, refcounted object. r=bholley
This is refcounted as we'll need to hold strong references to the ImageTracker
from style structs that load images.

MozReview-Commit-ID: 994gE9tOjAn

--HG--
extra : rebase_source : 2d50059e51b42251c89a92a954cef7b49720ceba
2016-10-13 15:04:15 +08:00
cku
0d557e384c Bug 1299715 - Part 6. Move ComputeMaskGeometry from nsSVGIntegrationUtils to nsDisplayMask. r=mstange
MozReview-Commit-ID: 4uLfaGDXGyE

--HG--
extra : rebase_source : f6a72f1067d32287e68b3cc7a84dd5a0c8384e1a
2016-10-11 13:12:00 +08:00
cku
bedd15c17a Bug 1299715 - Part 3. Clip the target context by visible region of nsDisplayMask. r=mstange
MozReview-Commit-ID: HuqQBdY2M0O

--HG--
extra : rebase_source : c387c0b7745add2bb6bca185d2e7d91734d3e716
2016-10-07 11:47:45 +08:00
cku
2a0c6d5e7c Bug 1299715 - Part 2. Correct the value of nsDisplayMask::mVisibleRect. r=mstange
In nsDisplayItem::RecomputeVisibility, we compute and assign the value of
mVisibleRect base on the return value of nsDisplayMask::GetBounds.
Before this patch, the region of out-of-flow descendants is discarded.

MozReview-Commit-ID: JEeegiO1a6J

--HG--
extra : rebase_source : 0e66c0765d7eb7700592ab947c92a705a7281ea5
2016-10-06 17:53:19 +08:00
cku
a73d4a3f35 Bug 1299715 - Part 1. Replace ContainerItemType::eSVGEffects by ContainerItemType::eFilter. r=mstange
MozReview-Commit-ID: 73mxBsY3W0p

--HG--
extra : rebase_source : 4f9ac3d5400584c7d892c56a7c8b6dbfeae8e42f
2016-10-05 23:23:40 +08:00
Sebastian Hengst
f1659f19b4 Backed out changeset 221d9d15395f (bug 1299715) for failing reftest clipPath-and-mask-on-outflowElement-01a.html on Windows 8 x64. r=backout 2016-10-12 18:02:18 +02:00
Sebastian Hengst
162bba7f14 Backed out changeset aad315d1eb89 (bug 1299715) 2016-10-12 18:02:18 +02:00
Sebastian Hengst
39f37cfc06 Backed out changeset bf2428d58601 (bug 1299715) 2016-10-12 18:02:18 +02:00
Sebastian Hengst
f984f3a888 Backed out changeset b91db6687d19 (bug 1299715) 2016-10-12 18:02:18 +02:00
Olli Pettay
97b9917978 Bug 1308459 - Rename RefreshDriver::PresContext() to hint about its behavior, r=tnikkel
--HG--
extra : rebase_source : 50cf1fd7f1ee052e182ae3fa84ce8648e46143cd
2016-10-12 14:27:38 +03:00
cku
faa1874701 Bug 1299715 - Part 6. Move ComputeMaskGeometry from nsSVGIntegrationUtils to nsDisplayMask. r=mstange
MozReview-Commit-ID: 4uLfaGDXGyE

--HG--
extra : rebase_source : 136a87f3b23578d6a3a2cf95474463edb6a53708
2016-10-11 13:12:00 +08:00
cku
74299516a8 Bug 1299715 - Part 3. Clip the target context by visible region of nsDisplayMask. r=mstange
MozReview-Commit-ID: HuqQBdY2M0O

--HG--
extra : rebase_source : bd1bf1b7fbbd6dd660f9f8d1609e5c6c6c07a368
2016-10-07 11:47:45 +08:00
cku
5617bfd116 Bug 1299715 - Part 2. Correct the value of nsDisplayMask::mVisibleRect. r=mstange
In nsDisplayItem::RecomputeVisibility, we compute and assign the value of
mVisibleRect base on the return value of nsDisplayMask::GetBounds.
Before this patch, the region of out-of-flow descendants is discarded.

MozReview-Commit-ID: JEeegiO1a6J

--HG--
extra : rebase_source : 2adcf657f53983375ae67e5d99e1a55d563ec301
2016-10-06 17:53:19 +08:00
cku
410ad6084d Bug 1299715 - Part 1. Replace ContainerItemType::eSVGEffects by ContainerItemType::eFilter. r=mstange
MozReview-Commit-ID: 73mxBsY3W0p

--HG--
extra : rebase_source : e5fe4f2a17a43182fb32f9e7b991d16048373748
2016-10-05 23:23:40 +08:00
David Anderson
bb532b0876 Add telemetry for how phases of the painting pipeline contribute to large frame times. (bug 1309442, r=mattwoodrow) 2016-10-12 20:58:04 +13:00
Phil Ringnalda
6182caa3b9 Backed out 2 changesets (bug 1278136) for failures in no-stacking-context-opacity-removing-animation-in-delay.html
Backed out changeset 62cf4a7d6007 (bug 1278136)
Backed out changeset 5f2db29e67ca (bug 1278136)

MozReview-Commit-ID: K9WcZFjL2XB
2016-10-11 20:40:36 -07:00
Hiroyuki Ikezoe
d7f92dae54 Bug 1278136 - Part 5: Create a stacking context for opacity/transform animations even if it's in delay phase and even if the property is overridden by !important rules. r=birtles
This patch introduces a new functions named HasEffectiveAnimationOfProperty.
This function checks that a given CSS property is overridden by !important
rules.
On the other hand, now KeyframeEffetReadOnly::HasAnimationOfProperty() does
just check that the effect has a given CSS property.  This is used to create
a stacking context because we should create a stacking context for opacity or
transform animations even if the property is overridden by !important rules.

MozReview-Commit-ID: AG1Y0IgoB3U
2016-10-12 09:59:03 +09:00
Andi-Bogdan Postelnicu
29e18f24c8 Bug 1308877 - prevent null pointer dereference in PresShell::HandleEvent. r=smaug
MozReview-Commit-ID: E4tdcyUCxpU

--HG--
extra : rebase_source : 5bde36c19aba84735800ca8eed76f3350851fa8a
2016-10-10 13:44:03 +03:00
Brian Birtles
b813bcffe5 Bug 1302973 - Store timelines on document; r=smaug
MozReview-Commit-ID: KHtAq0VgPZW

--HG--
extra : rebase_source : 7daa2a4202f489308981e9cff02e2d7f3bf92c1e
2016-10-09 22:36:56 +09:00
Mats Palmgren
4ee6a90bbb Bug 1308793 - Crash when setting display:[inline-]{flex,grid} or columnset properties on a SVG <text> element. r=tn 2016-10-09 22:34:07 -05:00
Phil Ringnalda
c21623fc42 Merge m-c to m-i
MozReview-Commit-ID: Kp60wHZauGi
2016-10-06 20:26:20 -07:00
Phil Ringnalda
fd7b7476c2 Merge m-i to m-c, a=merge
MozReview-Commit-ID: 93ZdJbK1x05
2016-10-06 19:58:18 -07:00
Carsten "Tomcat" Book
06332a09b7 Merge mozilla-central to autoland 2016-10-06 12:29:44 +02:00
Carsten "Tomcat" Book
7c8e81673d merge mozilla-inbound to mozilla-central a=merge 2016-10-06 11:59:54 +02:00
Ting-Yu Lin
bc5a26efde Bug 1307252 - Hide the carets when the selection is made by select all. r=kanru,kats
The mochitest for clipboard still needs the mozbrowsercaretstatechanged events,
so we disable "layout.accessiblecaret.hide_carets_for_mouse_input".

MozReview-Commit-ID: CD03lmjwUa9

--HG--
extra : rebase_source : 530d241764d55ed6507f993511c74cf820195283
2016-10-05 15:46:36 +08:00
Jonathan Kew
ad335f5029 Bug 1307842 - Remove the nsBidi::GetCharTypeAt() method and use plain GetBidiCat() instead. r=xidorn
MozReview-Commit-ID: 7vZCiIBGxXJ

--HG--
extra : rebase_source : d7f336f299075531197baec5990161e18efed0ca
2016-10-05 17:58:00 +01:00
Kartikaya Gupta
52a7c7eaf5 Bug 1307522 - Remove obsolete comment. r=me and DONTBUILD because NPOTB
MozReview-Commit-ID: BA6Ak87vhKQ
2016-10-05 16:32:06 -04:00
Kartikaya Gupta
a640f97b00 Bug 1306603 - Remove rest of mozpasspointerevents code as it is not needed any more. r=kanru
MozReview-Commit-ID: 5N3hUq2lGuU
2016-10-05 08:27:02 -04:00
Ting-Yu Lin
570d1f0e83 Bug 1304441 Part 3 - Insert main summary's frame construction item at front of the list. r=bz
Change the logic that moves the main summary to the front from operating
on generated frames in DetailsFrame::SetInitialChildList() to operating
on frame construction item list in AddFrameConstructionItemsInternal()
so that it will be correct when cooperating with ::first-line.

The root cause of the bug reported is because when specifying
::first-line on details element, the first frame of summary element,
which is generated due to ib-split, will be wrapped in nsFirstLineFrame.
The original code fails to find the summary frame in the wrapper frame
and triggers assertion because of the second ib-split summary frame. To
fix that, we need to descend into the child list of wrapper frames when
checking the main summary.

Add original test case as a crashtest as well as reftests to clearly
reproduce the issue.

Note that in the reftest, the blue color in ::first-line is applied
incorrectly to the second line in the summary due to bug 520605.

MozReview-Commit-ID: Bv4Vcvxp6pY
2016-10-05 14:43:32 +08:00
Ting-Yu Lin
8ccd148e08 Bug 1304441 Part 1 - Remove unneeded check when constructing frame for summary. r=bz
SummaryFrame had been removed in bug 1258657, so now HTMLSummaryElement
is always rendered as an ordinary inline or block frame. Therefore, the
check in FindHTMLData is not needed anymore.

MozReview-Commit-ID: Ikxla6QoNLT
2016-10-05 14:43:31 +08:00
Jessica Jong
b3014cc00b Bug 1288591 - Implement the layout for <input type=time>. r=mconley, r=dholbert, r=smaug 2016-10-06 00:17:00 -04:00
L. David Baron
2dcd8fe04b Bug 1299736 - Remove unsafe optimizations from FrameHasPositionedPlaceholderDescendants. r=bzbarsky
MozReview-Commit-ID: 4DYtXqNYfPq

--HG--
extra : transplant_source : %3B%95P%1E%047%89%BA%99%D2%1D%B1%00%A1%EF%81%D5%DE%7F%8A
2016-10-04 11:39:36 -07:00
Kartikaya Gupta
5a688fe072 Bug 1304263 - On Windows, fire the eMouseLongTap event as soon as APZ detects the long-press. r=TYLin
On Windows, the contextmenu event is fired when the finger is lifted after a
long-press. However, there are various bits of code, such as the AccessibleCaret
or potential fixes for bug 1147335, which would benefit from knowing when the
long-press gesture was detected. By moving eMouseLongTap event up we can satisfy
that need. An alternative approach considered was to fire the eMouseLongTap
before the contextmenu on all platforms unconditionally, but that makes it harder
to implement platform-specific text selection behaviour the way we want. In
particular we would have to add an extra message or notification for non-Windows
platforms that initiated text selection if the contextmenu event was not
consumed.

MozReview-Commit-ID: 2lmwxmmGrVD
2016-10-04 09:31:15 -04:00
Mats Palmgren
d7f4c1f451 Bug 984869 - Add support for display:flex/grid and columnset layout to <button>. r=tn 2016-10-06 22:43:22 +02:00
Mats Palmgren
bd83953853 Bug 1307806 - [css-grid][css-flexbox][css-align] Implement nsLayoutUtils::GetFirstLineBaseline for flex/grid containers. r=dholbert 2016-10-06 22:43:22 +02:00
Sebastian Hengst
256c9cf9ff Merge mozilla-central to autoland 2016-10-05 17:15:26 +02:00
Hiroyuki Ikezoe
8dbb9e3b52 Bug 1304922 - Part 10: Drop non-const version of KeyframeEffectReadOnly::Properties(). r=birtles
We no longer modify AnimationProperty outside KeyframeEffectReadOnly class.

MozReview-Commit-ID: 1YJglDhuS1w

--HG--
extra : rebase_source : 59ac4ff0fb34f93df7f28763bd207615790ec390
2016-10-05 14:54:01 +09:00
Hiroyuki Ikezoe
c354bf91e5 Bug 1304922 - Part 6: Introduce mPropertiesWithImportantRules and mPropertiesForAnimationsLevel and use it to detect conditions that we need to update layers. r=birtles
This patch also makes composite order lowest to highest, as a result we also
need to replace mWinsInCascade checks with the the properties.
The mWinsInCascade membed itself will be removed in a subsequent patch.

Now we call RequestRestyle(Layer) respectively for transition and animation,
so a test case in test_restyles.html works as expected.

And now lower-priority animations are also sent to the compositor so this patch
fixed some tests in test_running_on_compositor.html and
test_animation_performance_warning.html

MozReview-Commit-ID: BchUsJbmatg

--HG--
extra : rebase_source : ff295aecb08bb672ac5f02e26e37a4ea4f3eb7c0
2016-10-05 14:42:56 +09:00
Hiroyuki Ikezoe
bf263e20b5 Bug 1304922 - Part 1: Rename nsLayoutUtils::HasCurrentAnimationOfProperty() to nsLayoutUtils::HasActiveAnimationOfProperty(). r=birtles
KeyframeEffectReadOnly::HasAnimationOfProperty() calls GetAnimationOfProperty()
which checks mWinsInCascade flag and the mWinsInCascade flag is set to true
only if the effect is in-effect.
That means nsLayoutUtils::HasCurrentAnimationOfProperty() actually represents
that a given frame has at least one animation which is current and *in-effect*
(i.e. active).

MozReview-Commit-ID: 93rMMmzrBMi

--HG--
extra : rebase_source : c48167d874aa243ab070d0aa64876307748e3493
2016-10-05 14:25:41 +09:00
Julian Seward
6b779e5f7a Bug 1303277 - Adjust the refresh driver warning threshold in function of whether valgrind is running rather than just the build target. r=nical.
--HG--
extra : rebase_source : 56283466d5eeb256bd7b485bae8f90debd751f73
2016-10-06 13:27:33 +02:00
Carsten "Tomcat" Book
7333917288 Merge mozilla-central to mozilla-inbound 2016-10-06 12:28:03 +02:00
Jonathan Kew
7e2171a18c Bug 924851 - patch 2 - When ENABLE_INTL_API is true, make nsBidi into a minimal wrapper around ICU's ubidi.h functions. r=xidorn
--HG--
rename : layout/base/nsBidi.cpp => layout/base/nsBidi_noICU.cpp
rename : layout/base/nsBidi.h => layout/base/nsBidi_noICU.h
2016-10-06 09:49:17 +01:00
Jonathan Kew
3cc319fde5 Bug 924851 - patch 1 - Move definition of nsBidiLevel/nsBidiDirection and frame bidi properties from nsBidi.h to nsIFrame.h, in preparation for removal of nsBidi. r=xidorn 2016-10-06 09:49:14 +01:00
Kartikaya Gupta
8b51259dcd Bug 1293483 - Keep the carets hidden when the user is using a mouse to modify the selection. r=TYLin
MozReview-Commit-ID: FJwODLk6XMS
2016-10-03 08:57:44 -04:00
Stone Shih
1aa4b81fa4 Bug 1293174 - [Pointer Event] Implement implicit pointer capture for touch. f=bevistseng. r=smaug
--HG--
extra : rebase_source : ef86008679a1c0e7af30bab658e0c7668093adfe
2016-08-11 14:49:15 +08:00
Brad Werth
2fe8e4a753 Bug 1304012 -- Part 2: Rename nsStyleStruct Computed**Self functions to Used**Self. r=dholbert
MozReview-Commit-ID: FCBuT2Z7sy6
2016-09-30 09:15:57 -07:00
Kartikaya Gupta
435b8ac3fc Bug 1300905 - When long-pressing on a selection, don't dismiss the selection and start a new one. Show the context menu instead. r=TYLin,mats
MozReview-Commit-ID: J0e9DqIDwnC
2016-09-30 09:36:10 -04:00