Commit Graph

69425 Commits

Author SHA1 Message Date
Hiroyuki Ikezoe
c9de23aa09 Bug 1562757 - Call ScrollToVisual for the pres shell of the given scrollable frame in ScrollToShowRect. r=botond
We should also check IsRootContentDocumentCrossProcess instead of
IsRootContentDocument there, it will be fixed in bug 1562505.

The test case in this commit is almost copied-n-pasted from
helper_scroll_into_view_bug1516056.html.

Differential Revision: https://phabricator.services.mozilla.com/D36556

--HG--
extra : moz-landing-system : lando
2019-07-04 08:48:47 +00:00
Jeff Muizelaar
e4c1e944b8 Bug 1563359. Add a test for clipping and stroking text. r=mstange
Differential Revision: https://phabricator.services.mozilla.com/D36825

--HG--
extra : moz-landing-system : lando
2019-07-03 19:49:05 +00:00
Ting-Yu Lin
f704cd46d3 Bug 1563370 - Eliminate GetPrevInFlowVirtual() and GetNextInFlowVirtual(). r=dholbert
Differential Revision: https://phabricator.services.mozilla.com/D36829

--HG--
extra : moz-landing-system : lando
2019-07-03 21:37:14 +00:00
Makoto Kato
8b306f551d Bug 1556103 - Part 1. Add long press action when setting focus. r=masayuki
Actually, long tap can set focus.  But since it uses `nsIFocusManager::FLAG_BYMOUSE` flag, we cannot recognize whether setting focus is by long tap or not.

So I would like to add new flag `FLAG_BYLONGPRESS` and `CAUSE_LONGPRESS` that are by long tap.

Differential Revision: https://phabricator.services.mozilla.com/D35991

--HG--
extra : moz-landing-system : lando
2019-06-28 00:39:45 +00:00
Charlie Marlow
eb50d28bc0 Bug 1559493: Fixed origin from which text-underline-offset is set in vertical writing modes r=jfkthame
Differential Revision: https://phabricator.services.mozilla.com/D36219

--HG--
extra : moz-landing-system : lando
2019-07-03 21:23:38 +00:00
L. David Baron
bb277e6cb2 Bug 1474771 - Revert all changes from bug 1459937 since they are no longer needed. r=dholbert
(The single line that made them active was commented out in the previous patch.)

Differential Revision: https://phabricator.services.mozilla.com/D36425

--HG--
extra : moz-landing-system : lando
2019-07-01 21:58:35 +00:00
Gerald Squelart
2f31b3fef4 Bug 1474771 - Propagate NS_FRAME_IS_DIRTY to descendants when marking as dirty rather than during reflow. r=dholbert
This simplifies dealing with frames that are pushed/pulled between
continuations during reflow, allows us to avoid the complexity of the
fix to 1459937, and hopefully fixes some of the regressions from bug
1308876.

This disables the changes from bug 1459937 by commenting out a single
line in ReparentFrameInternal in nsBlockFrame.cpp, but all the added
code will be removed in the following patch.

Co-authored-by: Gerald Squelart <gsquelart@mozilla.com>
Co-authored-by: L. David Baron <dbaron@dbaron.org>

Depends on D36423

Differential Revision: https://phabricator.services.mozilla.com/D36424

--HG--
extra : moz-landing-system : lando
2019-07-01 21:56:43 +00:00
Dzmitry Malyshau
a29869406b Bug 1546818 - WR text local transform fix r=gw
Change the glyph transform computation to be relative to the surface node.

Differential Revision: https://phabricator.services.mozilla.com/D36603

--HG--
extra : moz-landing-system : lando
2019-07-03 18:59:42 +00:00
Mirko Brodesser
6b67de025f Bug 1562876: rename Selection::RemoveRange to Selection::RemoveRangeAndUnselectFramesAndNotifyListeners. r=smaug
The name of the corresponding webidl interface of course remains unchanged.

Differential Revision: https://phabricator.services.mozilla.com/D36607
2019-07-03 13:26:14 +02:00
Mirko Brodesser
63b4627d28 Bug 1562876: rename Selection::AddRange to Selection::AddRangeAndSelectFramesAndNotifyListeners. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D36602
2019-07-03 13:26:13 +02:00
Daniel Holbert
b459034009 Bug 1562312: Implement 'contain:size' for <select multiple> elements. r=TYLin
Differential Revision: https://phabricator.services.mozilla.com/D36418

--HG--
rename : layout/reftests/w3c-css/submitted/contain/contain-size-select-elem-001-ref.html => layout/reftests/w3c-css/submitted/contain/contain-size-select-elem-003-ref.html
rename : layout/reftests/w3c-css/submitted/contain/contain-size-select-elem-001.html => layout/reftests/w3c-css/submitted/contain/contain-size-select-elem-003.html
rename : layout/reftests/w3c-css/submitted/contain/contain-size-select-elem-002-ref.html => layout/reftests/w3c-css/submitted/contain/contain-size-select-elem-004-ref.html
rename : layout/reftests/w3c-css/submitted/contain/contain-size-select-elem-002.html => layout/reftests/w3c-css/submitted/contain/contain-size-select-elem-004.html
extra : moz-landing-system : lando
2019-07-02 18:40:17 +00:00
Emilio Cobos Álvarez
eadf6ea400 Bug 1562787 - Improve style struct size assertion messages. r=boris
This will display something like:

```
error: static_assert failed due to requirement '528UL <= 504UL' "Style struct became larger than the size limit"
static_assert(Actual <= Limit, "Style struct became larger than the size limit");
^             ~~~~~~~~~~~~~~~
note: in instantiation of template class 'AssertSizeIsLessThan<nsStylePosition, 528, 504>' requested here
STYLE_STRUCT_RESET(Position)
^
note: expanded from macro 'STYLE_STRUCT_RESET'
		     ^
note: expanded from macro 'STYLE_STRUCT'
static_assert(AssertSizeIsLessThan<nsStyle##name_, sizeof(nsStyle##name_), kStyleStructSizeLimit>::instantiate, "");
```

Which includes both the size, the limit, and the struct name, as opposed to the
current:

```
error: static_assert failed due to requirement 'sizeof(nsStylePosition) <= kStyleStructSizeLimit' "nsStylePosition became larger than the size limit"
STYLE_STRUCT_RESET(Position)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~
note: expanded from macro 'STYLE_STRUCT_RESET'
		     ^~~~~~~~~~~~~~~~~~
note: expanded from macro 'STYLE_STRUCT'
static_assert(sizeof(nsStyle##name_) <= kStyleStructSizeLimit, \
```

Which only includes the name and thus isn't very useful.

Differential Revision: https://phabricator.services.mozilla.com/D36546

--HG--
extra : moz-landing-system : lando
2019-07-02 18:14:19 +00:00
Sean Feng
7b15bc44ad Bug 1560328 - Add a crashtest for Bug 1560328 r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D36621

--HG--
extra : moz-landing-system : lando
2019-07-02 18:37:45 +00:00
Mihai Alexandru Michis
761fb3a596 Backed out changeset c68a6b2e0157 (bug 1557371) for causing failures in reftest/content/bugs/272646-1.xul CLOSED TREE 2019-07-02 06:01:31 +03:00
Cameron McCormack
d62802d69d Bug 1562361 - Clear cached style indices whenever we clear the actual styles. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D36450

--HG--
extra : moz-landing-system : lando
2019-07-02 00:15:45 +00:00
Cameron McCormack
336cad5a55 Bug 1553705 - Make GenerateStateKey() infallible. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D32258

--HG--
extra : moz-landing-system : lando
2019-07-01 07:20:04 +00:00
Brendan Dahl
c5fbaae97e Bug 1557371 - Part 1 - Load all XUL reftests with chrome privilege. r=dbaron
This will have two benefits:

1) Align test setup with shipping Firefox - We don't allow content
privilege XUL in shipping versions of Firefox, so having the tests be
chrome would be more realistic to our use case.

2) Support the XUL to XHTML migration. These files will soon become XHTML
files, but will still need to load XUL elements, so they'll need to be
marked as chrome privileged to continue working.

One test (404149-1.xul) is now disabled, since it fails when loaded as
chrome. Bug 1557383 was filed to address this.

Differential Revision: https://phabricator.services.mozilla.com/D33986

--HG--
extra : moz-landing-system : lando
2019-06-29 00:04:12 +00:00
Ryan Hunt
7975d096de Bug 1561002 - Use buildingRect for remote browser clipping when we don't have anything more precise. r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D35677

--HG--
extra : moz-landing-system : lando
2019-06-26 02:50:36 +00:00
Kartikaya Gupta
45dff4d7bb Bug 1554985 - Prevent the WebRenderUserData on the render root item from getting discarded prematurely. r=jrmuizel
With retained display lists, a content render root might get marked as not
needing a build, in which case the nsDisplayRenderRoot::CreateWRCommands
function does an early exit. In this case, we don't mark the associated
WebRenderUserData as used during the display list build, which causes it to
get deleted at the end of the transaction. The next transaction that
doesn't early-exit will re-create the WebRenderUserData with a new boundary
object. The compositor therefore thinks it's a brand new thing and, if
conditions are right, could end up destroying and re-creating much of the
APZC tree. That in turn can have effects like discarding paint-skipped
scrolling.

This patch ensures we always touch the WebRenderUserData during the display
list build, so we don't discard it. This problem may still affect nested
nsDisplayRenderRoot instances but I don't think we ever cases where those
occur.

Depends on D36386

Differential Revision: https://phabricator.services.mozilla.com/D36387

--HG--
extra : moz-landing-system : lando
2019-07-01 01:23:03 +00:00
Kartikaya Gupta
e1bbcf0b32 Bug 1554985 - Invert condition to reduce indentation. r=jrmuizel
No functional changes here.

Differential Revision: https://phabricator.services.mozilla.com/D36385

--HG--
extra : moz-landing-system : lando
2019-06-30 01:36:54 +00:00
Csoregi Natalia
4173161363 Merge mozilla-central to autoland. CLOSED TREE 2019-06-29 13:02:56 +03:00
Csoregi Natalia
29f8e6aebd Merge inbound to mozilla-central. a=merge 2019-06-29 12:59:53 +03:00
Kartikaya Gupta
32b53ae115 Bug 1558598 - Force WebRender on or off in the reftest harness. r=ahal
Covers both local and remote reftests.

Differential Revision: https://phabricator.services.mozilla.com/D35855

--HG--
extra : moz-landing-system : lando
2019-06-29 09:48:45 +00:00
Kagami Sascha Rosylight
29904ec6bf Bug 1454622: Remove DOMQuad bounds attribute r=bzbarsky
The bounds attribute has been deprecated and shown zero use, and thus this change removes it.

Differential Revision: https://phabricator.services.mozilla.com/D36005

--HG--
extra : moz-landing-system : lando
2019-06-29 02:27:47 +00:00
Narcis Beleuzu
cc10ed7ce5 Backed out 2 changesets (bug 1553705) for causing Bug1562142 . CLOSED TREE
Backed out changeset fbb26a04ec1f (bug 1553705)
Backed out changeset dd6e7c0970d5 (bug 1553705)
2019-06-29 02:39:01 +03:00
Ting-Yu Lin
c5048ca650 Bug 1562122 Part 4 - Return early in the overflow incomplete case, and add an assertion for the bound of final block size. r=dholbert
Differential Revision: https://phabricator.services.mozilla.com/D36291

--HG--
extra : moz-landing-system : lando
2019-06-28 21:21:15 +00:00
Ting-Yu Lin
1524471e5a Bug 1562122 Part 3 - Delete the duplicate logic computing the final block size. r=dholbert
After the deleted logic

```
aFinalSize.BSize(wm) =
    std::max(aReflowInput.AvailableBSize(), aContentBSize);
```

aStatus changes to incomplete, so it computes the same thing again.

Differential Revision: https://phabricator.services.mozilla.com/D36290

--HG--
extra : moz-landing-system : lando
2019-06-28 21:21:06 +00:00
Ting-Yu Lin
a57bb370a3 Bug 1562122 Part 2 - Replace effectiveComputedBSize with computedBSizeLeftOver. r=dholbert
No need to call GetEffectiveComputedBSize() twice.

Also, calling aState.ConsumedBSize() instead of using
aState.mConsumedBSize directly because the accessor function caches
mConsumedBSize properly when it is called the first time.

Differential Revision: https://phabricator.services.mozilla.com/D36289

--HG--
extra : moz-landing-system : lando
2019-06-28 21:21:03 +00:00
Ting-Yu Lin
bf4acb9116 Bug 1562122 Part 1 - Move the logic after ComputeFinalBSize() into ComputeFinalBSize(). r=dholbert
This patch only moves the logic, and rename some variables. More
clean-up follows.

Note in the middle of ComputeFinalBSize(), ShouldAvoidBreakInside() can
do early return under the condition that aStatus is complete. The logic
moved in this patch is executed only when aStatus is *incomplete*, so no
behavior is changed after applying this change.

Differential Revision: https://phabricator.services.mozilla.com/D36288

--HG--
extra : moz-landing-system : lando
2019-06-28 21:20:54 +00:00
Hiroyuki Ikezoe
cc47e0d6ef Bug 1562105 - Bail out if the style frame for the scrollable frame is null in ScrollFrameHelper::IsSmoothScroll. r=botond
Differential Revision: https://phabricator.services.mozilla.com/D36303

--HG--
extra : moz-landing-system : lando
2019-06-28 16:45:54 +00:00
Daniel Holbert
2bfc73da09 Bug 1476127: Implement 'contain:size' for select elements. r=TYLin
Note that this is an imperfect implementation, in that it doesn't exactly
match the sizing behavior of a truly empty `<select>` element.  I've filed
followup bug 1562057 on that.  However, the behavior that's implemented
here *does* successfully make us ignore a `<select>`'s contents for sizing
purposes, and it's much better than what we do currently (which is pretty
broken via inheriting a partial `contain:size` implementation from our
parent class, nsBlockFrame).

Differential Revision: https://phabricator.services.mozilla.com/D36253

--HG--
extra : moz-landing-system : lando
2019-06-28 20:32:13 +00:00
Botond Ballo
666b9a0760 Bug 1561726 - Add an nsIContent overload of nsLayoutUtils::FindScrollableFrameFor. r=tnikkel
Differential Revision: https://phabricator.services.mozilla.com/D34256

--HG--
extra : moz-landing-system : lando
2019-06-28 20:22:37 +00:00
shindli
67c134b492 Merge mozilla-central to inbound. a=merge CLOSED TREE 2019-06-29 02:23:28 +03:00
Cosmin Sabou
798a05e2dc Merge mozilla-central to mozilla-inbound. 2019-06-28 19:16:36 +03:00
Emilio Cobos Álvarez
b1ca51fe1e Bug 1561738 - Remove nsStyleCoord. r=boris
And move the useful bits of it somewhere else (ServoStyleConstInlines.h for the
inline function definitions, and nsFrame.cpp for the static assertions).

Differential Revision: https://phabricator.services.mozilla.com/D36120
2019-06-28 12:44:44 +02:00
Emilio Cobos Álvarez
6dea92be38 Bug 1561738 - Stop using nsStyleSides for -moz-image-rect. r=boris
Differential Revision: https://phabricator.services.mozilla.com/D36119
2019-06-28 12:44:43 +02:00
Emilio Cobos Álvarez
0a4d4343b9 Bug 1561738 - Use cbindgen for grid track sizing. r=boris
Differential Revision: https://phabricator.services.mozilla.com/D36118
2019-06-28 12:44:43 +02:00
Cosmin Sabou
2fa2a56685 Backed out 3 changesets (bug 1561738) for causing build bustages on nsGridContainerFrame.cpp CLOSED TREE
Backed out changeset 98f100abc2ba (bug 1561738)
Backed out changeset 9ed20d0fb9ba (bug 1561738)
Backed out changeset 483b1e134ace (bug 1561738)
2019-06-28 13:27:09 +03:00
Emilio Cobos Álvarez
141cad6847 Bug 1519958 - Drive by, remove unused CSS keywords. r=boris
While we're at it we may as well do this.

Differential Revision: https://phabricator.services.mozilla.com/D36350
2019-06-28 21:15:01 +02:00
Emilio Cobos Álvarez
bb56a14ed1 Bug 1562269 - Serialize grid-auto-rows / grid-auto-columns with Servo. r=boris
Two less properties, now that we're not using nsStyleCoord for them we can do
this.

Unfortunately the grid resolved value code needs to serialize it still, so this
doesn't remove as much code.

Also fix the script since the generated file was renamed.

Differential Revision: https://phabricator.services.mozilla.com/D36349
2019-06-28 21:14:56 +02:00
Geoff Brown
945ee0068f Bug 1556058 - Update test expectations for Android 7.0 reftests; r=kats
These changes are needed for consistently green runs with the new emulator with
"-gpu on".
Most changes are simple removal of fuzzy-if(geckoview) but I also needed to add
at least one new fuzzy-if.
In this configuration we can run reftests in just 2 chunks (20 minutes each on
opt/30 minutes on debug).

Differential Revision: https://phabricator.services.mozilla.com/D36258

--HG--
extra : moz-landing-system : lando
2019-06-28 17:30:48 +00:00
Masatoshi Kimura
f0e5cca26d Bug 1558750 - Use nsIConverterOutputStream to handle non-Latin1 log output. r=jmaher
Differential Revision: https://phabricator.services.mozilla.com/D35149

--HG--
extra : moz-landing-system : lando
2019-06-24 13:52:37 +00:00
Emilio Cobos Álvarez
e023916761 Bug 1561738 - Remove nsStyleCoord. r=boris
And move the useful bits of it somewhere else (ServoStyleConstInlines.h for the
inline function definitions, and nsFrame.cpp for the static assertions).

Differential Revision: https://phabricator.services.mozilla.com/D36120

--HG--
extra : moz-landing-system : lando
2019-06-28 09:46:26 +00:00
Emilio Cobos Álvarez
02348421e4 Bug 1561738 - Stop using nsStyleSides for -moz-image-rect. r=boris
Differential Revision: https://phabricator.services.mozilla.com/D36119

--HG--
extra : moz-landing-system : lando
2019-06-28 09:46:17 +00:00
Emilio Cobos Álvarez
9d92ed9a07 Bug 1561738 - Use cbindgen for grid track sizing. r=boris
Differential Revision: https://phabricator.services.mozilla.com/D36118

--HG--
extra : moz-landing-system : lando
2019-06-28 09:46:02 +00:00
Masayuki Nakano
da61ea3112 Bug 1444847 - part 3: Create RangeUtils to place public static methods of nsRange r=smaug
Some `nsRange` static methods are useful in `StaticRange` and some of them
are used in a lot of places but not related to `nsRange` directly.  This
patch moves them into new static method only class, `mozilla::RangeUtils`.

Differential Revision: https://phabricator.services.mozilla.com/D35142

--HG--
extra : moz-landing-system : lando
2019-06-28 07:48:07 +00:00
Masayuki Nakano
2a450c5196 Bug 1444847 - part 2: Sort out basic API of nsRange for consistency with coming StaticRange r=smaug
For avoiding confusion between API of `nsRange` and `StaticRange`, I'd like to
rename `nsRange::CreateRange()` to `nsRange::Create()` because
`StaticRange::CreateStaticRange()` is too long name and
`StaticRange::CreateRange()` sounds odd.  This patch renames it and changes
related methods to template methods to avoid runtime cost of temporary
`RawRangeBoundary` instance creation.

Differential Revision: https://phabricator.services.mozilla.com/D35141

--HG--
extra : moz-landing-system : lando
2019-06-28 07:47:29 +00:00
Cameron McCormack
a13f950256 Bug 1561773 - Enable anonymous content style caching. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D36140

--HG--
extra : moz-landing-system : lando
2019-06-28 05:00:35 +00:00
Charlie Marlow
8d6b1bcaa4 Bug 1561131: Adding parsing support for text-decoration-skip-ink r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D35831

--HG--
extra : moz-landing-system : lando
2019-06-27 21:34:33 +00:00
Andreea Pavel
ea400c1438 Backed out changeset 21d365e43fec (bug 1561131) for failing test_bug1112014.html on a CLOSED TREE 2019-06-28 00:12:41 +03:00