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

16346 Коммитов

Автор SHA1 Сообщение Дата
Oana Pop Rus b93335c27f Merge mozilla-central to autoland. a=merge CLOSED TREE 2019-06-13 13:04:19 +03:00
Oana Pop Rus 1133b6716d Merge inbound to mozilla-central. a=merge 2019-06-13 12:55:51 +03:00
violet 156ff2589f Bug 1554753 - Should not treat 0 opacity text without stroke width as drawing stroke r=jfkthame
The regressor Bug 1248708 inadvertently changed the behavior for opacity 0 text
when implementing -webkit-text-stroke. It treats all opacity 0 text as drawing stroke
even if the stroke property isn't used in the first place.

We should check aParams.textStrokeWidth is actually set before changing draw mode.

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

--HG--
extra : moz-landing-system : lando
2019-06-12 15:28:55 +00:00
Emilio Cobos Álvarez 4e5f983137 Bug 1488953 - Use a script runner for scrollport events. r=mats
This is consistent with the scroll area events too, and allows us to
remove the WillPaintObserver stuff.

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

--HG--
extra : moz-landing-system : lando
2019-06-13 02:30:25 +00:00
Peter Van der Beken 8b00dd9ff2 Bug 1490044 - Move all prefs used in WebIDL to StaticPrefs. r=bzbarsky
Differential Revision: https://phabricator.services.mozilla.com/D33507

--HG--
extra : moz-landing-system : lando
2019-06-13 09:00:59 +00:00
violet d5bbf998dd Bug 1351432 - Implement the break-spaces value of the white-space property r=jfkthame
Differential Revision: https://phabricator.services.mozilla.com/D34499

--HG--
extra : moz-landing-system : lando
2019-06-12 10:23:49 +00:00
violet f7f51ced95 Bug 1351432 - Cleanup GetCSSWhitespaceToCompressionMode r=jfkthame
Differential Revision: https://phabricator.services.mozilla.com/D34498

--HG--
extra : moz-landing-system : lando
2019-06-11 14:29:23 +00:00
Ryan Hunt b76533bae0 Bug 1558482 - Only initialize the root displayport for the cross process root content document. r=kats
The root displayport has some assumptions built into it about being positioned at
the origin and sized to the composition bounds that seem like they only apply to
the cross process root content document. This commit changes us to avoid taking
this code path for OOP-iframes.

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

--HG--
extra : rebase_source : 026bb84b7ad086f508228620d19d9f459f28bf1d
2019-06-11 07:57:23 -05:00
Ryan Hunt 99aaa4e6c6 Bug 1558482 - Add visibleRect and scaling to EffectsInfo and compute them when using layers. r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D34523

--HG--
extra : rebase_source : 3bbef496359ae108e1f4adc2548e0140cfd7b0a8
2019-06-11 07:50:40 -05:00
Hiroyuki Ikezoe 56cfdf6c52 Bug 1554022 - Use the current position in CSS pixels for the start point of ScrollBy. r=botond,mstange
Otherwise clamped positions in layer pixels might cause 1-pixel difference
in CSS pixels on Android.

Note that there is a fundamental issue on the interaction between
the layer-pixel alignment and scrolling APIs (bug 1556685), once we fix the bug
properly, we should use the scrolled position, which was given by the scrolling
APIs, for the current position.

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

--HG--
extra : moz-landing-system : lando
2019-06-11 22:43:34 +00:00
Will Hawkins f7a08bd7ed Bug 1550437: Make sure that About dialog animates the throbber. r=aosmond
Differential Revision: https://phabricator.services.mozilla.com/D34429

--HG--
extra : moz-landing-system : lando
2019-06-11 14:19:43 +00:00
Boris Zbarsky d5a8a4a595 Bug 1557793 part 3. Change the signatures of various nsContentUtils localization methods to play nicer with the new stringbundle API. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D34201

--HG--
extra : moz-landing-system : lando
2019-06-08 21:26:12 +00:00
Botond Ballo c0ca36e4fd Bug 1554813 - Size the scroll parts clip to the scroll frame's true outer size. r=tnikkel
Differential Revision: https://phabricator.services.mozilla.com/D33377

--HG--
extra : moz-landing-system : lando
2019-06-10 16:30:42 +00:00
Emilio Cobos Álvarez b4225d4d66 Bug 1558357 - Should update layout when the hypothetical display of an element changes, even though the final computed display doesn't. r=dbaron
Differential Revision: https://phabricator.services.mozilla.com/D34443

--HG--
extra : moz-landing-system : lando
2019-06-11 09:12:10 +00:00
Matt Woodrow d35146931b Bug 1555819 - Remove invalidated display items during PreProcessDisplayLists, since we might not merge their display list. r=miko
Differential Revision: https://phabricator.services.mozilla.com/D33881

--HG--
extra : moz-landing-system : lando
2019-06-11 04:39:17 +00:00
Matt Woodrow f6b0435e84 Bug 1547802 - Compute a single caret frame for the entire display list, and remove the option to invalidate frames during painting. r=miko,smaug
Previously we computed a caret frame each time we started display list building for a pres shell, and tracked a stack of these as we descended through subdocuments.
This meant that we couldn't know if the caret frame had changed before we started building, and we instead had to support invalidations in the middle of building.

Since there should only ever be one focused document, we can instead retrieve this from the focus manager, and find the sole caret frame for all documents we want to paint.

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

--HG--
extra : moz-landing-system : lando
2019-06-11 04:39:00 +00:00
Cosmin Sabou 3d72a8ffe7 Backed out 2 changesets (bug 1547802, bug 1555819) for build bustages on nsDisplayList.
Backed out changeset aea91be6ce82 (bug 1555819)
Backed out changeset 11a69daedddb (bug 1547802)
2019-06-11 06:52:46 +03:00
Matt Woodrow 5dc2d83f7b Bug 1555819 - Remove invalidated display items during PreProcessDisplayLists, since we might not merge their display list. r=miko
Differential Revision: https://phabricator.services.mozilla.com/D33881

--HG--
extra : moz-landing-system : lando
2019-06-11 02:20:21 +00:00
Matt Woodrow 72068e14f5 Bug 1547802 - Compute a single caret frame for the entire display list, and remove the option to invalidate frames during painting. r=miko,smaug
Previously we computed a caret frame each time we started display list building for a pres shell, and tracked a stack of these as we descended through subdocuments.
This meant that we couldn't know if the caret frame had changed before we started building, and we instead had to support invalidations in the middle of building.

Since there should only ever be one focused document, we can instead retrieve this from the focus manager, and find the sole caret frame for all documents we want to paint.

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

--HG--
extra : moz-landing-system : lando
2019-06-11 02:20:09 +00:00
Jonathan Watt cdbcb71463 Bug 1558079. Add a comment to the mozPrintCallback invoking code warning about its non-obvious behavior. r=bobowen
Differential Revision: https://phabricator.services.mozilla.com/D34298

--HG--
extra : rebase_source : 523c19cc0b63d08a5701f9a2d4148b146529827c
extra : amend_source : c3b5b7e85a1b9bc64e76524f974a96ad93201886
2019-05-31 16:18:51 +01:00
Noemi Erli 5b41ddf5f2 Backed out 2 changesets (bug 1547802, bug 1555819) mochitest and marionette failures CLOSED TREE
Backed out changeset 10ba83441846 (bug 1555819)
Backed out changeset b9af6aea762d (bug 1547802)
2019-06-07 09:12:09 +03:00
Matt Woodrow d436383750 Bug 1547802 - Compute a single caret frame for the entire display list, and remove the option to invalidate frames during painting. r=miko,smaug
Previously we computed a caret frame each time we started display list building for a pres shell, and tracked a stack of these as we descended through subdocuments.
This meant that we couldn't know if the caret frame had changed before we started building, and we instead had to support invalidations in the middle of building.

Since there should only ever be one focused document, we can instead retrieve this from the focus manager, and find the sole caret frame for all documents we want to paint.

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

--HG--
extra : moz-landing-system : lando
2019-06-07 01:55:43 +00:00
Miko Mynttinen fbfcf25cc9 Bug 1490404 - Part 1: Be more consistent with display list and display list builder pointers and references r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D33679

--HG--
extra : moz-landing-system : lando
2019-06-06 17:54:13 +00:00
shindli 3caa33a7ea Merge inbound to mozilla-central. a=merge 2019-06-06 12:57:52 +03:00
Ting-Yu Lin 3a4933eb98 Bug 1549267 Part 1 - Remove NS_INTRINSICSIZE and NS_AUTOHEIGHT. r=mats
This patch is generated by the following steps.

1) Manually delete NS_INTRINSICSIZE and NS_AUTOHEIGHT in LayoutConstants.

2) Run the following script.
```
  #!/bin/bash
  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 NS_INTRINSICSIZE NS_UNCONSTRAINEDSIZE
  rename NS_AUTOHEIGHT NS_UNCONSTRAINEDSIZE
```

3) ./mach clang-format

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

--HG--
extra : moz-landing-system : lando
2019-06-04 23:41:20 +00:00
Ryan Hunt 451ca010b0 Bug 1556555 - Get TabId for nsDisplayRemote when we're in a content process. r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D33566

--HG--
extra : rebase_source : 8dcaa325ccab11fac6e1e329097f9a0e3442ded2
extra : source : 79ffe50308dbbee03d4b949e9fc26d6c39a68cb1
extra : histedit_source : 01dea72cf28284df2a2e37446474854e9754664f
2019-06-02 13:42:21 -04:00
Ryan Hunt 4386b68e1c Bug 1556548 - Move nsDisplayRemote to nsSubDocumentFrame.cpp. r=mattwoodrow
nsDisplayRemote no longer has any direct ties to RenderFrame and should
be moved to nsSubDocumentFrame.cpp where it's actually used/created.

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

--HG--
extra : rebase_source : ae2e03108820bd14b5f2771da17cabfd95706f94
extra : source : b301161ab461cd46cea3f91749896686c50e9b9f
extra : histedit_source : 1c80f83d26734e56bd6353f0a50dcbc4bf894b4b
2019-06-02 13:00:16 -04:00
Ryan Hunt 298a301151 Bug 1556548 - Make RenderFrame an internal detail to BrowserParent. r=mattwoodrow,farre
Code outside of BrowserParent should just get the LayersId from a getter
and not worry about RenderFrame.

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

--HG--
extra : rebase_source : 63f9f9680a7cb16a18d9e56999e02a124aa63429
extra : source : e86839ca63260b09184755c98890fa8abf371530
extra : histedit_source : 34333f5f78ecf9b4f3e12c6175a6e81724a41fb2
2019-05-31 16:00:57 -05:00
Jonathan Watt 5cd2b5b11e Bug 1557104. Merge nsIPageSequenceFrame and nsSimplePageSequenceFrame. r=dholbert
Differential Revision: https://phabricator.services.mozilla.com/D33817

--HG--
rename : layout/generic/nsSimplePageSequenceFrame.cpp => layout/generic/nsPageSequenceFrame.cpp
rename : layout/generic/nsSimplePageSequenceFrame.h => layout/generic/nsPageSequenceFrame.h
extra : rebase_source : e75b043af4dbfe4c108f2bfc0e234fd20c5af315
2019-05-22 13:01:33 +01:00
Mats Palmgren 032d86b0c2 Bug 1556709 - Only call OptionallyBreak() if we may break at white-space. r=jfkthame
Differential Revision: https://phabricator.services.mozilla.com/D33718

--HG--
extra : rebase_source : 5a9cb0727ad4371edd2258ffd0a29282c8de2a2c
2019-06-04 21:20:33 +02:00
Ehsan Akhgari 127b9e6503 Bug 836176 - Part 4: drop a useless null check
Differential Revision: https://phabricator.services.mozilla.com/D33676

--HG--
extra : moz-landing-system : lando
2019-06-04 18:21:52 +00:00
Ehsan Akhgari adf073ce68 Bug 836176 - Part 3: Remove nsIHTMLDocument; r=farre
Differential Revision: https://phabricator.services.mozilla.com/D32925

--HG--
extra : moz-landing-system : lando
2019-06-04 17:27:43 +00:00
Brindusan Cristian 9eb2f739c1 Merge inbound to mozilla-central. a=merge 2019-06-04 06:47:20 +03:00
Emilio Cobos Álvarez 4376c36f9f Bug 1555962 - Fix a typo that makes us reflow too much in abspos subtrees. r=jwatt
Ugh, I accidentally introduced this in bug 1523071. :(

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

--HG--
extra : moz-landing-system : lando
2019-06-03 12:10:29 +00:00
Csoregi Natalia de697c360a Merge mozilla-central to mozilla-inbound. CLOSED TREE
--HG--
rename : layout/generic/nsFrameIdList.h => layout/generic/FrameIdList.h
2019-06-02 00:37:53 +03:00
arthur.iakab 36d75a7e56 Merge mozilla-central to mozilla-inbound 2019-06-01 01:30:47 +03:00
Daniel Holbert 00579e4df0 (no bug) Use clang-format to fix mis-indented line in nsTextFrame.cpp. (no review, DONTBUILD) 2019-05-31 13:50:52 -07:00
Cameron McCormack 41de040ecf Bug 1553731 - Part 3: Make nsIFrame::Is___Frame() avoid reading from memory. r=mats
Differential Revision: https://phabricator.services.mozilla.com/D32605

--HG--
extra : moz-landing-system : lando
2019-06-01 08:03:42 +00:00
Cameron McCormack 11958c344f Bug 1553731 - Part 2: Generate FrameIdList.h and FrameTypeList.h from Python. r=mats,glandium
Differential Revision: https://phabricator.services.mozilla.com/D32604

--HG--
extra : moz-landing-system : lando
2019-06-01 08:03:40 +00:00
Cameron McCormack faf479d778 Bug 1553731 - Part 1: Rename nsFrameIdList.h to FrameIdList.h. r=mats
Differential Revision: https://phabricator.services.mozilla.com/D32603

--HG--
rename : layout/generic/nsFrameIdList.h => layout/generic/FrameIdList.h
extra : moz-landing-system : lando
2019-06-01 08:03:32 +00:00
Emilio Cobos Álvarez 39abf032fe Bug 1488871 - Don't flush layout in AsyncScrollPortEvent::Run. r=mats
I'd claim that we don't need it because, in order to enqueue the event, we
already need to have overflowed the event in a normal reflow.

For now this should not break anything (or anything that wasn't already racy
depending on when we paint).

The only reason the flush is there is according to roc is to decide whether to
fire the event, and because it needs the layout information:

  https://bugzilla.mozilla.org/show_bug.cgi?id=771822#c4

In practice, however, all the layout information we need we have already
computed by the time we post the event.

We don't expose the rects via the event details, which is what could get
out-of-date, so this patch could only mean that we fire the event slightly more
often in cases where people remove stuff from the DOM, right after we do layout
and the content has overflowed. But that's actually pretty unlikely.

This event in general is pretty problematic because it exposes when we do
layout and when we paint, which is not great. Its test coverage is also pretty
low (test_overflow_event.html, which of course still passes without this).

I still want to do this change first since it's trivial to back out if needed.

Then I'd want to change how it fires to match the scrolled area change event
(which would allow us to remove the WillPaintObserver stuff), after verifying
that chrome consumers are still fine with that, and then put behind a pref and
hide it from content, while we leave time for chrome consumers to migrate away
from it, and allow us to revert if something breaks.

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

--HG--
extra : moz-landing-system : lando
2019-06-01 03:25:46 +00:00
Cosmin Sabou b93ad0326f Backed out 3 changesets (bug 1553731) for build bustages on nsIFrame.h CLOSED TREE
Backed out changeset 90ed9808e1c0 (bug 1553731)
Backed out changeset b8669aa5a820 (bug 1553731)
Backed out changeset 0d0bf5d84a3c (bug 1553731)

--HG--
rename : layout/generic/FrameIdList.h => layout/generic/nsFrameIdList.h
2019-06-01 04:23:49 +03:00
Cameron McCormack 4ea9edb03a Bug 1553731 - Part 3: Make nsIFrame::Is___Frame() avoid reading from memory. r=mats
Differential Revision: https://phabricator.services.mozilla.com/D32605

--HG--
extra : moz-landing-system : lando
2019-06-01 01:04:54 +00:00
Cameron McCormack 652d7c4b22 Bug 1553731 - Part 2: Generate FrameIdList.h and FrameTypeList.h from Python. r=mats,glandium
Differential Revision: https://phabricator.services.mozilla.com/D32604

--HG--
extra : moz-landing-system : lando
2019-06-01 01:04:46 +00:00
Cameron McCormack c4adc9d346 Bug 1553731 - Part 1: Rename nsFrameIdList.h to FrameIdList.h. r=mats
Differential Revision: https://phabricator.services.mozilla.com/D32603

--HG--
rename : layout/generic/nsFrameIdList.h => layout/generic/FrameIdList.h
extra : moz-landing-system : lando
2019-06-01 01:04:44 +00:00
Emilio Cobos Álvarez 19258bfbb4 Bug 1554716 - Remove nsStyleColor moving the color property to nsStyleText. r=jfkthame
I think this is a good change regardless of other discussion in bug 1552587. If
we decide to move `mColor` to the top-level of the struct that can be done
separately.

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

--HG--
extra : moz-landing-system : lando
2019-05-31 14:48:22 +00:00
Ting-Yu Lin 55c5622538 Bug 1555823 - Remove bug 1323652 annotations from crashtest.lists. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D33213

--HG--
extra : moz-landing-system : lando
2019-05-30 22:18:01 +00:00
Emilio Cobos Álvarez 3116f4a8c3 Bug 1554755 - Don't set nsIFrame::mMayHaveRoundedCorners to false when there are non-zero percent borders, as we don't track all sizes that are passed to this function. r=mattwoodrow
I _think_ most of the sizes that get here are going to be equivalent to
mRect.Size(), but that seems really hard to prove.

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

--HG--
extra : moz-landing-system : lando
2019-05-30 00:10:55 +00:00
Timothy Nikkel 6c2c3c6e42 Bug 1554373. Handle glass item with retained display lists. r=mattwoodrow
We clear mGlassDisplayItem before a full display list build. We use it so that we only mark the first glass item we encounter with the glass item flag.

For partial builds we use the bool mHasGlassItemDuringPartial to track the same thing, so we only mark one item as glass. Merging handles updating mGlassDisplayItem for partial builds.

So this means that we could have one item marked as a glass item in the old list and one item marked as a glass item in the new list.

If merging doesn't use the existing mGlassDisplayItem then it clears mGlassDisplayItem. If merging uses a new item that is a glass item it calls SetGlassDisplayItem on it, so it will only become the new glass item if there wasn't one there already.

So it is actually possible that both items with the glass flag make it into the final display list. Thus the number of display items in the display list with the glass flag can grow to any number, but it would have to be a very very weird state because the glass item is only allowed to be a themed background item coming from a doc element box frame (one per xul doc near the root).

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

--HG--
extra : moz-landing-system : lando
2019-05-29 22:01:28 +00:00
Charlie Marlow b06816a234 Bug 1555436: Add braces to address static analysis warnings in some text layout code. r=dholbert
Differential Revision: https://phabricator.services.mozilla.com/D33075

--HG--
extra : moz-landing-system : lando
2019-05-29 20:48:41 +00:00