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

15392 Коммитов

Автор SHA1 Сообщение Дата
Csoregi Natalia affc6dfb7a Backed out 2 changesets (bug 1488871) for failures on browser_windowopen.js. CLOSED TREE
Backed out changeset 078929426a6e (bug 1488871)
Backed out changeset 39b3a22e2552 (bug 1488871)
2018-09-08 01:40:10 +03:00
Sylvestre Ledru aa37bde79b Bug 1489454 - Remove all trailing whitespaces (again) r=Ehsan
This also includes moving some files to the regular format.

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

--HG--
extra : moz-landing-system : lando
2018-09-07 14:47:51 +00:00
Xidorn Quan 30689fcc0d Bug 1488300 - Kick off external SVG resource loading from DidSetComputedStyle. r=dholbert
Differential Revision: https://phabricator.services.mozilla.com/D4901

--HG--
extra : moz-landing-system : lando
2018-09-07 21:08:44 +00:00
Emilio Cobos Álvarez b8ad867e5e 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
2018-09-07 16:48:41 +02:00
Xidorn Quan 7483d8715a Bug 1486662 - Allow scroll without scrollbar for non-textcontrol elements on Android. r=tnikkel
Differential Revision: https://phabricator.services.mozilla.com/D5115

--HG--
extra : moz-landing-system : lando
2018-09-07 00:35:45 +00:00
Ting-Yu Lin f4c03c5b08 Bug 1346983 - Add ColumnSetWrapperFrame to wrap nsColumnSetFrames and column span frames. r=dbaron
ColumnSetWrapperFrame is needed to implement column-span. Patches in bug
1421105 will utilize this frame.

Co-authored-by: Neerja Pancholi <npancholi@mozilla.com>

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

--HG--
extra : moz-landing-system : lando
2018-09-06 17:58:24 +00:00
Margareta Eliza Balazs a6eea652ba Merge autoland to mozilla-central. a=merge 2018-09-06 12:51:28 +03:00
Margareta Eliza Balazs 3d500e629e Backed out changeset fc5ee8a04645 (bug 1488871) for causing perma bc failures in browser/base/content/test/performance/browser_windowopen.js. a=backout 2018-09-06 12:49:58 +03:00
Andreea Pavel 746993f3e1 Merge mozilla-inbound to mozilla-central. a=merge 2018-09-06 07:37:40 +03:00
Gerald Squelart b099eab802 Bug 1488684 - Made nsIFrame-derived classes and some others 'final' where possible - r=dbaron
All classes deriving from nsIFrame that did not have any subclasses themselves
(at the time of writing this patch) have been marked with `final`.
Some other Layout classes have also been made final, but this was opportunistic
while working on nsIFrame subclasses, and is definitely not exhaustive, further
patches welcome; refer to bug 1332680.

Advantages of marking a class final include:
- Allowing the compiler to devirtualize some method calls (i.e., calling
  virtual functions directly instead of going through the vtable),
- Indicating that the class is not currently subclassed,
- Preventing subclassing without being aware that this would remove the
  finalization benefits of the parent class.
`final` does not signify that these classes should *never* be subclassed, this
is left for developers to decide.

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

--HG--
extra : moz-landing-system : lando
2018-09-06 01:23:14 +00:00
張俊芝 81562a9f6c Bug 1485581 - Make nsImageFrame report intrinsic inline sizes in the correct dimension (height) when writing-mode is vertical. r=dbaron 2018-09-05 15:48:56 -07:00
Miko Mynttinen 50215c6a21 Bug 1488889 - Pass nsSubDocumentFrame to nsDisplaySubDocument constructor r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D5091

--HG--
extra : moz-landing-system : lando
2018-09-05 23:16:17 +00:00
Emilio Cobos Álvarez 96decc5265 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
2018-09-05 23:18:33 +00:00
Andreea Pavel 4b53c29ee3 Merge mozilla-central to autoland. a=merge on a CLOSED TREE 2018-09-06 07:39:46 +03:00
Gerald Squelart 017ca214c1 Bug 1488684 - Made some layout methods 'final' or non-virtual - r=dbaron
Some methods were not overrides and were never overridden, so they could simply
be non-virtual.
Others were overrides but were not overridden, so they could benefit from being
final to hopefully lead to devirtualized calls.

Though some of these are not strictly necessary because they are inside 'final'
classes, I think they're worth adding anyway, because:
- The 'final' keyword becomes more obvious when looking at methods without the
  wider context in sight (e.g., in reviews or searchfox).
- If one day any of these classes becomes non-final, it would keep the final
  attribute on these methods by default, and force the programmer to explicitly
  reflect before removing 'final' from the methods that need to be overridden.

Depends on D5020

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

--HG--
extra : moz-landing-system : lando
2018-09-06 01:23:49 +00:00
Sebastian Hengst bcdcf7554b Bug 1487190 - Update bugzilla metadata in moz.build files to reflect Layout components reorganization in bug 1484408. r=heycam
Differential Revision: https://phabricator.services.mozilla.com/D4642

--HG--
extra : moz-landing-system : lando
2018-09-05 11:16:02 +00:00
Sebastian Hengst 0003a3ce96 Backed out changeset 834a75789c0a (bug 1487190) for bustage due to unused file pattern 2018-09-05 14:11:04 +03:00
Sebastian Hengst 38d937a7c0 Bug 1487190 - Update bugzilla metadata in moz.build files to reflect Layout components reorganization in bug 1484408. r=heycam
Differential Revision: https://phabricator.services.mozilla.com/D4642

--HG--
extra : moz-landing-system : lando
2018-09-05 10:54:03 +00:00
Dorel Luca b9abf01ee1 Backed out changeset 9e0481c2413d (bug 1487190) for breaking Gecko Decision Task. CLOSED TREE 2018-09-05 13:43:09 +03:00
Sebastian Hengst 447d464a1a Bug 1487190 - Update bugzilla metadata in moz.build files to reflect Layout components reorganization in bug 1484408. r=heycam
Differential Revision: https://phabricator.services.mozilla.com/D4642

--HG--
extra : moz-landing-system : lando
2018-09-05 10:00:39 +00:00
Masayuki Nakano 58ccd6c812 Bug 1488337 - Rename mozilla::dom::SelectionChangeListener to mozilla::SelectionChangeEventDispatcher r=smaug
SelectionChangeListener is too generic name but it just dispatches
selectionchange event when it's necessary.  So, it should be renamed to
SelectionChangeEventDispatcher. Additionally, it's in mozilla::dom namespace
but it does not represent any DOM object. So, it should be in mozilla namespace
instead.

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

--HG--
rename : dom/base/SelectionChangeListener.cpp => dom/base/SelectionChangeEventDispatcher.cpp
rename : dom/base/SelectionChangeListener.h => dom/base/SelectionChangeEventDispatcher.h
extra : moz-landing-system : lando
2018-09-04 11:18:03 +00:00
Ting-Yu Lin 90fffcd256 Bug 1488219 - Mark nsDateTimeControlFrame as a leaf frame. r=dholbert
nsDateTimeControlFrame should be a leaf like all the other <input> frames
like nsTextControlFrame, nsCheckboxRadioFrame, etc.

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

--HG--
extra : moz-landing-system : lando
2018-09-05 00:27:43 +00:00
Miko Mynttinen 58f9cc4fc8 Bug 1483659 - Ensure that child overflow areas are included in perspective frame overflow areas r=dbaron
Differential Revision: https://phabricator.services.mozilla.com/D3515

--HG--
extra : moz-landing-system : lando
2018-09-04 16:25:54 +00:00
Miko Mynttinen 9cafe14554 Bug 1487020 - Do not reuse nsDisplayRemote if RenderFrameParent has been destroyed r=mattwoodrow
Reviewers: mattwoodrow

Tags: #secure-revision

Bug #: 1487020

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

--HG--
extra : rebase_source : 3b98453d0b273fbf858e2736e531108a8f1732ed
extra : amend_source : 1a3ebfe814a13c7e386d61cb0cf0601388439e83
extra : source : f0594eca7bd49c18c84c88da920bdf69e1a4dc11
2018-08-31 21:08:01 +02:00
Masayuki Nakano 9ab2669f86 Bug 1487659 - Make Selection treat SelectionChangeListener as a concrete class rather than nsISelectionListener r=smaug
SelectionChangeListener is an nsISelectionListener class.  This is added only
to Selection for "normal" and added by nsFrameSelection::Init() after
AccessibleCaretEventHub.  So, we can make Selection directly treat
SelectionChangeListener.

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

--HG--
extra : moz-landing-system : lando
2018-08-31 21:22:57 +00:00
Masayuki Nakano 9c349ade9b Bug 1487591 - Make Selection treat AccessibleCaretEventHub as concrete class rather than nsISelectionListener r=smaug
AccessibleCaretEventHub is an nsISelectionListener of Selection whose type is
"normal".  This is added only when nsFrameSelection::Init() is called and
accessible caret is enabled.  Additionally, nsFrameSelection::Init() is
always called immediately after creating nsFrameSelection.

Therefore, when AccessibleCaretEventHub is installed to Selection, this is
always second selection listener and won't be installed multiple times.  So,
Selection can store pointer of AccessibleCaretEventHub directly only when
it's enabled and the Selection needs to notify it of selection change.

This patch makes Selection stores AccessibleCaretEventHub with RefPtr, then,
makes Selection::NotifySelectionListeners() call its OnSelectionChange()
immediately after AutoCopyListener.

Unfortunately, this patch includes making of MOZ_CAN_RUN_SCRIPT_BOUNDARY and
MOZ_CAN_RUN_SCRIPT a lot since some methods of AccessibleCaretEventHub are
marked as MOZ_CAN_RUN_SCRIPT and including AccessibleCaretEventHub.h into
Selection.h causes compile the compile errors.

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

--HG--
extra : moz-landing-system : lando
2018-08-31 21:19:44 +00:00
Andrew Osmond 740299988c Bug 1487120 - Invalidate nsImageBoxFrame properly for WebRender. r=jrmuizel
When the frame updates for an animated image, it will trigger
nsImageBoxFrame::OnFrameUpdate to be called. We did not change this for
WebRender, and thus it was missing similar checks added to
nsImageFrame::InvalidateSelf as originally added in bug 1382985. This
caused us to ignore the frame update, and thus the animation never
appeared to progress.
2018-08-30 14:51:27 -04:00
Masayuki Nakano be86e183fd Bug 1486370 - Change nsAutoCopyListener to a static class r=smaug
nsAutoCopyListener is a singleton class but refcountable and a selection
listener.  nsFrameSelection adds it to only normal Selection when it's on
macOS or it's enabled by the pref.  Additionally, it's always first selection
listener since it's added immediately after Selection instance is created.

So, we can make it a static class, and normal Selection instance should have
a bool to decide whether it should notify nsAutoCopyListener of its changes.
Then, we can save the cost of grabbing it with local RefPtr and the virtual
call.

Additionally, this patch renames nsAutoCopyListener to mozilla::AutoCopyListener
and optimizes constructor of nsFrameSelection (using bool var cache to retrieve
the pref, avoid retrieving the pref on macOS).

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

--HG--
rename : layout/generic/nsAutoCopyListener.h => layout/generic/AutoCopyListener.h
extra : moz-landing-system : lando
2018-08-30 07:36:23 +00:00
Miko Mynttinen a6b4ae3b60 Bug 1486477 - Initialize nsDisplayCanvasThemedBackground properly r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D4438

--HG--
extra : moz-landing-system : lando
2018-08-30 00:01:45 +00:00
Emilio Cobos Álvarez 30e5e31b05 Bug 1486457 - Clear the float list if we weren't able to place a line. r=dbaron
We'll re-do the line anyway, and we'll forget about all the already-positioned
floats in the line DoReflowInlineFrames anyway.

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

--HG--
extra : moz-landing-system : lando
2018-08-28 18:13:20 +00:00
arthur.iakab 5527acb8d8 Merge inbound to mozilla-central a=merge 2018-08-25 01:08:22 +03:00
Boris Chiou 63d06d8017 Bug 1246764 - Part 4: Rename mask flag and function name of xxxBasicShape to xxxBasicShapeOrPath. r=jwatt
This flag and function name are used for both basic shapes and path function,
so rename it. For now, we treat path() and other basic-shapes as the
different object (i.e. StyleSVGPath and StyleBasicShape), so I rename
these functions and mask flag.

Differential Revision: https://phabricator.services.mozilla.com/D3636
2018-08-24 11:37:57 -07:00
Cosmin Sabou 469b620e12 Merge mozilla-central to autoland. a=merge
--HG--
rename : testing/web-platform/tests/css/compositing/support/parsing-testcommon.js => testing/web-platform/tests/css/compositing/parsing/support/parsing-testcommon.js
rename : testing/web-platform/tests/css/css-backgrounds/support/parsing-testcommon.js => testing/web-platform/tests/css/css-backgrounds/parsing/support/parsing-testcommon.js
rename : testing/web-platform/tests/css/css-box/support/parsing-testcommon.js => testing/web-platform/tests/css/css-box/parsing/support/parsing-testcommon.js
rename : testing/web-platform/tests/css/css-cascade/support/parsing-testcommon.js => testing/web-platform/tests/css/css-cascade/parsing/support/parsing-testcommon.js
rename : testing/web-platform/tests/css/css-color/support/parsing-testcommon.js => testing/web-platform/tests/css/css-color/parsing/support/parsing-testcommon.js
rename : testing/web-platform/tests/css/css-images/support/parsing-testcommon.js => testing/web-platform/tests/css/css-images/parsing/support/parsing-testcommon.js
rename : testing/web-platform/tests/css/css-masking/support/parsing-testcommon.js => testing/web-platform/tests/css/css-masking/parsing/support/parsing-testcommon.js
rename : testing/web-platform/tests/css/css-shapes/support/parsing-testcommon.js => testing/web-platform/tests/css/css-shapes/parsing/support/parsing-testcommon.js
rename : testing/web-platform/tests/css/css-transforms/support/parsing-testcommon.js => testing/web-platform/tests/css/css-transforms/parsing/support/parsing-testcommon.js
rename : testing/web-platform/tests/css/css-ui/support/parsing-testcommon.js => testing/web-platform/tests/css/css-ui/parsing/support/parsing-testcommon.js
rename : testing/web-platform/tests/css/css-writing-modes/support/parsing-testcommon.js => testing/web-platform/tests/css/css-writing-modes/parsing/support/parsing-testcommon.js
rename : testing/web-platform/tests/css/filter-effects/support/parsing-testcommon.js => testing/web-platform/tests/css/filter-effects/parsing/support/parsing-testcommon.js
rename : testing/web-platform/tests/css/motion/support/parsing-testcommon.js => testing/web-platform/tests/css/motion/parsing/support/parsing-testcommon.js
rename : third_party/rust/crossbeam-deque/.cargo-checksum.json => third_party/rust/crossbeam-deque-0.2.0/.cargo-checksum.json
rename : third_party/rust/crossbeam-deque/.travis.yml => third_party/rust/crossbeam-deque-0.2.0/.travis.yml
rename : third_party/rust/crossbeam-deque/CHANGELOG.md => third_party/rust/crossbeam-deque-0.2.0/CHANGELOG.md
rename : third_party/rust/crossbeam-deque/Cargo.toml => third_party/rust/crossbeam-deque-0.2.0/Cargo.toml
rename : third_party/rust/bitflags-0.7.0/LICENSE-APACHE => third_party/rust/crossbeam-deque-0.2.0/LICENSE-APACHE
rename : third_party/rust/crossbeam-deque/README.md => third_party/rust/crossbeam-deque-0.2.0/README.md
rename : third_party/rust/crossbeam-deque/src/lib.rs => third_party/rust/crossbeam-deque-0.2.0/src/lib.rs
rename : third_party/rust/crossbeam-epoch/.cargo-checksum.json => third_party/rust/crossbeam-epoch-0.3.1/.cargo-checksum.json
rename : third_party/rust/crossbeam-epoch/.travis.yml => third_party/rust/crossbeam-epoch-0.3.1/.travis.yml
rename : third_party/rust/crossbeam-epoch/CHANGELOG.md => third_party/rust/crossbeam-epoch-0.3.1/CHANGELOG.md
rename : third_party/rust/crossbeam-epoch/Cargo.toml => third_party/rust/crossbeam-epoch-0.3.1/Cargo.toml
rename : third_party/rust/tokio-io/LICENSE-APACHE => third_party/rust/crossbeam-epoch-0.3.1/LICENSE-APACHE
rename : third_party/rust/crossbeam-epoch/README.md => third_party/rust/crossbeam-epoch-0.3.1/README.md
rename : third_party/rust/crossbeam-epoch/examples/sanitize.rs => third_party/rust/crossbeam-epoch-0.3.1/examples/sanitize.rs
rename : third_party/rust/crossbeam-epoch/src/atomic.rs => third_party/rust/crossbeam-epoch-0.3.1/src/atomic.rs
rename : third_party/rust/crossbeam-epoch/src/collector.rs => third_party/rust/crossbeam-epoch-0.3.1/src/collector.rs
rename : third_party/rust/crossbeam-epoch/src/default.rs => third_party/rust/crossbeam-epoch-0.3.1/src/default.rs
rename : third_party/rust/crossbeam-epoch/src/deferred.rs => third_party/rust/crossbeam-epoch-0.3.1/src/deferred.rs
rename : third_party/rust/crossbeam-epoch/src/epoch.rs => third_party/rust/crossbeam-epoch-0.3.1/src/epoch.rs
rename : third_party/rust/crossbeam-epoch/src/garbage.rs => third_party/rust/crossbeam-epoch-0.3.1/src/garbage.rs
rename : third_party/rust/crossbeam-epoch/src/guard.rs => third_party/rust/crossbeam-epoch-0.3.1/src/guard.rs
rename : third_party/rust/crossbeam-epoch/src/internal.rs => third_party/rust/crossbeam-epoch-0.3.1/src/internal.rs
rename : third_party/rust/crossbeam-epoch/src/lib.rs => third_party/rust/crossbeam-epoch-0.3.1/src/lib.rs
rename : third_party/rust/crossbeam-epoch/src/sync/list.rs => third_party/rust/crossbeam-epoch-0.3.1/src/sync/list.rs
rename : third_party/rust/crossbeam-epoch/src/sync/queue.rs => third_party/rust/crossbeam-epoch-0.3.1/src/sync/queue.rs
rename : third_party/rust/crossbeam-utils/.cargo-checksum.json => third_party/rust/crossbeam-utils-0.2.2/.cargo-checksum.json
rename : third_party/rust/crossbeam-utils/CHANGELOG.md => third_party/rust/crossbeam-utils-0.2.2/CHANGELOG.md
rename : third_party/rust/crossbeam-utils/Cargo.toml => third_party/rust/crossbeam-utils-0.2.2/Cargo.toml
rename : third_party/rust/bitflags-0.7.0/LICENSE-APACHE => third_party/rust/crossbeam-utils-0.2.2/LICENSE-APACHE
rename : third_party/rust/crossbeam-utils/src/atomic_option.rs => third_party/rust/crossbeam-utils-0.2.2/src/atomic_option.rs
rename : third_party/rust/crossbeam-utils/src/lib.rs => third_party/rust/crossbeam-utils-0.2.2/src/lib.rs
rename : third_party/rust/crossbeam-utils/src/scoped.rs => third_party/rust/crossbeam-utils-0.2.2/src/scoped.rs
rename : third_party/rust/bitflags-0.7.0/LICENSE-APACHE => third_party/rust/indexmap/LICENSE-APACHE
rename : third_party/rust/lazycell/.cargo-checksum.json => third_party/rust/lazycell-0.4.0/.cargo-checksum.json
rename : third_party/rust/lazycell/CHANGELOG.md => third_party/rust/lazycell-0.4.0/CHANGELOG.md
rename : third_party/rust/lazycell/Cargo.toml => third_party/rust/lazycell-0.4.0/Cargo.toml
rename : third_party/rust/bitflags-0.7.0/LICENSE-APACHE => third_party/rust/lazycell-0.4.0/LICENSE-APACHE
rename : third_party/rust/lazycell/LICENSE-MIT => third_party/rust/lazycell-0.4.0/LICENSE-MIT
rename : third_party/rust/lazycell/README.md => third_party/rust/lazycell-0.4.0/README.md
rename : third_party/rust/lazycell/src/lib.rs => third_party/rust/lazycell-0.4.0/src/lib.rs
rename : third_party/rust/bitflags-0.7.0/LICENSE-APACHE => third_party/rust/rand-0.3.22/LICENSE-APACHE
rename : third_party/rust/bitflags-0.7.0/LICENSE-MIT => third_party/rust/rand-0.3.22/LICENSE-MIT
rename : third_party/rust/rand/appveyor.yml => third_party/rust/rand-0.3.22/appveyor.yml
rename : third_party/rust/slab/.cargo-checksum.json => third_party/rust/slab-0.3.0/.cargo-checksum.json
rename : third_party/rust/slab/Cargo.toml => third_party/rust/slab-0.3.0/Cargo.toml
rename : third_party/rust/slab/README.md => third_party/rust/slab-0.3.0/README.md
rename : third_party/rust/slab/src/lib.rs => third_party/rust/slab-0.3.0/src/lib.rs
rename : third_party/rust/tokio-io/src/read_to_end.rs => third_party/rust/tokio-io/src/io/read_to_end.rs
rename : third_party/rust/tokio-io/src/read_until.rs => third_party/rust/tokio-io/src/io/read_until.rs
extra : rebase_source : 4c022c31e626832d12535d88e7caea452419ac2f
2018-08-24 00:44:17 +03:00
Cosmin Sabou 3211507dfb Merge mozilla-inbound to mozilla-central. a=merge 2018-08-24 00:40:14 +03:00
Emilio Cobos Álvarez 2340488c8b Bug 1485430 - Simplify PlaceBelowCurrentFloats. r=dbaron,mats
No reason to pass our own member as an argument.

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

--HG--
extra : moz-landing-system : lando
2018-08-22 23:29:22 +00:00
Xidorn Quan 0e1bf45a08 Bug 1484521 - Prepend bullet frame in line layout. r=jfkthame
Bug 1478178 regressed this case because bullet frame is the last frame
added to line layout, rather than the first, so when we try to apply
justification, we end up giving it the accumulated offset of the whole
line.

Bullet frame has to be added after other frames in the line have been
placed, because its presence may depend on whether the line is empty.
However, bullet frame is logically the first frame in a line and
appending it to the end is somewhat counter-intuitive.

Thus, this patch tries to fix the issue via prepending bullet frame in
line layout, so that the order of frames there can be more reliable.

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

--HG--
extra : moz-landing-system : lando
2018-08-24 10:44:04 +00:00
Emilio Cobos Álvarez b6a59eedfc Bug 488725: Don't position floats in a nowrap context until hitting a break opportunity. r=dbaron
Differential Revision: https://phabricator.services.mozilla.com/D3900
2018-08-23 16:45:01 +02:00
Gerald Squelart e3df11afd8 Bug 1483946 - Fix CSS containment issue with scrollable elements - r=dholbert
Scrollable elements already trap all of their contents, nothing should spill
out, so there is no need for special handling of the `contain` CSS property.

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

--HG--
extra : moz-landing-system : lando
2018-08-23 15:55:54 +00:00
Emilio Cobos Álvarez a52d435c07 Bug 1485525 - Land an XBL-free version of the crashtest for bug 401042. r=mats
So this keeps covered if XBL goes away.

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

--HG--
extra : moz-landing-system : lando
2018-08-23 10:43:29 +00:00
Noemi Erli a3eb003ecf Merge inbound to mozilla-central. a=merge
--HG--
rename : testing/web-platform/tests/css/motion/offset-path-string.html => testing/web-platform/tests/css/motion/offset-path-string-001.html
2018-08-22 12:49:02 +03:00
Xidorn Quan 7119449f79 Bug 1484587 - Put the behavior that overflow-wrap: break-word affecting intrinsic size behind a pref and disable it by default. r=jfkthame
Differential Revision: https://phabricator.services.mozilla.com/D3749

--HG--
extra : moz-landing-system : lando
2018-08-22 06:55:13 +00:00
Ciure Andrei 40b18c41b7 Backed out 7 changesets (bug 1429298) for xpcshell failures properties-db.js CLOSED TREE
Backed out changeset 48214a8e1b6b (bug 1429298)
Backed out changeset cc2785ab879e (bug 1429298)
Backed out changeset c217209a3b04 (bug 1429298)
Backed out changeset 196fc7b48b84 (bug 1429298)
Backed out changeset 761e9bb54adb (bug 1429298)
Backed out changeset 0b9ec0d707b5 (bug 1429298)
Backed out changeset 38ad1cc1b0c8 (bug 1429298)

--HG--
rename : testing/web-platform/tests/css/motion/offset-path-string-002.html => testing/web-platform/tests/css/motion/offset-path-string.html
2018-08-22 08:01:49 +03:00
Boris Chiou 4171197c25 Bug 1429298 - Part 2: Define offset-path and implement it in style system. r=emilio
Define OffsetPath & SVGPathData on the servo-side, and StyleMotion &
StyleSVGPath on the gecko-side. We parse the SVG Path string into a
vector of PathCommand. To build the gfx::Path, we will convert it into
gfx::Path later in a different patch.

The basic flow is:
  - Parse SVG Path String into SVGPathData (in Rust).
  - Use cbindgen to make sure the layout of PathCommand and StylePathCommand, and then set the Box[PathCommand] into nsTArray<StylePathCommand>.
  - Try to convert nsTArray<StylePathCommand> into gfx::Path. (This part will be implemented in a different patch.)

Finally, we use the gfx::Path to create a motion path transform.
The layout implementation is in the later patch.

Depends on D2962

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

--HG--
extra : moz-landing-system : lando
2018-08-22 01:24:13 +00:00
Tiberius Oros 05b46cf200 Merge mozilla-central to autoland. a=merge CLOSED TREE 2018-08-22 00:59:19 +03:00
Mike Conley 20644c9627 Bug 1485023 - Replace checks for PresShells when suppressing displayports with assertions. r=kats
Differential Revision: https://phabricator.services.mozilla.com/D3905

--HG--
extra : moz-landing-system : lando
2018-08-21 21:45:07 +00:00
Mats Palmgren 2f53d4f281 Bug 1484559 - Ensure that the scroll frame deregister its refresh driver observers (mAsyncScroll & mAsyncSmoothMSDScroll) before it's destroyed. r=dholbert 2018-08-21 14:55:22 +02:00
Boris Chiou a8bd6dfc8a Bug 1429298 - Part 2: Define offset-path and implement it in style system. r=emilio
Define OffsetPath & SVGPathData on the servo-side, and StyleMotion &
StyleSVGPath on the gecko-side. We parse the SVG Path string into a
vector of PathCommand. To build the gfx::Path, we will convert it into
gfx::Path later in a different patch.

The basic flow is:
* Parse SVG Path String into SVGPathData (in Rust).
* Use cbindgen to make sure the layout of PathCommand and StylePathCommand,
  and then set the Box[PathCommand] into nsTArray<StylePathCommand>.
* Try to convert nsTArray<StylePathCommand> into gfx::Path. (This part
  will be implemented in a different patch.)

Finally, we use the gfx::Path to create a motion path transform.
The layout implementation is in the later patch.

Differential Revision: https://phabricator.services.mozilla.com/D2963
2018-08-21 22:41:38 -07:00
shindli 22e756d763 Merge mozilla-central to inbound. a=merge CLOSED TREE 2018-08-20 12:54:42 +03:00
Jonathan Kew f010447bbe Bug 1484094 - Don't allow the caret to be placed within a ligated emoji sequence. r=m_kato 2018-08-20 09:07:40 +01:00
Kashav Madan e3060a3711 Bug 1465616 - Use the larger viewport to layout and size fixed position elements. r=mstange
Since fixed position elements are now scrollable, we need to ensure that
they're drawn into the viewport that they're attached to.

MozReview-Commit-ID: ADQXkLjwIzR

--HG--
extra : rebase_source : 2a2ec4983e2ec7f69a3c18389661e00e47ac5277
2018-07-04 16:10:04 -04:00