Commit graph

19949 commits

Author SHA1 Message Date
Ting-Yu Lin
63457d2b61 Bug 1548673 Part 1 - Rename NS_INTRINSIC_WIDTH_UNKNOWN to NS_INTRINSIC_ISIZE_UNKNOWN. r=jfkthame
This patch is generated by running the following script under layout/,
and then manually delete the FIXME comment in LayoutConstants.h

  #!/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_INTRINSIC_WIDTH_UNKNOWN NS_INTRINSIC_ISIZE_UNKNOWN

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

--HG--
extra : moz-landing-system : lando
2019-05-03 17:34:36 +00:00
Michael Kaply
fca7f5580c Bug 1548587 - Add addl preferences for dom keyboard hacks. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D29696

--HG--
extra : moz-landing-system : lando
2019-05-03 09:41:39 +00:00
Emilio Cobos Álvarez
b3863ed908 Bug 1547792 - AspectRatio should be a single ratio, not a size. r=dholbert
Differential Revision: https://phabricator.services.mozilla.com/D29244

--HG--
extra : moz-landing-system : lando
2019-05-02 23:28:21 +00:00
Brindusan Cristian
9deae973cd Merge mozilla-central to inbound. a=merge CLOSED TREE 2019-05-02 18:33:18 +03:00
Brindusan Cristian
8f1402e37c Merge mozilla-central to inbound. a=merge CLOSED TREE 2019-05-02 12:56:28 +03:00
Masayuki Nakano
14b7642127 Bug 1547422 - Make widget use mozilla::PresShell directly rather than via nsIPresShell r=jmathies
This patch makes widget use `mozilla::PresShell` directly rather than via
`nsIPresShell` and changes some pure virtual methods of `nsIPresShell` which
called by widget to `mozilla::PresShell`'s non-virtual methods.

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

--HG--
extra : moz-landing-system : lando
2019-05-01 18:52:59 +00:00
Noemi Erli
f1ef21cbc7 Backed out changeset 8c89fd37b79d (bug 1544242) for failures in browser_rules_shadowdom_slot_rules.js CLOSED TREE 2019-05-01 22:03:06 +03:00
Emilio Cobos Álvarez
fb5b637f4f Bug 1544242 - Fix selector-matching for nested pseudo-elements. r=heycam,mats
We always include the combinator for pseudo-elements now (not including it was
just an optimization) in order to not match when nested pseudo-elements are
involved.

We could add a more generic check in `matches_simple_selector` like:

```
if element.is_pseudo_element() {
    match *selector {
        Component::PseudoElement(..) |
        Component::NonTSPseudoClass(..) => {},
        _ => return false,
    }
}
```

But even that wouldn't be enough to make selectors like `:hover::marker` not
match on the `::before::marker` pseudo-element, plus that code is really hot.

So for now do the check on the `next_element_for_combinator` function. It's a
bit hacky but it's the best I could came up with...

While at it, simplify some checks to use is_pseudo_element() instead of
implemented_pseudo_element() directly.

Only the Rust patch as-is would make markers for ::before and ::after on list
items not show up, so we also need to switch ::marker to use ProbeMarkerStyle()
rather than ProbePseudoElementStyle(), since the marker should exist even if it
matches no rules.

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

--HG--
extra : moz-landing-system : lando
2019-05-01 17:19:08 +00:00
Sylvestre Ledru
e226046cb8 Bug 1547143 - Format the tree: Be prescriptive with the pointer style (left) r=Ehsan
# ignore-this-changeset

Depends on D28954

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

--HG--
extra : moz-landing-system : lando
2019-05-01 08:47:10 +00:00
Matt Woodrow
3fc4716479 Bug 1535945 - Don't skip invalidating frames when creating displayports for async scrollable ancestors. r=tnikkel
Differential Revision: https://phabricator.services.mozilla.com/D23816

--HG--
extra : moz-landing-system : lando
2019-05-01 04:23:07 +00:00
Gijs Kruitbosch
811c33eeca Bug 1515204 - add mouseup after drop in EventUtils, r=NeilDeakin
Differential Revision: https://phabricator.services.mozilla.com/D28749

--HG--
extra : moz-landing-system : lando
2019-04-30 12:55:23 +00:00
Sebastian Hengst
a886d2b7f8 Bug 1547416 - Move nsIPresShell::ScrollAxis to PresShellForwards.h: correct conflict fix. a=bustage-fix 2019-04-30 14:11:09 +02:00
Sebastian Hengst
f69afa2cd0 Merge autoland to mozilla-central. a=merge 2019-04-30 13:31:28 +02:00
Masayuki Nakano
7c6b8177e2 Bug 1547418 - Make CapturingContentInfo a private struct of PresShell and move APIs for it from nsIPresShell to PresShell r=smaug a=reland
`CapturingContentInfo` struct is used only in `PresShell.cpp` so that we can
make it a private struct of `PresShell` if we move all users of them,
i.e., API to access them, from `nsIPresShell` to `PresShell`.

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

--HG--
extra : source : 91ac1bb728ef0c25e230bae50297794dd631f8f6
extra : amend_source : 920f6137dba0e2f63182297d373f4f59be783113
2019-04-30 00:26:57 +00:00
Masayuki Nakano
14c20e04b1 Bug 1547416 - Move nsIPresShell::ScrollAxis to PresShellForwards.h r=smaug
`nsIPresShell::ScrollAxis` can be used anywhere and it's used by some
utils actually. So, it should be in `mozilla` namespace and perhaps,
 `PresShellForwards.h` is a good place to move it rather than creating
new header file.

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

--HG--
extra : source : d89587999df100be804a749694ac08fffd5ab39d
2019-04-30 00:07:49 +00:00
Csoregi Natalia
29261f02c1 Backed out 2 changesets (bug 1516722) for wpt failures on scroll-restoration-fragment-scrolling-samedoc.html. a=backout
Backed out changeset 8f2db95f0610 (bug 1516722)
Backed out changeset 55c8e6f3e522 (bug 1516722)
2019-04-30 13:15:29 +03:00
Csoregi Natalia
b378f30b76 Backed out 2 changesets (bug 1547416, bug 1547418) for causing conflicts. a=backout
Backed out changeset 91ac1bb728ef (bug 1547418)
Backed out changeset d89587999df1 (bug 1547416)
2019-04-30 13:13:46 +03:00
Masayuki Nakano
f3bcf4c6d1 Bug 1547418 - Make CapturingContentInfo a private struct of PresShell and move APIs for it from nsIPresShell to PresShell r=smaug
`CapturingContentInfo` struct is used only in `PresShell.cpp` so that we can
make it a private struct of `PresShell` if we move all users of them,
i.e., API to access them, from `nsIPresShell` to `PresShell`.

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

--HG--
extra : moz-landing-system : lando
2019-04-30 00:26:57 +00:00
Masayuki Nakano
bad5d5bfe9 Bug 1547416 - Move nsIPresShell::ScrollAxis to PresShellForwards.h r=smaug
`nsIPresShell::ScrollAxis` can be used anywhere and it's used by some
utils actually. So, it should be in `mozilla` namespace and perhaps,
 `PresShellForwards.h` is a good place to move it rather than creating
new header file.

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

--HG--
extra : moz-landing-system : lando
2019-04-30 00:07:49 +00:00
Masayuki Nakano
c2709a0087 Bug 1547535 - Move all a11y code in nsIPresShell to mozilla::PresShell r=Jamie
Differential Revision: https://phabricator.services.mozilla.com/D29196

--HG--
extra : moz-landing-system : lando
2019-04-30 07:53:20 +00:00
Brad Werth
47f6d7796a Bug 1538681 Part 1: Backout a change that added an early-exit in MobileViewportManager::UpdateResolution. r=botond
This change was originally added as a drive-by optimization in Bug 1501665.
The early-exit apparently routes around a needed side effect in the case
where resolution is re-set to its current value.

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

--HG--
extra : moz-landing-system : lando
2019-04-29 17:54:19 +00:00
Botond Ballo
7bbc3c40e5 Bug 1516722 - Also scroll the visual viewport in ScrollToShowRect() if necessary. r=kats
Differential Revision: https://phabricator.services.mozilla.com/D29079

--HG--
extra : moz-landing-system : lando
2019-04-29 15:45:44 +00:00
Masayuki Nakano
36e5df54ec Bug 1547621 - Move all inline methods of nsIPresShell into mozilla::PresShell r=smaug
And also this patch moves some related methods which use the inline methods
and member variables used only by them.

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

--HG--
rename : layout/base/nsIPresShellInlines.h => layout/base/PresShellInlines.h
extra : moz-landing-system : lando
2019-04-30 01:52:53 +00:00
Masayuki Nakano
2f69dfdd5d Bug 1547536 - Make PresShell QI-able for aware of do_QueryReferent() r=smaug
There is the following usage of nsIPresShell:
```
nsCOMPtr<nsIPresShell> presShell = do_QueryReferent(mPresShellWeak);
```

So, for changing this to:
```
RefPtr<PresShell> presShell = do_QueryReferent(mPresShellWeak);
```

PresShell should have its own IID.

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

--HG--
extra : moz-landing-system : lando
2019-04-30 00:56:14 +00:00
Jonas Allmann
a409257d6d Bug 1546990 - Remove several files from eval()-assertion whitelist, r=ckerschb
Refactor several occurences of `setTimeout()` to avoid triggering the `eval()` assertion.

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

--HG--
extra : moz-landing-system : lando
2019-04-29 11:20:37 +00:00
Sylvestre Ledru
96da5036ad Bug 1519636 - Reformat recent changes to the Google coding style r=Ehsan
# ignore-this-changeset

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

--HG--
extra : moz-landing-system : lando
2019-04-28 09:30:05 +00:00
Emilio Cobos Álvarez
30fc959628 Bug 1547261 - Add a crashtest. r=me 2019-04-27 13:22:37 +02:00
Botond Ballo
50a070b645 Bug 1531796 - Call NotifyApzTransaction() for skipped paints, too. r=rhunt,kats
We need to do this separately in the WR and non-WR codepaths for picking up
scroll updates for skipped paints.

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

--HG--
extra : moz-landing-system : lando
2019-04-27 05:06:23 +00:00
Fariskhi Vidyan
6e5ad8de80 Bug 1272409 - Part 4: Integrate ResizeObserver with Document and reflow. r=dholbert,smaug
Depends on D27617

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

--HG--
extra : moz-landing-system : lando
2019-04-26 20:29:18 +00:00
Botond Ballo
32567fa488 Bug 1529892 - Move the clearing of a pending visual scroll update to the end of the paint. r=kats
The fixes a latent bug with WebRender where we would clear it after reading it
in ComputeScrollMetadata, but WR would sometimes call ComputeScrollMetadata a
second time for the same scroll frame in the same transaction, resulting in
the update sometimes not making it into the transaction.

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

--HG--
extra : moz-landing-system : lando
2019-04-26 05:14:00 +00:00
Botond Ballo
d33987f123 Bug 1529892 - Extend APZTestData with free-form additional data not grouped by paint or scroll frame. r=kats,Ehsan
Differential Revision: https://phabricator.services.mozilla.com/D28773

--HG--
extra : moz-landing-system : lando
2019-04-26 05:10:44 +00:00
Emilio Cobos Álvarez
11ea945833 Bug 1546697 - Use a consistent style for enum classes in layout. r=dholbert
Per the discussion in:

  https://groups.google.com/d/msg/mozilla.dev.platform/P79pwa9z5m8/iPYPAWPHCAAJ

They should be CamelCase, and that's what most of them already do. This converts
the rest, which are a few.

For the ones that already used `e` or `k` prefixes, I've mostly done:

 for file in $(rg Type::e layout | cut -d : -f 1 | sort | uniq); do sed -i 's#Type::e#Type::#g' $file; done

For the ones that used uppercase, I've removed the prefix if it was already in
the type name, and turn them into CamelCase.

Depends on D28680

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

--HG--
extra : moz-landing-system : lando
2019-04-25 23:03:04 +00:00
Emilio Cobos Álvarez
3e1e7ce302 Bug 1547138 - IntrinsicSize shouldn't use nsStyleCoord. r=dholbert
We have a better type to represent "a coord or nothing", and that's Maybe.

This code is shorter, and I think reads generally better / is less easy to
misuse.

I wrote this on top of bug 1547126 so there shouldn't be conflicts.

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

--HG--
extra : moz-landing-system : lando
2019-04-25 23:48:14 +00:00
Daniel Varga
46db25d004 Backed out 5 changesets (bug 1272409) for build bustage at /builds/worker/workspace/build/src/dom/base/nsGlobalWindowCommands. On a CLOSED TREE
Backed out changeset 2ad8260489d6 (bug 1272409)
Backed out changeset 224dad4cbdc3 (bug 1272409)
Backed out changeset 72775dbf35c8 (bug 1272409)
Backed out changeset c331a4a8b343 (bug 1272409)
Backed out changeset d817fbfc52b6 (bug 1272409)
2019-04-26 02:41:43 +03:00
Fariskhi Vidyan
55597e55fc Bug 1272409 - Part 4: Integrate ResizeObserver with Document and reflow. r=dholbert,smaug
Depends on D27617

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

--HG--
extra : moz-landing-system : lando
2019-04-25 18:30:16 +00:00
Emilio Cobos Álvarez
2b46634961 Bug 1546329 - Remove dead skins code. r=bzbarsky
Differential Revision: https://phabricator.services.mozilla.com//D28459
2019-04-25 14:00:06 +02:00
Emilio Cobos Álvarez
1c3126eaaa Bug 1545699 - Track editor stylesheets better. r=masayuki
Replacing the whole set of user-agent stylesheets seems a bit overkill.

Differential Revision: https://phabricator.services.mozilla.com/D28212
2019-04-25 14:00:01 +02:00
Masayuki Nakano
2933c032e7 Bug 1545342 - part 3: Move remaining public enum of nsIPresShell to mozilla namespace in mozilla/PresShellForwards.h and make them enum class r=smaug
This patch moves remaining public `enum` of `nsIPresShell` to `mozilla`
namespace in `mozilla/PresShellForwards.h` and make them `enum class`es.

Additionally, some methods which use the moving `enum`s from `nsIPresShell`
to `PresShell`.

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

--HG--
extra : moz-landing-system : lando
2019-04-25 05:04:23 +00:00
Masayuki Nakano
3622509485 Bug 1545342 - part 2: Make some public enum of nsIPresShell move to mozilla namespace and defined as enum class in PresShellForwards.h r=smaug
This patch moves some `enum` in `nsIPresShell` which are in public scope into
`mozilla` namespace and change them as `enum class`es.

Unfortunately, only "where to scroll" enum is just defines constants of
percentages of scroll destination.  Therefore, this patch makes only them
as `static const`.

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

--HG--
extra : moz-landing-system : lando
2019-04-25 05:04:15 +00:00
Masayuki Nakano
5932f01d53 Bug 1545342 - part 1: Create mozilla/PresShellForwards.h and move global enums/constants in nsIPresShell.h and mozilla/PresShell.h into the new one r=smaug
This patch creates new header, `mozilla/PresShellForwards.h`.  It should have
all forward declarations of global class/struct in `nsIPresShell.h` and
`mozilla/PresShell.h`.

Additionally, this moves all `enum`s and `constant`s in them into the new file
with changing them to `enum class`es.

This will make other headers which require only specific types in the header
files not include them.

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

--HG--
extra : moz-landing-system : lando
2019-04-25 05:02:20 +00:00
Ting-Yu Lin
49cfcc232c Bug 1546223 Part 4 - Mechanically replace pointer with Maybe for ReflowInput's optional containing block size. r=dholbert
There's no behavior change in this patch.

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

--HG--
extra : moz-landing-system : lando
2019-04-24 17:35:31 +00:00
Brindusan Cristian
f92b05e5f0 Merge inbound to mozilla-central. a=merge
--HG--
rename : dom/ipc/TabParent.cpp => dom/ipc/BrowserParent.cpp
2019-04-25 00:54:01 +03:00
Emilio Cobos Álvarez
88a1b27597 Bug 1546046 - Remove support for XBL resources. r=TYLin
So much unsound code going away :-)

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

--HG--
extra : moz-landing-system : lando
2019-04-23 16:43:15 +00:00
Masayuki Nakano
530d2600c3 Bug 1543315 - part 12: Mark nsIPresShell::DoScrollContentIntoView() as MOZ_CAN_RUN_SCRIPT r=smaug
Now, we can mark `DoScrollContentIntoView()` as `MOZ_CAN_RUN_SCRIPT` and move
it from `nsIPresShell` to `PresShell` with a member.

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

--HG--
extra : moz-landing-system : lando
2019-04-23 01:34:26 +00:00
Masayuki Nakano
3bd62fb08a Bug 1543315 - part 11: Mark nsIPresShell::ScrollContentIntoView() as MOZ_CAN_RUN_SCRIPT r=smaug
This patch marks `ScrollContentIntoView()` as `MOZ_CAN_RUN_SCRIPT` and changing
some callers of them to guarantee thar their parent callers are also safe.

Additionally, this patch moves it from `nsIPresShell` to `PresShell` because
all callers can refer `PresShell` directly.

Unfortunately, this patch changes a lot of methods in autocomplete and satchel
since this patch needs to mark some interface methods as `can_run_script` and
they are called each other.  This means that autocomplete module is really
sensitive like editor module.  Perhaps, autocomplete and satchel should do
scroll asynchronously and unmark some of them as `MOZ_CAN_RUN_SCRIPT` again.

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

--HG--
extra : moz-landing-system : lando
2019-04-23 01:34:24 +00:00
Masayuki Nakano
65aa369673 Bug 1543315 - part 10: Mark nsIPresShell::GoToAnchor() and nsIPresShell::ScrollToAnchor() as MOZ_CAN_RUN_SCRIPT r=smaug
Next, we should mark `PresShell::ScrollContentIntoView()` as
`MOZ_CAN_RUN_SCRIPT` because it's used widely.

This patch marks its `PresShell` users, `GoToAnchor()` and `ScrollToAnchor()`,
as `MOZ_CAN_RUN_SCRIPT`.  Additionally, this patch moves them from
`nsIPresShell` to `PresShell` because all callers refers `PresShell` directly.

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

--HG--
extra : moz-landing-system : lando
2019-04-23 01:27:47 +00:00
Hiroyuki Ikezoe
8bd0453a43 Bug 1528052 - Suppress resize events until the initial paint has finished on mobile. r=botond
Differential Revision: https://phabricator.services.mozilla.com/D28172

--HG--
extra : moz-landing-system : lando
2019-04-23 04:14:55 +00:00
Bogdan Tara
ec489aa170 Backed out changeset e85cb54e5944 (bug 1546046) complementary backout after 1470880 was backed out CLOSED TREE 2019-04-23 06:55:29 +03:00
Emilio Cobos Álvarez
daef6a8b67 Bug 1546046 - Remove support for XBL resources. r=TYLin
So much unsound code going away :-)

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

--HG--
extra : moz-landing-system : lando
2019-04-22 21:57:22 +00:00
Jeff Gilbert
544759b391 Bug 1545892 - Reduce includes in gfx2DGlue.h, nsLayoutUtils.h, nsPresContext.h. r=dholbert
Differential Revision: https://phabricator.services.mozilla.com/D28266

--HG--
extra : moz-landing-system : lando
2019-04-22 19:58:52 +00:00