Commit Graph

12691 Commits

Author SHA1 Message Date
Ting-Yu Lin
ecfae6abac Bug 1277129 Part 4b - Rename ScrollReflowState to ScrollReflowInput. r=dbaron
MozReview-Commit-ID: ILLqDYR0vkZ

--HG--
extra : rebase_source : d6167b5673e854f1a6e6b00fa942cd81e534ce49
2016-07-21 18:36:37 +08:00
Ting-Yu Lin
9c26b29bf4 Bug 1277129 Part 4a - Move ScrollReflowState into mozilla namespace. r=dbaron
MozReview-Commit-ID: C8drnMacxO

--HG--
extra : rebase_source : b0a492d44785c6f2f6afc8aedb8b9cd2dece86b3
2016-07-21 18:36:36 +08:00
Ting-Yu Lin
6111a2de40 Bug 1277129 Part 2c - Rename nsBlockReflowState to BlockReflowInput. r=dbaron
This patch is generated by the following script:

function rename() {
find .\
     -type f\
     ! -path "./obj*"\
     ! -path "./.git"\
     ! -path "./.hg"\
     \( -name "*.cpp" -or\
        -name "*.h" \)\
        -exec sed -i -e "s/$1/$2/g" "{}" \;
}

rename "nsBlockReflowState" "BlockReflowInput"

MozReview-Commit-ID: FtjqkQpGfcI

--HG--
extra : rebase_source : c8f678bc47217b778df7f91f0f6cce6c44b04d90
2016-07-21 18:36:36 +08:00
Ting-Yu Lin
371989a096 Bug 1277129 Part 2b - Rename nsBlockReflowState.h/cpp to BlockReflowInput.h/cpp and fix #includes. r=dbaron
The #includes are fixed by the following script:

function rename() {
find .\
     -type f\
     ! -path "./obj*"\
     ! -path "./.git"\
     ! -path "./.hg"\
     \( -name "*.cpp" -or\
        -name "*.h" \)\
        -exec sed -i -e "s/$1/$2/g" "{}" \;
}

rename "nsBlockReflowState\.h" "BlockReflowInput\.h"

MozReview-Commit-ID: 6QMqko1XOsT

--HG--
rename : layout/generic/nsBlockReflowState.cpp => layout/generic/BlockReflowInput.cpp
rename : layout/generic/nsBlockReflowState.h => layout/generic/BlockReflowInput.h
extra : rebase_source : 8911b9bbe68ceca82c77b7e120d87bfa71b7211c
2016-07-21 18:36:36 +08:00
Ting-Yu Lin
4b0284cd0f Bug 1277129 Part 2a - Move nsBlockReflowState into mozilla namespace. r=dbaron
MozReview-Commit-ID: GNEgxqqBDAH

--HG--
extra : rebase_source : d70f52229215111e6d393103c71fb79475353ac0
2016-07-21 18:36:36 +08:00
Ting-Yu Lin
154af05659 Bug 1277129 Part 1d - Rename nsCSSOffsetState to SizeComputationInput. r=dbaron
This patch is generated by the following script:

function rename() {
find .\
     -type f\
     ! -path "./obj*"\
     ! -path "./.git"\
     ! -path "./.hg"\
     \( -name "*.cpp" -or\
        -name "*.h" \)\
        -exec sed -i -e "s/$1/$2/g" "{}" \;
}

rename nsCSSOffsetState SizeComputationInput

MozReview-Commit-ID: GUJ99qNiSwD

--HG--
extra : rebase_source : cf4e6c35338e1e9d4ee106305548075b2c1bdcb1
2016-07-21 18:36:35 +08:00
Ting-Yu Lin
820f88de49 Bug 1277129 Part 1c - Rename nsHTMLReflowState to ReflowInput. r=dbaron
This patch is generated by the following script:

function rename() {
find .\
     -type f\
     ! -path "./obj*"\
     ! -path "./.git"\
     ! -path "./.hg"\
     \( -name "*.cpp" -or\
        -name "*.h" \)\
        -exec sed -i -e "s/$1/$2/g" "{}" \;
}

rename nsHTMLReflowState ReflowInput

MozReview-Commit-ID: 9r9vdVv1pXc

--HG--
extra : rebase_source : 623ec822996ba0ea0058dd137acf5a658cdea04a
2016-07-21 18:36:35 +08:00
Ting-Yu Lin
d444310eb1 Bug 1277129 Part 1b - Rename nsHTMLReflowState.h/cpp to ReflowInput.h/cpp and fix #includes. r=dbaron
The #includes are fixed by the following script:

function rename() {
find .\
     -type f\
     ! -path "./obj*"\
     ! -path "./.git"\
     ! -path "./.hg"\
     \( -name "*.cpp" -or\
        -name "*.h" \)\
        -exec sed -i -e "s/$1/$2/g" "{}" \;
}

rename "nsHTMLReflowState\.h" "mozilla\/ReflowInput\.h"

MozReview-Commit-ID: FjwHA4YRHNv

--HG--
rename : layout/generic/nsHTMLReflowState.cpp => layout/generic/ReflowInput.cpp
rename : layout/generic/nsHTMLReflowState.h => layout/generic/ReflowInput.h
extra : rebase_source : e4215620717df436a51243cee689286cfabc7c71
2016-07-21 18:36:34 +08:00
Ting-Yu Lin
39dffbe21b Bug 1277129 Part 1a - Move nsHTMLReflowState and nsCSSOffsetState into mozilla namespace. r=dbaron
MozReview-Commit-ID: DJfEQRCgNo3

--HG--
extra : rebase_source : add4c7a843f956114b2b9dfe20fba1048139ca5f
2016-07-21 18:36:34 +08:00
Chris Peterson
b175c9fdd5 Bug 1277106 - Part 2: Expand MOZ_UTF16() strings to u"" string literals. r=Waldo 2016-07-20 22:03:25 -07:00
Kartikaya Gupta
0b6ad3948e Bug 1287142 - Ensure that the touch-action property on the scrollable element is applied to both the inner and outer scrollframe. r=tnikkel
MozReview-Commit-ID: JafhGnhpApE
2016-07-20 23:29:17 -04:00
Markus Stange
6bb3620330 Back out bug 1012752 for causing bug 1285532 and bug 1286674.
MozReview-Commit-ID: DYZ3D4yL1eZ

--HG--
extra : source : b98df554a6f0aa154275d363163ec618189503ed
2016-07-16 17:10:08 -04:00
cku
77db71816d Bug 1287705 - Part 2. Add more comments and construct PaintState in PaintTextParams. r=jfkthame
MozReview-Commit-ID: EzfOzRUU6PQ

--HG--
extra : rebase_source : 1a7b96239b0d90f4e58be358629a7e3987b674ba
2016-07-19 20:48:19 +08:00
cku
7128f1272f Bug 1287705 - Part 1. Do not paint text shadow while generating text mask. r=jfkthame
MozReview-Commit-ID: C3auIlugrFY

--HG--
extra : rebase_source : a423bbab21d4675e6b3970336b7763f1edfea5b0
2016-07-19 20:41:18 +08:00
Andi-Bogdan Postelnicu
3cf2f32712 Bug 1287743 - Shift an assignment to be outside of an assert, in nsFrameSetFrame, to address a static-analysis issue. r=dholbert
MozReview-Commit-ID: IsHZeFsGGJC

--HG--
extra : rebase_source : d3c5b9dbcda7997e00229abfff14f9fc6d7e6557
2016-07-19 21:28:54 +03:00
Bob Owen
4ec3db3eec Bug 1252877 Part 7: Wait for plugin updates during active animations. r=dvander, r=jimm
Also, apply plugin updates when they arrive not just during composition.

MozReview-Commit-ID: FZJYiPqb5uZ
2016-07-18 09:54:02 +01:00
Bob Owen
88df0f1a00 Bug 1252877 Part 6: Fix plugin frame check for paint skipping and short circuit the search for plugin frames. r=jimm
MozReview-Commit-ID: EqAhU20Vkxm
2016-07-18 09:54:02 +01:00
Bob Owen
73dac13bac Bug 1252877 Part 4: Remove notification of plugins about scrolling from child. r=jimm
MozReview-Commit-ID: 2tHtOxx7jKa
2016-07-18 09:54:02 +01:00
Ting-Yu Lin
e1c39de3f3 Bug 1287056 - Group private methods together in nsBlockReflowState.h. r=xidorn
This is to avoid changing the access modifiers.

MozReview-Commit-ID: 9kkWeAKelGL

--HG--
extra : rebase_source : 67a3995872fff4a5028ce86ea070078635ba17e9
2016-07-15 15:57:40 +08:00
Kartikaya Gupta
504b319a29 Bug 1287185 - Disable paint skipping for scrollframes with background-attachment:local. r=mstange
MozReview-Commit-ID: GMgIyxUd20c

--HG--
extra : rebase_source : 2fec3dd0a02aa0ab6eab69e9e6ee6229863be10e
2016-07-15 15:56:39 -04:00
Kevin Chen
cac9daeb79 Bug 1275693 - Refactor <canvas> strokeText drawing to re-use gfxTextRun::Draw. r=jfkthame 2016-07-14 02:00:00 +02:00
Carsten "Tomcat" Book
bfcc10319e merge mozilla-inbound to mozilla-central a=merge 2016-07-14 11:45:54 +02:00
Timothy Nikkel
8dab980fec Bug 1271714. When creating the wrap list item that contains the display list for a frame make sure to use a scroll clip that includes content in the display list. r=mstange
In nsIFrame::BuildDisplayListForChild for certain types of frames we create wrap list items to wrap the constructed display list to make those items inseperable.

We were using the current scroll clip by default when creating these items, but that scroll clip may not contain all the content in the display list if we traversed into an out of flow frame whose containing block is an ancestor of the current frame. The CurrentAncestorScrollClipForStackingContextContents keeps track of exactly this. (Its name might be a little misleading as we may not be dealing with a true stacking context here. Nevertheless it does contain the correct clip.)

We also need to initialize the value of mStackingContextAncestorSC when we create an AutoSaveRestore because we are now using that value sometimes without calling Enter/ExitStackingContext (which initializes mStackingContextAncestorSC).
2016-07-13 01:08:18 -05:00
Kartikaya Gupta
982bc8ba1f Bug 1284586 - Disable paint-skipping for scrollframes that we detect as having a CSS-clipped descendant. r=mstange
MozReview-Commit-ID: AvjokFZMwdd
2016-07-13 16:05:53 -04:00
Corey Ford
55d426b404 Bug 1280344 - Use first continuation's normal position in computing sticky scroll ranges for APZ. r=dholbert
MozReview-Commit-ID: L0wRgCvb8h8
2016-07-12 12:36:31 -04:00
Ting-Yu Lin
faa1469dd9 Bug 1273049 - Migrate documentation in block-and-line.html into the tree. r=dholbert
I also adjust some of the old flag name to their logical name, and
rewrite some of the content where I see fit.

MozReview-Commit-ID: 7wAsDUOiN0a

--HG--
extra : rebase_source : 18e28e5ed1c593fb272042508b36244f132da4f5
2016-07-08 18:24:49 +08:00
Carsten "Tomcat" Book
c3393c7dd8 Backed out changeset 0d582c239872 (bug 1271714) for test failures 2016-07-13 09:44:45 +02:00
Timothy Nikkel
5cc9ab83c9 Bug 1271714. When creating the wrap list item that contains the display list for a frame make sure to use a scroll clip that includes content in the display list. r=mstange
In nsIFrame::BuildDisplayListForChild for certain types of frames we create wrap list items to wrap the constructed display list to make those items inseperable.

We were using the current scroll clip by default when creating these items, but that scroll clip may not contain all the content in the display list if we traversed into an out of flow frame whose containing block is an ancestor of the current frame. The CurrentAncestorScrollClipForStackingContextContents keeps track of exactly this. (Its name might be a little misleading as we may not be dealing with a true stacking context here. Nevertheless it does contain the correct clip.)

We also need to initialize the value of mStackingContextAncestorSC when we create an AutoSaveRestore because we are now using that value sometimes without calling Enter/ExitStackingContext (which initializes mStackingContextAncestorSC).
2016-07-13 01:08:18 -05:00
Jared Wein
466b4c4e05 Bug 1283415 - Only set the poster src on the anonymous content if the attribute is not empty. r=cpearce 2016-07-10 09:06:00 +02:00
Daosheng Mu
59c534ddde Bug 1135329 - Reflow requests for nondisplay SVGTextFrame while its glyph is updated; r=heycam
MozReview-Commit-ID: 6QiRwx0FYKT

--HG--
extra : transplant_source : U%96%3D%AD%80-%E8%86X%1C%17%A3%F9%29%88H%DB%7Ds%A0
2016-06-24 16:02:44 +08:00
Emilio Cobos Álvarez
474ff66ca4 Bug 1285474: stylo: Add dirtiness-tracking hooks for Servo and convenient methods. r=bholley
Also, guard with asserts the access to the new shared flags.

MozReview-Commit-ID: H9UFFHRPmiu
2016-07-12 00:33:57 -07:00
Timothy Nikkel
8b8ea4c0be Bug 1276467. Enforce that any items creating when we descend into an out-of-flow for which we don't have the proper clip are invisible. r=mattwoodrow
Just giving them an empty visible rect isn't enough because the initial visible rect can be ignored when we compute visibility.

When we enter an out of flow without saved clip data we set a flag on the builder indicating all items created should be invisible. When we enter a visible out of flow (ie one with saved clip data) inside the first out of flow we clear the flag so items created inside the second out of flow can be visible.
2016-07-12 00:49:11 -05:00
Michael Li
7fc51f7d9e Bug 1283273 - Change nsAutoPtr to UniquePtr in classes within layout/generic. r=dholbert 2016-07-08 08:08:00 +02:00
Brad Werth
dde35eb992 Bug 1241932 - Expose decoded CSS grid line properties via a Chrome API. r=mats 2016-07-07 11:38:12 -07:00
Timothy Nikkel
8ef0c4f3e2 Bug 1285411. Mark preserve 3d children as "force descend into" before we mark absolute frames so that we can save the proper clip for more out of flow frames. r=mattwoodrow 2016-07-09 18:41:02 -05:00
Masayuki Nakano
7f30e926b8 Bug 1260651 part.60 editor/libeditor should export some headers which are required by other modules and other modules shouldn't use local include for them r=mccr8
MozReview-Commit-ID: FZSExwkHH2B
2016-07-08 14:03:31 +09:00
Masayuki Nakano
9b6e26f0bb Bug 1260651 part.56 Rename nsHTMLEditor to mozilla::HTMLEditor and related stuff r=mccr8
This patch renames classes/structs as:

nsHTMLEditor -> mozilla::HTMLEditor
nsHTMLEditor::BlobReader -> mozilla::HTMLEditor::BlobReader
SetSelectionAfterTableEdit -> mozilla::AutoSelectionSetterAfterTableEdit

nsHTMLEditor.h -> HTMLEditor.h (exposed as mozilla/editor/HTMLEditor.h)
nsHTMLAbsPosition.cpp -> HTMLAbsPositionEditor.cpp
nsHTMLAnonymousUtils.cpp -> HTMLAnonymousNodeEditor.cpp
nsHTMLDataTransfer.cpp -> HTMLEditorDataTransfer.cpp
nsHTMLEditorStyle.cpp -> HTMLStyleEditor.cpp
nsHTMLInlineTableEditor.cpp -> HTMLInlineTableEditor.cpp
nsHTMLObjectResizer.cpp -> HTMLEditorObjectResizer.cpp
nsTableEditor.cpp -> HTMLTableEditor.cpp

These new file names are clearer names which related to HTMLEditor than old names.

MozReview-Commit-ID: DTWaoFvy0DF

--HG--
rename : editor/libeditor/nsHTMLAbsPosition.cpp => editor/libeditor/HTMLAbsPositionEditor.cpp
rename : editor/libeditor/nsHTMLAnonymousUtils.cpp => editor/libeditor/HTMLAnonymousNodeEditor.cpp
rename : editor/libeditor/nsHTMLEditor.cpp => editor/libeditor/HTMLEditor.cpp
rename : editor/libeditor/nsHTMLEditor.h => editor/libeditor/HTMLEditor.h
rename : editor/libeditor/nsHTMLDataTransfer.cpp => editor/libeditor/HTMLEditorDataTransfer.cpp
rename : editor/libeditor/nsHTMLObjectResizer.cpp => editor/libeditor/HTMLEditorObjectResizer.cpp
rename : editor/libeditor/nsHTMLInlineTableEditor.cpp => editor/libeditor/HTMLInlineTableEditor.cpp
rename : editor/libeditor/nsHTMLEditorStyle.cpp => editor/libeditor/HTMLStyleEditor.cpp
rename : editor/libeditor/nsTableEditor.cpp => editor/libeditor/HTMLTableEditor.cpp
2016-07-09 11:42:33 +09:00
Chris Peterson
43c2748f66 Bug 1277775 - Replace MOZ_CONSTEXPR{_VAR,_TMPL} with constexpr. r=froydnj 2016-07-08 14:39:53 -07:00
Carsten "Tomcat" Book
5784adf50e Merge mozilla-central to autoland 2016-07-08 12:18:14 +02:00
Xidorn Quan
a3fdca80b5 Bug 1283721 - Use block-size rather than height for computing float available space. r=jfkthame
MozReview-Commit-ID: HyGmoYJDOkd

--HG--
extra : transplant_source : %21G%83%7B%8E%B5%26%3EW%F41%23dBD%8F%3A%9D%1DM
2016-07-07 16:48:21 +10:00
Benjamin Smedberg
bf05496a83 Bug 1282866 - remove widget/qt and other supporting QT code, r=dougt. This patch does not remove all of the checks for MOZ_WIDGET_QT (which are dead code), but that will be a followup mentored bug.
MozReview-Commit-ID: EGqHHhCD7vD

--HG--
extra : rebase_source : a4b9593959dd3ba80189db47eabb056ea207490f
extra : amend_source : a744d833693f0fe7adbea961c00bb5fb55a91580
2016-07-07 12:14:25 -04:00
Hiroyuki Ikezoe
d6944d301d Bug 1278136 - Part 2: We should not check whether the animation can run on the compositor or it's paused when determining if we should create a stacking context. r=birtles,mattwoodrow
We should create a stacking context for any transform or opacity animations
that are either "in effect" (what we currently do) OR "current", i.e.
scheduled to run or running. *BUT* for now, we don't create any stacking
context in before phase without fill:backwards or fill:both because the
property never wins in cascade until the animation gets "in effect".  This
restriction will be removed in a subsequent patch in this bug after landing
bug 1279403.

MozReview-Commit-ID: 8RyLJNPtoKI

--HG--
rename : layout/reftests/css-animations/stacking-context-transform-animation-ref.html => layout/reftests/css-animations/stacking-context-animation-ref.html
extra : rebase_source : 0d9c8d9e03ca0d400e9b376b9416fbabffd10034
2016-06-27 12:52:53 +09:00
Hiroyuki Ikezoe
7cc7e32a9b Bug 1278136 - Part 0: Clean up frame->StyleDisplay()->BackfaceIsHidden() usage. r=mattwoodrow
We already have a wrapper named nsIFrame::BackfaceIsHidden().

MozReview-Commit-ID: 5L49W6wtXs1

--HG--
extra : rebase_source : d3be8d028453e63fb2d3d96b5956262d352385ef
2016-07-08 13:01:31 +09:00
Markus Stange
f8e66e0cdf Bug 1012752 - Snap scrolled area to layer pixels. r=tnikkel
We want the maximum scroll position to be aligned with layer pixels. That way
we don't have to re-rasterize the scrolled contents once scrolling hits the
edge of the scrollable area.

Here's how we determine the maximum scroll position: We get the scroll port
rect, snapped to layer pixels. Then we get the scrolled rect and also snap
that to layer pixels. The maximum scroll position is set to the difference
between right/bottom edges of these rectangles.
Now the scrollable area is computed by adding this maximum scroll position
to the unsnapped scroll port size.
The underlying idea here is: Pretend we have overflow:visible so that the
scrolled contents start at (0, 0) relative to the scroll port and spill over
the scroll port edges. When these contents are rendered, their rendering is
snapped to layer pixels. We want those exact pixels to be accessible by
scrolling.

This way of computing the snapped scrollable area ensures that, if you scroll
to the maximum scroll position, the right/bottom edges of the rendered
scrolled contents line up exactly with the right/bottom edges of the scroll
port. The scrolled contents are neither cut off nor are they moved too far.
(This is something that no other browser engine gets completely right, see the
testcase in bug 1012752.)

There are also a few disadvantages to this solution. We snap to layer pixels,
and the size of a layer pixel can depend on the zoom level, the document
resolution, the current screen's scale factor, and CSS transforms. The snap
origin is the position of the reference frame. So a change to any of these
things can influence the scrollable area and the maximum scroll position.
This patch does not make us adjust the current scroll position in the event
that the maximum scroll position changes such that the current scroll position
would be out of range, unless there's a reflow of the scrolled contents. This
means that we can sometimes render a slightly inconsistent state where the
current scroll position exceeds the maximum scroll position. We can fix this
once it turns out to be a problem; I doubt that it will be a problem because
none of the other browsers seems to prevent this problem either.

The size of the scrollable area is exposed through the DOM properties
scrollWidth and scrollHeight. At the moment, these are integer properties, so
their value is rounded to the nearest CSS pixel. Before this patch, the
returned value would always be within 0.5 CSS pixels of the value that layout
computed for the content's scrollable overflow based on the CSS styles of the
contents.
Now that scrollWidth and scrollHeight also depend on pixel snapping, their
values can deviate by up to one layer pixel from what the page might expect
based on the styles of the contents. This change requires a few changes to
existing tests.
The fact that scrollWidth and scrollHeight can change based on the position of
the scrollable element and the zoom level / resolution may surprise some web
pages. However, this also seems to happen in Edge. Edge seems to always round
scrollWidth and scrollHeight upwards, possibly to their equivalent of layout
device pixels.

MozReview-Commit-ID: 3LFV7Lio4tG

--HG--
extra : histedit_source : 5390eeebfe9a2791d9ac8e91ec1dfec4ec7b4118
2016-06-02 15:41:51 -04:00
Brad Werth
e0d3269112 Bug 1241932 - Expose decoded CSS grid track properties in a Chrome API. r=heycam, r=khuey
--HG--
extra : rebase_source : 0c2a49236a2c71233a1ce6a92e50663b8a9f6238
2016-07-06 11:45:18 -07:00
Gregory Szorc
021d3fdfc7 Merge mozilla-central to mozilla-inbound 2016-07-06 18:26:17 -07:00
Xidorn Quan
f01d901ec8 Bug 1283106 - Put empty skip chars in gfxPlatform singleton rather than static local variable. r=jfkthame
MozReview-Commit-ID: 5SU6ewm5wbd

--HG--
extra : rebase_source : f522172d3ca191ba33c222c497e91bb718fda23e
2016-07-05 11:02:24 +10:00
Timothy Nikkel
2b21f8f65d Bug 1277123. Only clear the containing block clip when entering an out of flow with an unknown clip. r=mattwoodrow
The content clip is still valid, as we are only descending into content descendants.

The clip for content descendants that the root scroll frame creates so content doesn't overflow (visually or for event handling) the main scrollbar can get cleared otherwise.
2016-07-06 16:55:17 -05:00
Carsten "Tomcat" Book
1bb9877c16 Backed out changeset 3de5b79d7373 (bug 1241932) for bustage 2016-07-06 06:00:03 +02:00
Carsten "Tomcat" Book
2de695aebf Backed out changeset e98d1ac584d6 (bug 1241932) 2016-07-06 05:59:52 +02:00
Brad Werth
1656f9d629 Bug 1241932 - Expose decoded CSS grid line properties via a Chrome API. r=mats 2016-07-05 13:35:52 -07:00
Brad Werth
dd6149d032 Bug 1241932 - Expose decoded CSS grid track properties in a Chrome API. r=heycam, r=khuey 2016-06-24 12:20:05 -07:00
Kaku Kuo
d1a8ed1358 Bug 1282710 - part 2 - Plumb the visibility event from nsIFrame to nsIDOMMediaElemnt; r=seth
MozReview-Commit-ID: DnlTghYdrug

--HG--
extra : transplant_source : N%9D%E9%7F2%14%92%A4%03%5E%801%2Bh%2C%BD%0F%20%98%0D
2016-06-29 17:36:24 +08:00
Gregory Szorc
a7c8e9f3cc Merge autoland into mozilla-central; a=merge
--HG--
extra : amend_source : 8ffaee5cda76b1923f7ef1f5724473c8ed94fda3
2016-07-04 09:01:56 -07:00
Carsten "Tomcat" Book
fcff88e7a8 Merge mozilla-central to autoland 2016-07-01 11:20:25 +02:00
Matt Woodrow
4f7d3bf72f Bug 1269321: Part 3 - Create a wrapper layer for masking when we can't support it on the normal layer. r=thinker
--HG--
extra : rebase_source : 2ad8ec40082c3cea7b811190a91b0324a4b0d8a2
2016-06-30 18:10:25 +02:00
Xidorn Quan
8bb94fa4a4 Bug 1141895 part 2 - Use unprefixed unicode-bidi values in internal code. r=jfkthame
MozReview-Commit-ID: 1o2NEe8eiSX

--HG--
extra : rebase_source : b09e931fc8e318ceda224fe9c02dd7931c75f8ed
2016-06-30 16:25:31 +10:00
Stone Shih
0b7ae24e93 Bug 1260704 - Instead of handling mouse up event, we handle mouse click event to trigger links. r=smaug
--HG--
extra : rebase_source : c6d0b5d066ad9fae37c6c2d4b1d72d404966009f
2016-05-16 15:45:43 +08:00
Carsten "Tomcat" Book
3a42c363cc merge mozilla-inbound to mozilla-central a=merge 2016-06-30 12:33:41 +02:00
Kartikaya Gupta
63a50e8725 Bug 1253683 - Don't layerize scrollframes which are overflow:scroll but not actually scrollable. r=tnikkel
MozReview-Commit-ID: 6DUE3PB2hLI

--HG--
extra : rebase_source : 2e9aa59f5545a14ec70dcb6b7fbaf97bcce5dd0b
2016-06-29 14:29:40 -04:00
Carsten "Tomcat" Book
13ce7275a3 Merge mozilla-central to autoland 2016-06-29 16:22:44 +02:00
Xidorn Quan
c353935ab6 Bug 1160847 part 3 - Restore virtual bidi control characters for reordering. r=jfkthame
This patch mainly consists of two parts, one for resolving and the other
for reordering.

In the resolving part, the added code stores the lowest embedding level
of all bidi formatting characters precede a frame to the bidi data of
that frame when necessary.

In the reordering part, virtual frame is restored from the information
stored above before asking the bidi engine to reorder frames

Collapsing a run of continuous virtual formatting characters into one
virtual character with the lowest embedding level among them should work
because a character with a higher embedding level than either of its
neighbors should not affect the reordering result of any other part of
the sequence. (No formal proof of this theorem, though)

MozReview-Commit-ID: LQjRu0mWsZP

--HG--
extra : source : 5d0cf1cbd270e9963d848a23b37528ed503ed6a0
2016-06-29 17:47:18 +10:00
Xidorn Quan
90c5357c7f Bug 1160847 part 2 - Add glue to nsBidiPresUtils to use support for bidi isolate in nsBidi. r=jfkthame
This patch is mainly based on smontagu's wip patch. Some non-trivial differences:

* BidiParagraphData.mIsolateCount and related code are not added in this patch.
  I investigated uses of this field in the wip patch, and it seems to me none of
  them makes sense:
  1. in the fast path of nsBidiPresUtils::ResolveParagraph, if there would be
     any isolate character in the surrounding text, there must exist more than
     one runs, which indicates the isolate count condition is redundant.
  2. in handle of br frame in nsBidiPresUtils::TraverseFrames, based on my
     understanding of "CSS Writing Modes Level 3" section "2.4.4. Paragraph
     Breaks Within Embeddings and Isolates", the resolving should happen
     unconditionally.

* {control,override}Char in nsBidiPresUtils::TraverseFrames are assigned
  unconditionally when in a bidi inline container, so that we can properly
  handle it when there are continuations. I suspect this was the reason of
  regressions in dynamic reftests from the wip patch mentioned in comment 1.

MozReview-Commit-ID: LUdBAapA48e

--HG--
extra : source : 28fa56b841de689691375e8e2d5e56014921b48e
2016-06-29 17:47:00 +10:00
Ting-Yu Lin
8c5af6b331 Bug 1282029 Part 2 - Update comments. r=dbaron
MozReview-Commit-ID: AB01qG99GeH

--HG--
extra : rebase_source : 333e0c02f9b6ef6daadd841cf4be2e35e72158c3
2016-06-24 17:47:33 +08:00
Ting-Yu Lin
b1101f8897 Bug 1282029 Part 1 - Remove superfluous access modifiers. r=dbaron
MozReview-Commit-ID: 5HRNtYECUjU

--HG--
extra : rebase_source : d0cc30bcd72168d1da345dcb72e9f41876977755
2016-06-24 17:47:32 +08:00
Brad Werth
bb6b3396a0 Bug 1243559 - Removes static casts from calls to FrameProperties::Get, ::Set, and ::Remove, and forces callers to use the type associated with the property. r=dbaron 2016-06-21 13:17:11 -07:00
Ray Lin
e1b4b9465e Bug 985915 - Vertically move up closed caption to not overlap control bar. r=rillian
MozReview-Commit-ID: HzJ3ppbmQnk

--HG--
extra : rebase_source : dda5febc3c799c375e4dbe39cf52f96504740b55
2016-06-27 11:22:15 +08:00
Stone Shih
f3651866bf Bug 1261673: Handle wheel event when mouse cursor is hovered on a focused number input as increasing/decreasing it's value. r=smaug 2016-05-06 18:39:10 +08:00
Xidorn Quan
677cf917fd Bug 1275059 - Crashtest for this bug. DONTBUILD
MozReview-Commit-ID: FrJS2Y4ChGH

--HG--
extra : source : f9075e29d12b3f07a740320537c0a3b008fd8dbf
2016-07-04 13:36:08 +10:00
Matt Woodrow
b4b0f124bf Bug 1283827 - Flatten transform-style:preserve-3d when combined with opacity. r=dbaron
This matches the behaviour required by the latest editor's draft spec and matches what blink is planning on shipping soon.
It may not be an entirely web compatible change, but we expect only a small number of websites to be affected. See
the bug for more details.
2016-07-02 14:47:12 +02:00
Xidorn Quan
5c09ece8ab Bug 1281457 - Compute justification spacing eagerly in SetupJustificationSpacing. r=jfkthame
Before this change, SetupJustificationSpacing calls ComputeJustification
to compute how justification gaps are assigned to characters, and store
them in the PropertyProvider instance. When GetSpacing is called, those
information would be used to compute actual spacings from justification
before/after each character.

The bug is that, GetSpacing did not take gaps before the given range
into account when computing the spacing, which leads to unstable results
when range varies because of ignorance of accumulated error.

This patch changes it to eagerly computing the actual spacings inside
SetupJustificationSpacing, so that GetSpacing just queries the result
from mJustificationSpacings.

MozReview-Commit-ID: HoWqeOhD85w

--HG--
extra : source : 3838277a3883b6958293cb043bd14d8462bf4e8e
2016-06-28 10:26:47 +10:00
Makoto Kato
fb90c3584f Bug 1203871 - Part 1. Add nsIFrame::GetCharacterRectsInRange. r=jfkthame
Masayuki suggests GetCharcterRectsInRange instead of first idea's API by part 2 implementation.

IME wants to need the width per character.  Now nsTextFrame/nsIFrmae has only API to get point of string.  So I want to add this method to calculate simply by comment #3.

If no text frame,  I would like to return error due to no character.  (Caller shouldn't call this API on non-text frame.)

MozReview-Commit-ID: LQHUTzhnGn

--HG--
extra : rebase_source : bc495493c7be73afb05489ad2169e8dcdd6e6da4
extra : histedit_source : e54a7c3bfb100765317a0c8a83b432d5f706ffe1
2016-06-23 12:02:14 +01:00
Geoff Brown
1757b081e2 Bug 1263300 - Skip crashtest 724978.xhtml on Android Debug only; r=dholbert 2016-06-28 20:41:32 -06:00
Jonathan Kew
48c59f0c3d Bug 1282248 - Declare a bunch of gfxTextRun measurement/drawing methods and related helpers as const. r=m_kato 2016-06-27 17:41:55 +01:00
Phil Ringnalda
28ae5ce216 Back out changeset 0bb00282a4c2 (bug 1243559) for widespread SVG assertion failures
CLOSED TREE
2016-06-22 18:45:08 -07:00
Brad Werth
179aa18d0d Bug 1243559 - Removes static casts from calls to FrameProperties::Get, ::Set, and ::Remove, and forces callers to use the type associated with the property. r=dbaron
--HG--
extra : rebase_source : fd19554f1611f8028a364ce93e833d8939688bfb
2016-06-21 13:17:11 -07:00
Xidorn Quan
05dcd227c5 Bug 1281099 part 2 - Merge three bidi frame properties into one. r=jfkthame
MozReview-Commit-ID: CEJhM3c21KO

--HG--
extra : rebase_source : 9e21c098692429ad3b35b2230887faf85c967ce8
2016-06-21 17:53:10 +10:00
Xidorn Quan
c81ed5494f Bug 1281099 part 1 - Convert some macros to functions to help later change. r=jfkthame
MozReview-Commit-ID: 2OS5eIsNAYN

--HG--
extra : rebase_source : 345e33f986aa950eb122c1cc7451c7a59a8f84cb
2016-06-21 17:21:09 +10:00
Jesse Ruderman
7316c2f255 Bug 757413 - crashtest. 2016-06-21 13:23:29 +02:00
Mats Palmgren
5198fc4629 Bug 757413 - crashtest. 2016-06-21 13:23:28 +02:00
Abhishek Arya
2cc1b42a0f Bug 876155 - crashtest. 2016-06-21 13:23:28 +02:00
Masayuki Nakano
13d4f396fe Bug 1185307 part.2 Replace upcast from nsISelection to mozilla::dom::Selection with nsISelection::AsSelection() r=smaug
MozReview-Commit-ID: Gs3oiAgJFG9

--HG--
extra : rebase_source : a136405d99ff3361a595157986b3a33026bcd5f5
2016-06-17 22:32:49 +09:00
Masayuki Nakano
7b7ebc96f8 Bug 1185307 part.1 Add nsISelection::AsSelection() r=smaug
This patch adds nsISelection::AsSelection() for safer "upcast".

MozReview-Commit-ID: LlxoMaU0oE

--HG--
extra : rebase_source : 8b2fce25888bb256970ea1cb741a9f6fbe6dc542
2016-06-17 16:16:10 +09:00
Xidorn Quan
c9fe7c3435 Bug 1186892 - Handle url strikeout separately from IME selection types. r=jfkthame
MozReview-Commit-ID: CVwoKiMOHj9

--HG--
extra : source : d3aa2bc573dd575f12a1e585792cfaf37a7f5659
2016-06-21 08:19:21 +10:00
Mats Palmgren
583415c203 Bug 1174569 - [css-grid] Use the resolved column sizes to guide intrinsic row sizing. r=dholbert 2016-06-20 13:28:03 +02:00
Ting-Yu Lin
a178b8185c Bug 1280647 - Rename nsStyleDisplay member mFloats to mFloat. r=dholbert
Also rename mOriginalFloats to mOriginalFloat.

MozReview-Commit-ID: COfmU34CtJU

--HG--
extra : rebase_source : 5b203dd9f0161f353a4a0b95003afe4af1d1480e
2016-06-18 22:16:20 +01:00
Kyle Zentner
b0138383bd Bug 1166728 - Remove support for "box-sizing: padding-box", per CSS WG resolution. r=dholbert r=mats
MozReview-Commit-ID: JClqoCUrm11
2016-06-18 23:03:30 +01:00
Astley Chen
188c2c3e1a Bug 1277131 : Part 4 - rename -moz-table-outer to -moz-table-wrapper. r=heycam
MozReview-Commit-ID: CsalRdLLcbJ

--HG--
extra : rebase_source : 64c55289f599932b81058935b7896dbcb33ba557
2016-06-16 13:35:54 +01:00
Astley Chen
5bcbb06586 Bug 1277131 : Part 3 - rename nsGkAtoms::tableOuterFrame and nsCSSAnonBoxes::tableOuter. r=heycam
MozReview-Commit-ID: 7GIjtUH9hdZ

--HG--
extra : rebase_source : 818cead88e560effa402e183b4a642fd1a7b9191
2016-06-16 13:35:43 +01:00
Astley Chen
4caee4596d Bug 1277131 : Part 2 - rename nsMathMLmtableOuterFrame to nsMathMLmtableWrapperFrame. r=heycam
MozReview-Commit-ID: EylH72aitOj

--HG--
extra : rebase_source : 4261f2f2f4fef4cf3aaf99bcadb6dfeff9dcbad4
2016-06-16 13:14:50 +01:00
Astley Chen
1fcb0ee95d Bug 1277131 : Part 1 - rename nsTableOuterFrame to nsTableWrapperFrame. r=heycam
MozReview-Commit-ID: KrSHLbmovTM

--HG--
rename : layout/tables/nsTableOuterFrame.cpp => layout/tables/nsTableWrapperFrame.cpp
rename : layout/tables/nsTableOuterFrame.h => layout/tables/nsTableWrapperFrame.h
extra : rebase_source : 730a73b8439f1f5c5ccdb32b241deda5224c321c
2016-06-16 13:14:08 +01:00
Kartikaya Gupta
e71c0859af Bug 1247050 - Avoid tripping an NS_ASSERTION that can legitimately fire. r=mstange
MozReview-Commit-ID: JpfBWiP3BeL

--HG--
extra : rebase_source : b571adf4124cc81fbc1833b55d61ad214f21b1d8
2016-06-15 01:27:21 +01:00
Jonathan Hao
a1a0a9bd7d Bug 1280006 - Backout "Bug 1270680 - Part 1: Double-key the image cache by origin attribute." r=tanvi
This reverts commit bb0482fe09fbfad9be89384ec5cb8b6518187379.
2016-06-14 12:43:21 +01:00
Masayuki Nakano
9fdc31aea3 Bug 1278014 part.14 Rename SelectionType::SELECTION_URLSTRIKEOUT to SelectionType::eURLStrikeout r=smaug
MozReview-Commit-ID: 7AqeDbHxGE2

--HG--
extra : rebase_source : 2dada2c98e1186aa7f5699b8d11033eae50ba2c6
2016-06-09 20:58:56 +09:00
Masayuki Nakano
a0eb51f54d Bug 1278014 part.13 Rename SelectionType::SELECTION_URLSECONDARY to SelectionType::eURLSecondary r=smaug
MozReview-Commit-ID: C2IW7nqjEkD

--HG--
extra : rebase_source : a64cd80650fe51dbc5586511ad8c3287a0ec3225
2016-06-09 20:47:48 +09:00
Masayuki Nakano
ebf3bc1862 Bug 1278014 part.12 Rename SelectionType::SELECTION_FIND to SelectionType::eFind r=smaug
MozReview-Commit-ID: BZxBnCDBghi

--HG--
extra : rebase_source : 099d1043c7e69f3c49a2d4e34190cbd7c4532107
2016-06-09 20:35:20 +09:00
Masayuki Nakano
61a6a5f987 Bug 1278014 part.11 Rename SelectionType::SELECTION_ACCESSIBILITY to SelectionType::eAccessibility r=smaug
MozReview-Commit-ID: 2nU4KQB5S7N

--HG--
extra : rebase_source : 8bb098b292fa92833e86fd65be62819844e0829e
2016-06-09 20:32:36 +09:00
Masayuki Nakano
10f047dba5 Bug 1278014 part.10 Rename SelectionType::SELECTION_IME_SELECTEDCONVERTEDTEXT to SelectionType::eIMESelectedClause r=smaug
MozReview-Commit-ID: 8v3mqcYorOI

--HG--
extra : rebase_source : a6823273c161eabbfa9e49e689154e547c14a106
2016-06-09 19:29:29 +09:00
Masayuki Nakano
aa3d2a6ce9 Bug 1278014 part.9 Rename SelectionType::SELECTION_IME_CONVERTEDTEXT to SelectionType::eIMEConvertedClause r=smaug
MozReview-Commit-ID: 5UNqhB2ZEcZ

--HG--
extra : rebase_source : 74d41ddf5496bdc50306bf916251df4f8d65a65b
2016-06-09 19:14:17 +09:00
Masayuki Nakano
ff86f10a4c Bug 1278014 part.8 Rename SelectionType::SELECTION_IME_SELECTEDRAWTEXT to SelectionType::eIMESelectedRawClause r=smaug
MozReview-Commit-ID: DgprOxg87K6

--HG--
extra : rebase_source : 2f655353845292c4e8028f6e43f0dbbbfea11b68
2016-06-09 19:03:40 +09:00