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

15799 Коммитов

Автор SHA1 Сообщение Дата
Hiroyuki Ikezoe 359dd0e426 Bug 1520077 - Use the minimum scale size even if no overflow:hidden is specified. r=botond
There are two mochitests need to be changed.  Both of contents have very large
element (5000px, 5000px), to avoid expanding the layout viewport to the large
size we restrict the minimum scale to 1.0 so that we can still check the layout
scroll range.

Also with this minimum scale size usage change, no-zoom-ref.html doesn't render
the horizontal scrollbar on _desktops_ for some reasons (presumably
reftest-async-zoom affects it, and possibly the reasons are the same as bug
1385145 or bug 1269739).  Instead of fixing the issue on desktops, I am going to
take a workaround to add explicit minimum-scale value here, it somehow renders
the scrollbar on desktops too.

Note that the reftest added in this commit fails without this fix.

Depends on D18041

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

--HG--
extra : moz-landing-system : lando
2019-01-31 03:21:22 +00:00
Ryan Hunt 585289697d Bug 1521579 - Only transform one bounding rect for text nodes when computing scroll anchoring bounding rect. r=dholbert
When visiting a text frame with many continuations, traversing ancestors to compute the
transform to the ancestor scroll frame can become very hot. This commit changes the
algorithm to translate all the text continuations to an ancestor that can then be
transformed just once.

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

--HG--
extra : moz-landing-system : lando
2019-01-30 14:42:58 +00:00
Ryan Hunt 092461a72f Bug 1521579 - Skip text frames that are continuations. r=dholbert
A continuation text frame's rect will be considered when visiting the primary
frame via 'FindScrollAnchoringBoundingRect', so we have no reason to compute
the same rect again if for some reason we have excluded the primary text frame.

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

--HG--
extra : moz-landing-system : lando
2019-01-30 14:42:28 +00:00
Ting-Yu Lin ab56bd8e8f Bug 1523061 Part 3 - Remove ListTag() that prints frame tag in a frame list. r=dholbert
We can replace it by a simple for-loop. If we want to print not only the
tag, but the detailed frame information, we can use nsFrameList::List().

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

--HG--
extra : moz-landing-system : lando
2019-01-29 21:30:11 +00:00
Ting-Yu Lin 305e652840 Bug 1523061 Part 2 - Remove static ListTag(FILE*, const nsIFrame*). r=dholbert
Many of the modifications are guarded by #ifdefs. I verify them locally
by manually define them in nsBlockDebugFlags.h and nsLinelayout.cpp.

Note that I replace "mFrame" with "frame" in lines guarded by
NOISY_BLOCK_DIR_MARGINS in nsBlockFrame.cpp because they were
incorrectly renamed in Bug 1277129 Part 6a.
https://hg.mozilla.org/mozilla-central/rev/a70b04f074fc

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

--HG--
extra : moz-landing-system : lando
2019-01-29 21:22:14 +00:00
Ting-Yu Lin c4c0690aa3 Bug 1523061 Part 1 - Remove two nsIFrame::ListTag() methods that retrieve frame tag in a string. r=dholbert
There are three different APIs that serve similar purpose. Keeping only
one is sufficient.

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

--HG--
extra : moz-landing-system : lando
2019-01-29 17:59:53 +00:00
Mats Palmgren d254f778b7 Bug 1520584 part 2 - s/aReflowInput/aCBReflowInput/ for clarity. r=dholbert 2019-01-29 17:44:56 +01:00
Mats Palmgren 07692ebbce Bug 1520584 part 1 - [css-align][css-grid] Translate the static position to grid area coordinates. r=dholbert 2019-01-29 17:44:56 +01:00
Matt Woodrow 1ef7b54002 Bug 1516361 - Remove code for painting text selection behind the background when background-clip:text is set. r=jfkthame,emilio
Differential Revision: https://phabricator.services.mozilla.com/D17320

--HG--
extra : moz-landing-system : lando
2019-01-28 11:07:04 +00:00
Ryan Hunt 6d38cefd3d Bug 1522264 - Translate the visual viewport offset to be relative to the scroll port. r=botond
This was lost in the change to only use the visual viewport if both the
size and offset were set.

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

--HG--
extra : moz-landing-system : lando
2019-01-28 19:48:00 +00:00
Timothy Guan-tin Chien ccf133638c Bug 1507895 - Part II, Remove the datetimebox binding r=smaug
This patch removes the datetimebox binding and always use
UA Widget for the job.

Depends on D17571

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

--HG--
extra : moz-landing-system : lando
2019-01-28 18:32:39 +00:00
Timothy Guan-tin Chien d59f80985c Bug 1507895 - Part I, Remove the videocontrols binding r=smaug
This patch removes the XBL videocontrols binding and make <video>
to always use the UA Widget to generate controls.

DevTools tests that look for NAC is switched to use <input type=file>.

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

--HG--
extra : moz-landing-system : lando
2019-01-25 13:12:26 +00:00
Hiroyuki Ikezoe 465dbfe030 Bug 1520081 - Use the minimum scale size even if the minimum-scale in viewport meta tag is greater than 1.0. r=botond
Differential Revision: https://phabricator.services.mozilla.com/D17451

--HG--
extra : moz-landing-system : lando
2019-01-25 07:01:45 +00:00
Glenn Watson a792eb73a1 Bug 1522395 - Fix double inflation of text shadow bounds. r=kvark
Differential Revision: https://phabricator.services.mozilla.com/D17468

--HG--
extra : moz-landing-system : lando
2019-01-25 00:28:46 +00:00
Daniel Holbert 829c8c8d71 Bug 1517067: Allow table-caption boxes to be dynamic reflow roots. r=dbaron
Differential Revision: https://phabricator.services.mozilla.com/D17006

--HG--
extra : moz-landing-system : lando
2019-01-24 18:56:21 +00:00
Emilio Cobos Álvarez 25e6f12d6e Bug 1521863 - Make style structs constructible with a document. r=jwatt
Assume a dpi and zoom of 1.0 when there's no pres context.

Differential Revision: https://phabricator.services.mozilla.com/D17266
2019-01-24 17:01:59 +01:00
Ryan Hunt 3e87663a7f Bug 1518640 - Use the visual viewport for anchor node selection. r=botond
--HG--
extra : rebase_source : 0f7038a4bf6b7d2a7958177b883c7fbb4130d288
extra : intermediate-source : 97681055c88c7af478467d6c76e227d0cb916aad
extra : source : 27bbb318ecb4f44c315f87584bdeb1b239d80cef
2019-01-22 13:37:16 -06:00
Csoregi Natalia 54be80a8cf Backed out 2 changesets (bug 1518640) for reftest failures on gfx/layers/apz/test/reftest/frame-reconstruction-scroll-clamping.html. CLOSED TREE
Backed out changeset 27bbb318ecb4 (bug 1518640)
Backed out changeset 3b192e4631cc (bug 1518640)
2019-01-22 22:37:00 +02:00
Ryan Hunt 04f720e12c Bug 1518640 - Use the visual viewport for anchor node selection. r=botond
--HG--
extra : histedit_source : 44a540ddceb42939c124e51486c18856584de39a
2019-01-22 13:37:16 -06:00
Ryan Hunt 800c776db5 Bug 1518640 - Check that a PresShell has a visual viewport offset before returning it. r=botond
--HG--
extra : histedit_source : 90d7d4027d4685600d8c4e6cbd86d1a121813613
2019-01-22 13:38:03 -06:00
Hiroyuki Ikezoe cfd37ea8ea Bug 1520455 - Don't use the minimum scale size on fullscreen state to avoid the layout viewport gets larger than the visual viewport. r=botond
This is a workaround. To properly fix the issue we need to fix both of bug
1516377 and bug 1508177.

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

--HG--
extra : moz-landing-system : lando
2019-01-21 23:35:09 +00:00
Miko Mynttinen 7292107f24 Bug 1518069 - Do not use transform separators for nsDisplayWrapList containing just nsDisplayTransform r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D16841

--HG--
extra : moz-landing-system : lando
2019-01-21 21:50:11 +00:00
Cameron McCormack 9f3d1f92c6 Bug 886716 - Fix sorting of text-overflow:ellipsis relative to positioned content. r=mats
Differential Revision: https://phabricator.services.mozilla.com/D15504

--HG--
extra : moz-landing-system : lando
2019-01-18 04:50:02 +00:00
Ryan Hunt 89cf3d0af8 Bug 1521278 - Allow ScrollAnchorContainer to detach anchor frame even if pref is disabled. r=dholbert
The important piece is just that we don't queue a selection for later. This code runs
for each scroll, so we'd be wasting a lot of effort to do that.

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

--HG--
extra : moz-landing-system : lando
2019-01-20 07:21:55 +00:00
Cosmin Sabou 7ccc9d8b0b Merge mozilla-inbound to mozilla-central. a=merge 2019-01-19 11:57:49 +02:00
Ryan Hunt a3916a4e4e Bug 1520344 - Store last scroll anchor position in writing-mode relative coordinates. r=dholbert
This commit changes ScrollAnchorContainer to store the offset between the scroll anchoring
bounding rect start edge and the scroll-port start edge in the block axis of the scroll frame.

The logic to clamp the negative portions of scroll anchor bounding rect is also amended
to only clamp the portion that is beyond the border start edge in the block axis of the
scroll frame.

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

--HG--
extra : rebase_source : 43b5bc4ece7f90cb38e3a7186a764d9cddac90f9
extra : source : f26d953d76fcfb02a5fa46cb62e389f852592fe9
2019-01-16 15:13:12 -06:00
Greg Tatum 7042c8f1c3 Bug 1520526 - Add categories to all profiler markers; r=mstange
This commit adds categories to all markers. This way the profiler's
marker categories and frame label categories agree. There are a few
duplicate category properties on some of the marker payloads, but
this could be cleaned up in a follow-up if needed.

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

--HG--
extra : moz-landing-system : lando
2019-01-18 15:40:15 +00:00
Emilio Cobos Álvarez 62fdf6f313 Bug 1430623 - Move the lang font prefs to Document instead of nsPresContext. r=jfkthame
This will allow me to (in different patches):

 * Make the default style structs constructible without a pres context (default
   color and co. would need to be faked or moved to Document as well, but that's
   ok, since those cannot affect media queries, the default font-size does).

 * Remove the nsPresContext pointer from ComputedStyle (moving it to nsFrame,
   probably).

That would in turn allow me to have the default style computed without a pres
context, which allows us to fix both bug 1490401 and bug 1471231.

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

--HG--
extra : moz-landing-system : lando
2019-01-18 13:43:06 +00:00
Ehsan Akhgari e5e885ae31 Bug 1521000 - Part 2: Adjust our clang-format rules to include spaces after the hash for nested preprocessor directives r=sylvestre
# ignore-this-changeset

--HG--
extra : amend_source : 7221c8d15a765df71171099468e7c7faa648f37c
extra : histedit_source : a0cce6015636202bff09e35a13f72e03257a7695
2019-01-18 10:16:18 +01:00
Ehsan Akhgari 06c3d29113 Bug 1521000 - Part 1: Reformat the tree to ensure everything is formatted correctly with clang-format r=sylvestre
Summary: # ignore-this-changeset

Reviewers: sylvestre

Reviewed By: sylvestre

Subscribers: reviewbot, emilio, jandem, bbouvier, karlt, jya

Bug #: 1521000

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

--HG--
extra : histedit_source : 4add583bfa729ccc1aef934629ed45ff095189b0
2019-01-18 10:12:56 +01:00
Daniel Holbert 160765a37c Bug 1520798 followup: add HTML crashtest for this bug (on top of earlier XUL crashtest). no review, testonly
--HG--
extra : rebase_source : bd4f6118b856e095217643c73fda451885597cab
2019-01-17 15:42:01 -08:00
Daniel Holbert b8133e942b Bug 1520798: Null-check the result of ScrollAnchorContainer::FindFor, in DidSetComputedStyle. r=rhunt
Differential Revision: https://phabricator.services.mozilla.com/D16881

--HG--
extra : moz-landing-system : lando
2019-01-17 18:39:24 +00:00
Ryan Hunt dac799c9f4 Bug 1518631 - Invalidate scroll anchor container on changes to 'overflow-anchor' property and add tests. r=dholbert
I believe that changes to 'overflow-anchor' should invalidate the current
scroll anchor. This isn't in the spec, but there's an issue open for it [1].

[1] https://github.com/w3c/csswg-drafts/issues/3494

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

--HG--
extra : source : 04e2132249ace0a85fb274022949c7cfc5131fe2
extra : amend_source : 01ee5bfd2085dfce5887512a7ddc4668b955f30b
extra : intermediate-source : af4895c87d712e5151146e2fd61c249fb52c355b
2019-01-08 13:03:18 -06:00
Ryan Hunt c71371cf2a Bug 1518624 - Add telemetry for amount and length in pixels of scroll anchor adjustments. r=dholbert
This commit adds two new telemetry probes to collect:
 1. The amount of scroll anchoring adjustments applied
 2. The total absolute length in CSS pixels of scroll anchoring adjustments

Both of these metrics are collected on a per top-level-document basis, and
reported with other use-counters.

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

--HG--
extra : source : 43081bb8f4eac598a3103753965d5b60dfd1c3fa
extra : amend_source : 3d53dc56616f9e48799b7d8b8c11e96007d3c6eb
extra : intermediate-source : 6da6a7ff2d794c25b61858d16fe97e5f309e0f1f
2019-01-08 15:18:12 -06:00
Ryan Hunt 5c7254fba8 Bug 1519462 - Coalesce all scroll anchor adjustments to be performed after layout when flushing notifcations. r=dholbert
We currently perform anchor adjustment in three spots:
  1. If the target of RestyleManager::RecomputePosition is in a scroll anchor chain
  2. If the reflow root is in a scroll anchor chain
  3. In nsHTMLScrollFrame::DidReflow, for itself

It looks like it's possible for a scroll anchor container to be adjusted by (1)
and (2 or 3) in the same PresShell flush.

This should be okay, except that we consume mSuppressAnchorAdjustment when
performing an adjustment, and this can lead us to miss the second time that
we perform adjustments in a PresShell flush.

This commit reworks how we run anchor adjustments so that we collect all
scroll anchor containers that should be adjusted, and only perform the
adjustments once.

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

--HG--
extra : source : cbdbd08379d99f9d55f756c57d728c28331be5da
2019-01-13 00:54:05 -06:00
Ryan Hunt 90c97b5244 Bug 1518633 - Add profiler label for anchor node selection. r=mstange
--HG--
extra : rebase_source : 6dfdc469995cab0d18040f7d31b0e4f26ff4b664
2019-01-16 12:27:49 -06:00
Razvan Maries 4c67bec411 Merge mozilla-inbound to mozilla-central a=merge 2019-01-16 19:00:15 +02:00
Emilio Cobos Álvarez b44ff327e9 Bug 1520154 - Move cursor to cbindgen. r=boris
The only reason it was on style_traits is so that they could use it from some
other crates, but Servo eventually ends up getting the value from an integer, so
may as well pass it around and do that in the end of the process anyway.

Differential Revision: https://phabricator.services.mozilla.com/D16557
2019-01-16 14:13:07 +01:00
Sylvestre Ledru 47a5dd1fb8 Bug 1519636 - Reformat everything to the Google coding style r=Ehsan
# ignore-this-changeset

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

--HG--
extra : moz-landing-system : lando
2019-01-16 08:50:07 +00:00
Ryan Hunt 994713f905 Bug 1519541 - Clamp negative portions of relative scroll anchoring bounding rect. r=dholbert
The scroll anchoring bounding rect of a node can be influenced by absolutely
positioned descendants with very negative offsets. This can cause undesired
scroll adjustments, and has been seen on the web in Gmail. The spec needs to
be amended to say what to do here. Chrome currently will clamp the vertical
offset. This commit implements a stop-gap to clamp the negative portions to
fix this issue, while we do more research and spec-work.

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

--HG--
extra : rebase_source : 882ac29fca602ae398ffa74bf5747a8eeb4e9329
extra : amend_source : b6537c3626c5bae60285a4e55399b69ad52206b4
extra : source : ecc18f11431e2da2676962c82962932b4465fb38
2019-01-15 17:25:17 -06:00
Andrew Osmond 6d9401a9e6 Bug 1453747 - Use rounded dest rect in simplified image decode size calculations for WebRender. r=mstange
We are using the unrounded dest rect to calculate the image decode size
in ComputeImageContainerDrawingParameters, while passing the rounded
dest rect to WebRender. This mismatch causes images to be decoded to one
size and display at another, cause some visual distortions. Using the
correct rect seems to allow us to remove the extra snapping logic added
to work around this.

At this time, how we snap is different between WebRender and
non-WebRender in general. This patch will likely morph again once we
bring the two models closer together.

Differential Revision: https://phabricator.services.mozilla.com/D15739
2019-01-15 16:36:42 -05:00
Hiroyuki Ikezoe 496dff9a8b Bug 1423013 - Expand the layout viewport to the minimum scale size for overflow:hidden pages. r=botond,tnikkel
Depends on D15345

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

--HG--
extra : moz-landing-system : lando
2019-01-15 09:48:18 +00:00
Brindusan Cristian 338aeb2777 Merge mozilla-central to inbound. a=merge CLOSED TREE 2019-01-15 06:41:22 +02:00
Emilio Cobos Álvarez ad094d75c5 Bug 1519934 - Remove useless nsDisplayTransform::mNoExtendContext. r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D16487

--HG--
extra : moz-landing-system : lando
2019-01-14 20:39:13 +00:00
Narcis Beleuzu 7d7aca6a93 Merge inbound to mozilla-central. a=merge 2019-01-12 11:40:44 +02:00
Jan Henning 79fe5e1e56 Bug 1498812 - Part 11: Use Visual Viewport for storing scroll position in the PresState. r=botond,tnikkel
Differential Revision: https://phabricator.services.mozilla.com/D15691

--HG--
extra : moz-landing-system : lando
2019-01-11 19:50:24 +00:00
Razvan Maries 642dd2cc11 Merge mozilla-central to autoland. a=merge on a CLOSED TREE 2019-01-11 17:33:16 +02:00
Razvan Maries 22218f3515 Merge mozilla-central to autoland. a=merge on a CLOSED TREE 2019-01-11 11:36:24 +02:00
Daniel Varga 1b2c69a5c1 Merge mozilla-central to mozilla-inbound. a=merge on a CLOSED TREE 2019-01-11 06:23:02 +02:00
Masayuki Nakano f8844f0d9b Bug 181137 - part 7: Get rid of nsIContentIterator interface r=smaug
Now, nobody requires nsIContentIterator interface.  So, we can get rid of it.

Unfortunately, there is no macro to keep the inherited class,
ContentSubtreeIterator, in the cycle collection to make it keep managing
ContentSubtreeIterator::mRange without nsISupports interface.  Therefore, this
patch moves it into ContentIteratorBase temporarily.  Anyway, the following
patch makes those classes not refcountable.  At that time, this issue will be
fixed.

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

--HG--
extra : moz-landing-system : lando
2019-01-11 01:51:42 +00:00