Commit graph

167 commits

Author SHA1 Message Date
Masayuki Nakano
e705b3211c Bug 1540015 - part 1: Make Document.h stop including nsIPresShell.h r=smaug
If `Document::GetShell()` returns `PresShell*` rather than `nsIPresShell`, it's
a good step to deCOMTaminate `PresShell`.

This patch makes `Document.h` stop including `nsIPresShell.h` since
`nsIPresShell.h` includes `Document.h` indirectly and that causes bustage
when we make `Document::GetShell()` return `PresShell*`.

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

--HG--
extra : moz-landing-system : lando
2019-03-29 15:11:04 +00:00
Dorel Luca
5a0fa68b78 Backed out 3 changesets (bug 1540015) for build bustage. CLOSED TREE
Backed out changeset 7b71c9da0214 (bug 1540015)
Backed out changeset 5723ddbc5c44 (bug 1540015)
Backed out changeset 9561d2c36fa5 (bug 1540015)
2019-03-29 16:14:26 +02:00
Masayuki Nakano
854606257b Bug 1540015 - part 1: Make Document.h stop including nsIPresShell.h r=smaug
If `Document::GetShell()` returns `PresShell*` rather than `nsIPresShell`, it's
a good step to deCOMTaminate `PresShell`.

This patch makes `Document.h` stop including `nsIPresShell.h` since
`nsIPresShell.h` includes `Document.h` indirectly and that causes bustage
when we make `Document::GetShell()` return `PresShell*`.

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

--HG--
extra : moz-landing-system : lando
2019-03-29 12:12:20 +00:00
Hiroyuki Ikezoe
f5a86384ed Bug 1532850 - Check the return value of LookAndFeel::GetInt() in case of the function failure. r=emilio
Actually the function will fail on Android since on xpcshell tests we don't
initialize AndroidBridge so that we can't query the corresponding system
settings.

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

--HG--
extra : moz-landing-system : lando
2019-03-19 10:10:39 +00:00
Coroiu Cristina
3a2e8a75c8 Backed out 2 changesets (bug 1532850) for apilint failure on a CLOSED TREE
Backed out changeset da87a2079285 (bug 1532850)
Backed out changeset d44836af07e0 (bug 1532850)
2019-03-19 12:01:40 +02:00
Hiroyuki Ikezoe
2b317e35ec Bug 1532850 - Check the return value of LookAndFeel::GetInt() in case of the function failure. r=emilio
Actually the function will fail on Android since on xpcshell tests we don't
initialize AndroidBridge so that we can't query the corresponding system
settings.

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

--HG--
extra : moz-landing-system : lando
2019-03-19 09:43:36 +00:00
Coroiu Cristina
45aa39f3f6 Backed out 2 changesets (bug 1532850) for Android bustage on a CLOSED TREE
Backed out changeset d32559ed093f (bug 1532850)
Backed out changeset 439686eac8d6 (bug 1532850)
2019-03-19 11:20:24 +02:00
Hiroyuki Ikezoe
af3b3da60e Bug 1532850 - Check the return value of LookAndFeel::GetInt() in case of the function failure. r=emilio
Actually the function will fail on Android since on xpcshell tests we don't
initialize AndroidBridge so that we can't query the corresponding system
settings.

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

--HG--
extra : moz-landing-system : lando
2019-03-18 22:57:42 +00:00
Cameron McCormack
082aab3aaf Bug 1534471 - Reformat a couple of layout/style/ files. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D23059

--HG--
extra : moz-landing-system : lando
2019-03-12 00:14:00 +00:00
Csoregi Natalia
afc7afdf16 Backed out 2 changesets (bug 1532850) for apilint failure. CLOSED TREE
Backed out changeset 8feadb1f48f2 (bug 1532850)
Backed out changeset d3eed8f55897 (bug 1532850)
2019-03-09 03:13:56 +02:00
Hiroyuki Ikezoe
3673780587 Bug 1532850 - Check the return value of LookAndFeel::GetInt() in case of the function failure. r=emilio
Actually the function will fail on Android since on xpcshell tests we don't
initialize AndroidBridge so that we can't query the corresponding system
settings.

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

--HG--
extra : moz-landing-system : lando
2019-03-09 00:17:19 +00:00
Ryan Hunt
b936c00a65 Bug 1523969 part 14 - Move method definition inline comments to new line in 'layout/'. r=dholbert
Differential Revision: https://phabricator.services.mozilla.com/D21115

--HG--
extra : rebase_source : 4d65c07d8822f3a54ac881b5d0f55468ce884554
2019-02-25 16:09:24 -06:00
Emilio Cobos Álvarez
8ccb77e27d Bug 1528712 - Remove a couple trivial dependencies on nsPresContext. r=heycam
Differential Revision: https://phabricator.services.mozilla.com/D20141
2019-02-19 14:54:01 +01:00
Ciure Andrei
965d533ca4 Backed out 2 changesets (bug 1528712) for Linux spcshell and reftest failures (test_ext_browserSettings.js, 1022481-1.html) CLOSED TREE
Backed out changeset 2d5c4e71e258 (bug 1528712)
Backed out changeset d981515b874b (bug 1528712)
2019-02-19 14:25:57 +02:00
Emilio Cobos Álvarez
522e6c9366 Bug 1528712 - Remove a couple trivial dependencies on nsPresContext. r=heycam
Differential Revision: https://phabricator.services.mozilla.com/D20141

--HG--
extra : moz-landing-system : lando
2019-02-19 11:17:28 +00:00
Sylvestre Ledru
e0c61dafa5 Bug 1519636 - Reformat recent changes to the Google coding style r=Ehsan
Summary: # ignore-this-changeset

Reviewers: Ehsan

Reviewed By: Ehsan

Subscribers: emilio, jandem, bbouvier, jya

Bug #: 1519636

Differential Revision: https://phabricator.services.mozilla.com/D20062
2019-02-16 20:20:37 +01:00
Jonathan Kingston
83bd9bdac8 Bug 1494034 - Add support for CSS prefers-color-scheme media feature. r=emilio 2019-02-15 21:40:35 +01:00
Martin Stransky
8ddc948f81 Bug 1433667 - Honour system titlebar button left/right placement, r=dao
Differential Revision: https://phabricator.services.mozilla.com/D16466

--HG--
extra : moz-landing-system : lando
2019-01-18 13:52:29 +00:00
Martin Stransky
53be695239 Bug 1490344 - [Linux/Gtk] Enable hidden system titlebar by default on Gnome, r=dao
This patch implements -moz-gtk-csd-hide-titlebar-by-default media query
to check if the system titlebar should be disabled by default on Linux systems
(it's already disabled on Window/Mac).

It also removes explicit definition of browser.tabs.drawInTitlebar preference on Linux.
When browser.tabs.drawInTitlebar is missing the -moz-gtk-csd-hide-titlebar-by-default
is used to obtain the titlebar state. When browser.tabs.drawInTitlebar is set
in about:config or by Customize menu, the user peference is used instead of the default.

It also fixes a -moz-gtk-csd-available media query,
it was always true regardless the actual system setting.

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

--HG--
extra : moz-landing-system : lando
2019-01-17 12:44:49 +00:00
Andreea Pavel
d0b4b569af Backed out changeset aa442da7cfd8 (bug 1490344) for failing bc at browser/components/customizableui/test/browser_970511_undo_restore_default.js on a CLOSED TREE 2019-01-16 13:33:24 +02:00
Martin Stransky
0e01fab619 Bug 1490344 - [Linux/Gtk] Enable hidden system titlebar by default on Gnome, r=dao
This patch implements -moz-gtk-csd-hide-titlebar-by-default media query
to check if the system titlebar should be disabled by default on Linux systems
(it's already disabled on Window/Mac).

It also removes explicit definition of browser.tabs.drawInTitlebar preference on Linux.
When browser.tabs.drawInTitlebar is missing the -moz-gtk-csd-hide-titlebar-by-default
is used to obtain the titlebar state. When browser.tabs.drawInTitlebar is set
in about:config or by Customize menu, the user peference is used instead of the default.

It also fixes a -moz-gtk-csd-available media query,
it was always true regardless the actual system setting.

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

--HG--
extra : moz-landing-system : lando
2019-01-15 14:47:03 +00:00
Emilio Cobos Álvarez
d2ed260822 Bug 1517241 - Rename nsIDocument to mozilla::dom::Document. r=smaug
Summary: Really sorry for the size of the patch. It's mostly automatic
s/nsIDocument/Document/ but I had to fix up in a bunch of places manually to
add the right namespacing and such.

Overall it's not a very interesting patch I think.

nsDocument.cpp turns into Document.cpp, nsIDocument.h into Document.h and
nsIDocumentInlines.h into DocumentInlines.h.

I also changed a bunch of nsCOMPtr usage to RefPtr, but not all of it.

While fixing up some of the bits I also removed some unneeded OwnerDoc() null
checks and such, but I didn't do anything riskier than that.
2019-01-03 17:48:33 +01:00
Sylvestre Ledru
265e672179 Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format
# ignore-this-changeset

--HG--
extra : amend_source : 4d301d3b0b8711c4692392aa76088ba7fd7d1022
2018-11-30 11:46:48 +01:00
Emilio Cobos Álvarez
1f08e736e4 Bug 1505159 - Make some media features code nicer using [infallible]. r=hiro
Differential Revision: https://phabricator.services.mozilla.com/D11102

--HG--
extra : moz-landing-system : lando
2018-11-06 21:06:00 +00:00
Hiroyuki Ikezoe
8d7b51d943 Bug 1486960 - Pretend there is only a touch screen device if touch similation is enabled on RDM. #firefox-style-system-reviewers r=emilio
When the touch similation is enabled on RDM, TOUCHEVENTS_OVERRIDE_ENABLED is
propagated to all descendants docShells, so that we can just query it and return
PointerCapabilities::Coarse for the case.

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

--HG--
extra : moz-landing-system : lando
2018-10-30 21:24:04 +00:00
Cameron McCormack
ab29a5a596 Bug 1498755 - Part 2c: Allow ServoBindings.h and GeckoBindings.h to be used separately r=emilio
Depends on D8643

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

--HG--
extra : moz-landing-system : lando
2018-10-14 00:05:48 +00:00
Nicholas Nethercote
7398ecce66 Bug 1449787 - Make static atom pointers constexpr. r=froydnj,emilio
This saves one word per static atom, per process.

The `nsGkAtoms` change is only a small part of this commit.

In regen_atoms.py:

- There is now only one link name per platform: nsGkAtoms::sAtoms[].

- But there is a new constant per atom, giving the index into
  nsGkAtoms::sAtoms[].

- And the `atom!` macro for each atom indexes into nsGkAtoms::sAtoms[] using
  the index constant.

- A couple of `*mut` pointers are now `*const`.

Elsewhere, the `(nsStaticAtom*)` casts within the `AppendElement()` calls are
necessary to avoid link errors, presumably due to some template instantiation
wrinkle.

--HG--
extra : rebase_source : 629642e708c8bc6e27d6057beae5f35955fdd837
2018-10-04 09:16:11 +10:00
Nicholas Nethercote
adaf03f650 Bug 1449787 - Reduce indirection for static pointers in nsMediaFeature. r=emilio
The patch also changes sSystemMetrics to not refcount its elements, because
static atoms don't need refcounting.

MozReview-Commit-ID: 7uf7YjyNaZp

--HG--
extra : rebase_source : 210f2f24632c242e1d3fb129285717dafe0660d4
2018-04-26 13:28:26 +10:00
Martin Stransky
89822d9f40 Bug 1493145 - [CSD] Enable round corners by default by -moz-gtk-csd-transparent-background media query, r=dao
Replace mozilla.widget.use-argb-visuals pref by -moz-gtk-csd-transparent-background media query at browser.css
to draw transparent background. The media query is set by toolkit code and enabled when compatible
window manager is detected.

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

--HG--
extra : moz-landing-system : lando
2018-09-25 11:53:04 +00:00
Hiroyuki Ikezoe
17186e2c2f Bug 1483111 - Implement any-hover and any-pointer media queries features. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D3609
2018-08-17 20:29:37 +09:00
Hiroyuki Ikezoe
ef03e2a299 Bug 1035774 - Add media feature keys for hover and pointer. r=heycam,emilio
Summary:
https://drafts.csswg.org/mediaqueries-4/#hover
https://drafts.csswg.org/mediaqueries-4/#pointer

In this patch series, we don't introduce any-hover and any-pointer media
features yet, but functionalities for them on each platform backends will be
introduced in this patch series, so eIntID_AllPointerCapabilities and relevant
stuff is added in this patch for the convenience that each platform backends
can be reviewed at once.

Differential Revision: https://phabricator.services.mozilla.com/D3296
2018-08-14 17:13:04 +09:00
Emilio Cobos Álvarez
94eb4ee48e Bug 1483808 - Make webkit device-pixel-ratio media queries a proper alias to resolution. r=dholbert
According to the spec:

  https://compat.spec.whatwg.org/#css-media-queries-webkit-device-pixel-ratio

And to the Chromium implementation:

  https://cs.chromium.org/chromium/src/third_party/blink/renderer/core/css/media_query_evaluator.cc?l=366&rcl=1d7328865bcf06a687aafc18ff95d55317030672

They're no different than resolution.

In our implementation `resolution` does slightly different stuff. Given we
still haven't shipped -webkit-device-pixel-ratio, making this match resolution
looks better than the opposite.

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

--HG--
extra : moz-landing-system : lando
2018-08-17 21:25:37 +00:00
Emilio Cobos Álvarez
accc448c34 Bug 1483823 - Deduplicate system metric atoms. r=xidorn
Now that :-moz-system-metric is gone, there's no real reason for the atoms to
be separate.

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

--HG--
extra : moz-landing-system : lando
2018-08-17 01:07:22 +00:00
Emilio Cobos Álvarez
03eea217a8 Bug 1481961: Rewrite media queries so that they work on an evaluator function. r=xidorn
This moves most of the code to be Rust, except potentially some evaluator
functions, and allows to unblock the use case from any-hover / any-pointer and
remove nsMediaFeatures.

Differential Revision: https://phabricator.services.mozilla.com/D2976
2018-08-15 16:09:19 +02:00
Ting-Yu Lin
48d02834a5 Bug 1482665 Part 2 - Remove nsPresContext::AppUnitsPerCSSPixel() and replace it with mozilla::AppUnitsPerCSSPixel(). r=dholbert
Differential Revision: https://phabricator.services.mozilla.com/D3155
2018-08-13 14:29:28 -07:00
Emilio Cobos Álvarez
27250792bc Bug 1479240: Make system metric queries always return false instead of not matching for fingerprinting-resistance. r=heycam
Looks like these used this mechanism for no great reason, and actually doing
this exposes trivially whether fingerprinting-resistance is enabled, which looks
like an anti-goal (if a media query parses correctly, and doesn't match either 1
or 0, then fingerprinting-resistance is enabled).

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

MozReview-Commit-ID: 76tIIkwlpeP
2018-07-31 12:55:59 +02:00
Emilio Cobos Álvarez
f8c5ea739f Bug 1466614: Remove a no longer used function. r=me CLOSED TREE
MozReview-Commit-ID: GBFaR3SNY0F
2018-07-30 12:00:57 +02:00
Emilio Cobos Álvarez
3aaf4c171a Bug 1466614: Remove -moz-windows-theme. r=xidorn
Differential Revision: https://phabricator.services.mozilla.com/D2492

MozReview-Commit-ID: 70vOmLH7C27
2018-07-30 11:38:46 +02:00
Emilio Cobos Álvarez
051e9a8579 Bug 1479239: prefers-reduced-motion should be sensible re. unsupported platforms / resistFingerprinting. r=hiro
With the current early-returning behavior, the expression will unconditionally
evaluate to false, which is a bit of a footgun.

Make sure to always return no-preference in unsupported platforms or when
resisting fingerprinting.

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

MozReview-Commit-ID: 41uUudut7b4
2018-07-29 04:46:34 +02:00
Emilio Cobos Álvarez
726673649b Bug 1479230: Remove useless condition in GetPrefersReducedMotion. r=hiro
This query is always enabled in content, so this check is always true.

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

MozReview-Commit-ID: 5etk5TM0agz
2018-07-29 03:01:08 +02:00
Hiroyuki Ikezoe
4785e473c5 Bug 1478158 - Don't expose prefers-reduced-motion setting in content if Resist Fingerprinting enabled. r=heycam
MozReview-Commit-ID: JaTTT0HIjFx

--HG--
extra : rebase_source : bf3d44ed400960de5dd3d1b6e8571eab859c8897
2018-07-25 07:36:19 +09:00
Hiroyuki Ikezoe
ea2e577fa3 Bug 1365045 - Introduce keywords for prefers-reduced-motion. r=heycam
https://drafts.csswg.org/mediaqueries-5/#prefers-reduced-motion

MozReview-Commit-ID: RQUo1DBR0W
2018-07-24 16:50:47 +09:00
Stephen A Pohl
1f2e716a79 Bug 1466335: Automatically switch to the appropriate Firefox theme based on the macOS dark mode system preference. r=dao,mstange 2018-06-27 13:59:21 -04:00
Emilio Cobos Álvarez
f4b0b148b3 Bug 1468854: Restrict -moz-is-resource-document to UA and chrome stylesheets. r=mats
MozReview-Commit-ID: 3vpNtgdy0yl
2018-06-14 15:10:29 -07:00
Nazım Can Altınova
96428ffd26 Bug 1451289 - Part 8: Merge ServoSupportsRule and CSSSupportsRule r=emilio
MozReview-Commit-ID: HX6NJNGJi0p

--HG--
extra : rebase_source : 02b885d8dc5eb7c0c31989ccc291973193220a59
2018-06-05 15:17:08 +02:00
Xidorn Quan
f2ba299166 Bug 1448759 part 1 - Make KTableEntry an independent type. r=heycam
MozReview-Commit-ID: oZfJAigThN

--HG--
extra : rebase_source : 6a0efbf40fed8c9eaba7bb3af74d281b536677c8
2018-04-29 21:17:26 +10:00
Emilio Cobos Álvarez
f7522ae728 Bug 1447358: Unifdef the old style system code. r=jwatt
Summary:
This has been automatically generated using:

  http://dotat.at/prog/unifdef/

And:

find $OBJDIR -type f -name '*.h' |
while read FILE; do
  echo "$FILE"
  unifdef -m -DMOZ_STYLO -UMOZ_OLD_STYLE "$FILE";
done

find $OBJDIR -type f -name '*.cpp' |
while read FILE; do
  echo "$FILE"
  unifdef -m -DMOZ_STYLO -UMOZ_OLD_STYLE "$FILE";
done

MozReview-Commit-ID: I4NdKqbMXzJ

Reviewers: jwatt

Bug #: 1447358

Differential Revision: https://phabricator.services.mozilla.com/D779
2018-03-21 10:20:34 +01:00
Emilio Cobos Álvarez
5f157cdc49 Bug 1443205: followup: Fix a typo from the previous patch. r=me
MozReview-Commit-ID: Iv3sGbJUin8
2018-03-06 11:04:55 +01:00
Emilio Cobos Álvarez
8a71d9537a Bug 1443205: Convert media feature values to enum classes. r=xidorn
Reviewers: xidorn

Bug #: 1443205

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

MozReview-Commit-ID: E0zQHBv0Ysc
2018-03-06 10:04:08 +01:00
Hiroyuki Ikezoe
1b0cba9367 Bug 1417354 - Introduce nsIDocument::GetPresContext(). r=smaug
It would be convenient to get nsPresContext from nsIDocument.

MozReview-Commit-ID: Ei6V3UE8XGr

--HG--
extra : rebase_source : 8d2a917eb62cf341e4e1810451fd01c01dbc3bad
2018-02-21 07:00:10 +09:00