Граф коммитов

20295 Коммитов

Автор SHA1 Сообщение Дата
L. David Baron 85d61d1a95 Bug 1571249 - Remove the IsTableCell() function. r=TYLin
It was made pointless by the previous patch.

This replaces callers that had a frame type for another reason with the
frame type check that IsTableCell did, and callers that needed to call
Type() with an IsTableCellFrame call.

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

--HG--
extra : moz-landing-system : lando
2019-08-08 19:48:12 +00:00
Nika Layzell 143941e2d4 Bug 1523638 - Part 9: Use provided 'WindowGlobalChild' actors to create the initial about:blank document, r=kmag
Differential Revision: https://phabricator.services.mozilla.com/D37656

--HG--
extra : moz-landing-system : lando
2019-08-08 16:07:12 +00:00
Kris Maglione 64c062d570 Bug 1570773: Move browsingContext getter to nsIDocShellTreeItem and add notxpcom variant. r=nika
This also renames the existing infallible nsDocShell:GetBrowsingContext()
getter to BrowsingContextRef(), and changes the return type, since several
callers rely on it returning a raw pointer rather than an already_AddRefed.

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

--HG--
extra : moz-landing-system : lando
2019-08-07 16:59:30 +00:00
Emilio Cobos Álvarez 5ab3251196 Bug 1528616 - Move PresShell::GetRectVisibility to nsTypeAheadFind.cpp. r=dholbert
nsTypeAheadFind.cpp contains all of the callsites to this function, so it seems like a logical place for it to live.

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

--HG--
extra : moz-landing-system : lando
2019-08-07 11:21:55 +00:00
Ting-Yu Lin 1e717d14b4 Bug 1569252 Part 2 - Let mHasColumnSpanSiblings propagate to all the continuations. r=dbaron
We want mHasColumnSpanSiblings to propagate to all the
continuations (both fixed ones or fluid ones) in nsFrame::Init() so that
we don't need to traverse all the way to FirstInFlow() for the bit in
nsBlockFrame::ComputeFinalBSize().

For the last ColumnSet or the last non-column-span wrapper, we'll need
to unset the bit for them manually after constructing them.

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

--HG--
extra : moz-landing-system : lando
2019-08-07 20:20:25 +00:00
Ting-Yu Lin 86d713320f Bug 1569252 Part 1 - Convert nsIFrame::HasColumnSpanSiblings() property into an nsIFrame bit. r=dbaron
Differential Revision: https://phabricator.services.mozilla.com/D40760

--HG--
extra : moz-landing-system : lando
2019-08-07 20:20:18 +00:00
Tom Schuster 0e913c22c4 Bug 1558915 - Use infallible nsIURI::SchemeIs in various places r=Ehsan
Differential Revision: https://phabricator.services.mozilla.com/D40677

--HG--
extra : moz-landing-system : lando
2019-08-07 19:49:40 +00:00
Edgar Chen 3d16032632 Bug 1572007 - Remove unused nsPresContext::IsTopLevelWindowInactive; r=smaug
It was introduced in bug 508482 and the consumer went away in bug 1424816.

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

--HG--
extra : moz-landing-system : lando
2019-08-07 09:54:16 +00:00
Cosmin Sabou c3430326e6 Backed out changeset ca88862d6b63 (bug 1558915) for causing build bustages on StartupCacheUtils. CLOSED TREE 2019-08-07 13:20:32 +03:00
Tom Schuster 8bc1f5ada8 Bug 1558915 - Use infallible nsIURI::SchemeIs in various places r=Ehsan
Differential Revision: https://phabricator.services.mozilla.com/D40677

--HG--
extra : moz-landing-system : lando
2019-08-07 09:36:56 +00:00
Razvan Maries eedbf1137f Backed out changeset b197ca57677a (bug 1558915) for build bustages. CLOSED TREE 2019-08-07 01:04:43 +03:00
Tom Schuster 03c7998ef2 Bug 1558915 - Use infallible nsIURI::SchemeIs in various places r=Ehsan
Differential Revision: https://phabricator.services.mozilla.com/D40677

--HG--
extra : moz-landing-system : lando
2019-08-06 20:19:41 +00:00
Nicholas Nethercote fcb4a59f7d Bug 1570212 - Convert layout.reflow.synthMouseMove to a static pref. r=heycam
Differential Revision: https://phabricator.services.mozilla.com/D40338

--HG--
extra : moz-landing-system : lando
2019-08-02 11:59:06 +00:00
Botond Ballo 1b22298440 Bug 1565512 - Ensure the RCD-RSF callback transform is applied for events targeting fixed content too. r=tnikkel
Differential Revision: https://phabricator.services.mozilla.com/D40535

--HG--
extra : moz-landing-system : lando
2019-08-03 16:16:56 +00:00
Eitan Isaacson 67c11960cc Bug 686400 - Delay accessible removal on frame reconstruction. r=Jamie,emilio
We naively remove and then recreate accessibles when their content's
frame is reconstructed. By delaying the removal until we are certain the
content does not have a new layout frame, we can cut down on redundant
recreations.

When reconstructed content is re-inserted we can check it and its
subtree for missing frames and prune those accessibles from the tree.

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

--HG--
extra : moz-landing-system : lando
2019-08-02 22:13:28 +00:00
Ting-Yu Lin 5afcc71944 Bug 1570726 Part 1 - Move frame state bits carrying from nsCSSFrameConstructor::CreateContinuingFrame() into nsFrame::Init(). r=dholbert
These frame state bits belong to the generic group, and there is
existing logic in nsFrame::Init() for carrying frame state bits. It's
better to consolidate them in one place.

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

--HG--
extra : moz-landing-system : lando
2019-08-02 17:27:56 +00:00
Boris Chiou b91b90c199 Bug 1559231 - Support offset-anchor. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D39432

--HG--
extra : moz-landing-system : lando
2019-08-02 20:12:38 +00:00
Brindusan Cristian 0b3e26149c Backed out 2 changesets (bug 1559231) for rusttests build bustages. CLOSED TREE
Backed out changeset d47d9f4bf9a9 (bug 1559231)
Backed out changeset 50f92d01c47a (bug 1559231)
2019-08-02 21:55:37 +03:00
Boris Chiou 9463547bb3 Bug 1559231 - Support offset-anchor. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D39432

--HG--
extra : moz-landing-system : lando
2019-08-02 00:43:11 +00:00
Emilio Cobos Álvarez cd0cc4ccd7 Bug 1570721 - Add a content viewer API to emulate color scheme. r=heycam
MANUAL PUSH: Reordering stacks is a pain (https://bugzilla.mozilla.org/show_bug.cgi?id=1481539)

Differential Revision: https://phabricator.services.mozilla.com/D40250
2019-08-02 15:18:41 +02:00
Emilio Cobos Álvarez 01044d2184 Bug 1570721 - Remove a bit of duplication in nsDocumentViewer.cpp. r=bzbarsky
Not happy with all these void pointer stuff, but I think this is slightly nicer
to read.

Also not happy with what clang-format has done to my code ;)

I've removed the comment about zoom because it's not clear to me it is still
relevant, but I've preserved the order because, should we have similar stuff
going on, it seems slightly better, and I'm moderately sure the rest of the
callers don't really care.

I think closures coerced to function pointers are nicer (I considered putting
this on a template or using std::function, maybe, this was less code specially
given some callers of EnumerateExternalResources may or may not be hot...),
but if you want me to keep stuff out of line, or move the whole thing to
std::function<> or templates let me know.

Differential Revision: https://phabricator.services.mozilla.com/D40249
2019-08-02 15:18:30 +02:00
Emilio Cobos Álvarez 0548a84746 Bug 1570721 - Add an API to nsPresContext to override the `prefers-color-scheme` value. r=heycam
Differential Revision: https://phabricator.services.mozilla.com/D40248
2019-08-02 15:18:27 +02:00
Emilio Cobos Álvarez d93f6419d8 Bug 1570721 - Move the overrides to a separate struct in nsPresContext. r=heycam
Just so that we can keep track of these together.

Differential Revision: https://phabricator.services.mozilla.com/D40247
2019-08-02 15:18:24 +02:00
Emilio Cobos Álvarez e288006e4e Bug 1570721 - Simplify emulated medium setup in nsPresContext. r=heycam
Differential Revision: https://phabricator.services.mozilla.com/D40246
2019-08-02 15:18:19 +02:00
Emilio Cobos Álvarez ef68a372a3 Bug 1570721 - Make nsDocumentViewer::CallChildren callbacks get an nsDocumentViewer rather than an nsIContentViewer. r=bzbarsky
It's the only implementation, and this will simplify future patches.

Differential Revision: https://phabricator.services.mozilla.com/D40279
2019-08-02 15:18:15 +02:00
Olli Pettay cb7e7c1dd1 Bug 1570797, Add a pref to control the time when certain tasks are deprioritized during page load, r=farre
Differential Revision: https://phabricator.services.mozilla.com/D40330

--HG--
extra : moz-landing-system : lando
2019-08-02 08:52:42 +00:00
Ting-Yu Lin b14d39764b Bug 1548100 Part 2 - Fix the block-size of the column-rule by consuming available block-size. r=dbaron
After enabling column-span, ColumnSet becomes an anonymous child under
ColumnSetWrapperFrame. It doesn't need to handle border and padding,
containment, and non-auto block-size. ColumnSet's final block-size is
simply the union of ::-moz-column-content frames' rects.

However, we should extend ColumnSet's block-size to consume the
available block-size if the ColumnSetWrapper's block-size is constrained
so that the column rules are drawn to the block-end edge of the multicol
container.

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

--HG--
rename : testing/web-platform/meta/css/css-multicol/multicol-breaking-000.html.ini => testing/web-platform/meta/css/css-multicol/multicol-rule-nested-balancing-001.html.ini
rename : testing/web-platform/meta/css/css-multicol/multicol-breaking-000.html.ini => testing/web-platform/meta/css/css-multicol/multicol-rule-nested-balancing-002.html.ini
rename : testing/web-platform/meta/css/css-multicol/multicol-breaking-000.html.ini => testing/web-platform/meta/css/css-multicol/multicol-span-all-rule-001.html.ini
extra : moz-landing-system : lando
2019-08-01 22:48:55 +00:00
Ciure Andrei 8a5a8ec27a Backed out 2 changesets (bug 1548100) for causing nsColumnSetFrame.cpp perma asertion failures CLOSED TREE
Backed out changeset a06a6a6e1c5e (bug 1548100)
Backed out changeset 03a11c109d07 (bug 1548100)
2019-08-02 00:44:55 +03:00
Ting-Yu Lin e65d961df7 Bug 1548100 Part 2 - Fix the block-size of the column-rule by consuming available block-size. r=dbaron
After enabling column-span, ColumnSet becomes an anonymous child under
ColumnSetWrapperFrame. It doesn't need to handle border and padding,
containment, and non-auto block-size. ColumnSet's final block-size is
simply the union of ::-moz-column-content frames' rects.

However, we should extend ColumnSet's block-size to consume the
available block-size if the ColumnSetWrapper's block-size is constrained
so that the column rules are drawn to the block-end edge of the multicol
container.

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

--HG--
rename : testing/web-platform/meta/css/css-multicol/multicol-breaking-000.html.ini => testing/web-platform/meta/css/css-multicol/multicol-rule-nested-balancing-001.html.ini
rename : testing/web-platform/meta/css/css-multicol/multicol-breaking-000.html.ini => testing/web-platform/meta/css/css-multicol/multicol-rule-nested-balancing-002.html.ini
rename : testing/web-platform/meta/css/css-multicol/multicol-breaking-000.html.ini => testing/web-platform/meta/css/css-multicol/multicol-span-all-rule-001.html.ini
extra : moz-landing-system : lando
2019-08-01 00:03:22 +00:00
Daniel Holbert 529478882f Bug 1569475: Adjust MobileViewportManager::ClampZoom to check for NaN zoom values and use 1.0 instead. r=botond
Also spam a NS_ERROR whenever this happens (in debug builds), so that we
know to fix the caller to avoid division by zero.

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

--HG--
extra : moz-landing-system : lando
2019-07-31 16:59:51 +00:00
Ting-Yu Lin 3fda302369 Bug 1506293 Part 2 - Fix the block-size distribution across column-span split. r=dbaron
In frame construction, a block can be split by column-spans into several
fragments and each of the fragments is chained together by non-fluid
continuations. Later in reflow, each fragment can create its own fluid
continuations due to reasons such as the constraint of its available
block-size.

The main idea of this patch is that we calculate the block's final
block-size by shrinkwrapping the children for every fragment except for
those fluid continuations after the final column-span. To do that, we
need to correctly tag each non-column-span-wrappers
nsIFrame::HasColumnSpanSiblings() except the last one.

We also need to modify nsSplittableFrame::ConsumedBSize() so that it
includes the block-size for both fluid and non-fluid continuations.

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

--HG--
extra : moz-landing-system : lando
2019-07-30 18:03:25 +00:00
Alex Catarineu 536fd2e65f Bug 1561322 - Allow spoofing strings in HTML forms r=baku,Pike
When privacy.spoof_english = 2, we should hide the user's
locale in content. So we use en-US default strings for HTML
form elements, such as a Submit button.

We also force GetLocalizedEllipsis() to always return the
ellipsis used by en-US.

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

--HG--
extra : moz-landing-system : lando
2019-07-24 13:22:22 +00:00
Emilio Cobos Álvarez e91be6b314 Bug 1568778 - Do suppress adjustments when switching an undisplayed element to be abspos. r=dholbert
One of the issues with the test-case in this bug is that the page consumes a ton
of CPU due to scroll anchor adjustments being triggered from scroll events,
which in turn cause other scroll events to fire.

This happens in Chrome as well (just scroll to the bottom of the test-case, and
do `addEventListener("scroll", () => console.log("scroll"))` on devtools. But I
think it's worth fixing. This patch fixes it and overall I think it's a slightly
better approach to suppress adjustments than what we're doing.

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

--HG--
extra : moz-landing-system : lando
2019-07-29 13:44:46 +00:00
Emilio Cobos Álvarez 79d6827e07 Bug 1456358 - Inhibit RecomputePosition when descendants depend on the out of flow position. r=dbaron
Differential Revision: https://phabricator.services.mozilla.com/D38194

--HG--
extra : moz-landing-system : lando
2019-07-29 13:43:29 +00:00
Timothy Nikkel 674fb7f25d Bug 1565922. When the document viewer loses it prescontext pointer we need to make sure that any potential subdocument display items get rebuilt. r=mattwoodrow
If the subdocument display item gets created when the subdocument doesn't have a root frame it'll be based on the subdocument frame in the parent document. This means that the prescontext pointer on the document viewer of the subdocument can go away without the subdocument display item getting any kind of invalidation. So we make sure the subdocument display item gets rebuilt if that happens. The reason the prescontext pointer is important is that is what nsSubDocumentFrame::GetSubdocumentPresShellForPainting uses (via nsDocShell::GetPresShell) to get the subdocument presshell. So it will fail to get a presshell and RetainedDisplayListBuilder::IncrementSubDocPresShellPaintCount will crash.

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

--HG--
extra : moz-landing-system : lando
2019-07-29 09:56:14 +00:00
Boris Chiou 5c36bd1e41 Bug 1568370 - Fix the alignment of offset-anchor with offset-path. r=jwatt
When we use SVG layout, and transform-box is fill-box, the current
implementation makes the object not align with offset-path because there
may be an offset (SVG x and y values) between the anchor point and offset-path.
We have to tweak the anchor point to fix the alignment.

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

--HG--
rename : testing/web-platform/tests/css/motion/offset-anchor-transform-box-fill-box.html => testing/web-platform/tests/css/motion/offset-anchor-transform-box-fill-box-001.html
rename : testing/web-platform/tests/css/motion/offset-anchor-transform-box-fill-box.html => testing/web-platform/tests/css/motion/offset-anchor-transform-box-fill-box-002.html
extra : moz-landing-system : lando
2019-07-27 16:18:53 +00:00
Daniel Holbert 12c9a1ee6c Bug 1568673 part 2: Add a few more assertions to validate that mobile viewport zoom factors are positive. r=botond
Differential Revision: https://phabricator.services.mozilla.com/D39244

--HG--
extra : moz-landing-system : lando
2019-07-26 23:38:18 +00:00
Daniel Holbert 45de18b006 Bug 1568673 part 1: Adjust MobileViewportManager::ComputeIntrinsicScale to prevent divide-by-zero and to allow for meaningful min/max clamping. r=botond
Differential Revision: https://phabricator.services.mozilla.com/D39577

--HG--
extra : moz-landing-system : lando
2019-07-27 00:11:20 +00:00
Emilio Cobos Álvarez b6589b23d2 Bug 1528616 - Back out changeset bf824987ef9f (bug 1528616) since it can clearly be hit. r=me
MANUAL PUSH: Backout of existing revision.
2019-07-26 21:26:23 +02:00
Kannan Vijayan 3fb6190ec6 Bug 1559414 - Rename unaudited pre-fission methods with SameProcess for future audit burndown. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D39378

--HG--
extra : moz-landing-system : lando
2019-07-26 16:48:31 +00:00
Nicholas Nethercote 18fae65f38 Bug 1563139 - Remove StaticPrefs.h. r=glandium
This requires replacing inclusions of it with inclusions of more specific prefs
files.

The exception is that StaticPrefsAll.h, which is equivalent to StaticPrefs.h,
and is used in `Codegen.py` because doing something smarter is tricky and
suitable for a follow-up. As a result, any change to StaticPrefList.yaml will
still trigger recompilation of all the generated DOM bindings files, but that's
still a big improvement over trigger recompilation of every file that uses
static prefs.

Most of the changes in this commit are very boring. The only changes that are
not boring are modules/libpref/*, Codegen.py, and ServoBindings.toml.

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

--HG--
extra : moz-landing-system : lando
2019-07-26 01:10:23 +00:00
L. David Baron 868643a218 Bug 1568501 - Invalidate FastLineIterator::mPrevFrame only when lines actually split. r=jfkthame
Differential Revision: https://phabricator.services.mozilla.com/D39267

--HG--
extra : moz-landing-system : lando
2019-07-25 21:31:21 +00:00
Ciure Andrei 77673dccee Merge mozilla-central to autoland. a=merge CLOSED TREE 2019-07-25 09:28:08 +03:00
Andreea Pavel e4263c00eb Merge mozilla-inbound to mozilla-central. a=merge 2019-07-25 08:59:39 +03:00
Daniel Varga 291822d4fb Backed out changeset 70404a86aea8 (bug 1568673) for gv-unit6 failure at org.mozilla.geckoview.test.MediaElementTest.webmFullscreenMedia 2019-07-25 05:15:58 +03:00
Dan Glastonbury 7041df5d0b Bug 1568107 - Collect nsRefreshDriver::Tick phase weighted telemetry. r=mattwoodrow,heycam
For a slow tick, where the processing time takes longer than 1/60th sec, record
telemetry for the percentage of that time spent in each sub-system processing
Events, Style), Reflow, Display and Paint.

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

--HG--
extra : moz-landing-system : lando
2019-07-25 01:31:41 +00:00
Daniel Holbert c3ae5a39a6 Bug 1568673: Add a few more assertions to validate that mobile viewport zoom factors are positive. r=botond
Differential Revision: https://phabricator.services.mozilla.com/D39244

--HG--
extra : moz-landing-system : lando
2019-07-25 00:14:43 +00:00
Emilio Cobos Álvarez eb7d8bffd8 Bug 1567237 - Only use scroll range to select scrollable frames to scroll to, don't use scrollbar visibility. r=tnikkel
This is what other browsers do, and it does make sense to me, it's useless to
try to scroll a frame with no scroll range in a given direction.

I think all callers of this function should be treated like this, so this is
more like a RFC / feedback request than a patch per se.

The wheel handling code already checks scroll range, so there's no difference of
behavior in that case, if I'm reading the code right.

There are a few other functions that check the result of
GetPerceivedScrollingDirections(), but I think if we change this we should
change this consistently.

I also think that if we do this we should rename the method to something like
GetAvailableScrollingDirections() or such.

Anyhow, wdyt? I should also add a test for this if we go with this.

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

--HG--
extra : moz-landing-system : lando
2019-07-24 22:33:57 +00:00
Coroiu Cristina 50837746c0 Backed out changeset 2fe42a3dda2c (bug 1567237) for causing leaks on a CLOSED TREE 2019-07-24 20:52:07 +03:00
Emilio Cobos Álvarez 06d6ff95a8 Bug 1567237 - Only use scroll range to select scrollable frames to scroll to, don't use scrollbar visibility. r=tnikkel
This is what other browsers do, and it does make sense to me, it's useless to
try to scroll a frame with no scroll range in a given direction.

I think all callers of this function should be treated like this, so this is
more like a RFC / feedback request than a patch per se.

The wheel handling code already checks scroll range, so there's no difference of
behavior in that case, if I'm reading the code right.

There are a few other functions that check the result of
GetPerceivedScrollingDirections(), but I think if we change this we should
change this consistently.

I also think that if we do this we should rename the method to something like
GetAvailableScrollingDirections() or such.

Anyhow, wdyt? I should also add a test for this if we go with this.

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

--HG--
extra : moz-landing-system : lando
2019-07-24 13:17:11 +00:00