This scan no longer serves a useful purpose in production, now that mandatory
extension signing requires manifest changes after update.
MozReview-Commit-ID: 817qRuyzL5P
--HG--
extra : rebase_source : 7c90c8319ee84fa0ea32d81e58a8af13281714d7
extra : source : 237268e3d9d2d269dbb555bed54470925d54aa88
The background page do not need to use the AddonManager to set its preferred debugging global
anymore (and it would not be able to use it from the extension child process).
MozReview-Commit-ID: 2IAxvCjDKvl
--HG--
extra : rebase_source : 5d39269d73f4b6582efe1af10e0575aa6bd52db6
The background page do not need to use the AddonManager to set its preferred debugging global
anymore (and it would not be able to use it from the extension child process).
MozReview-Commit-ID: 2IAxvCjDKvl
--HG--
extra : rebase_source : eb10f2c71e74f27a0151459a53f5ce6269392155
This change prepare the WebExtensions internals to the changes applied to the
addon debugging facilities in the other patches from this queue.
In ExtensionParent.jsm, a HiddenXULWindow helper class has been refactored out
of the HiddenExtensionPage and then reused by both HiddenExtensionPage and
the new DebugUtils object.
The DebugUtils object provides the utility methods used by the
devtools actors related to the addon debugging, which are used to retrieve
an "extension process browser XUL element" (a XUL browser element that has been
configured by DebugUtils to be used to connect the devtools parent
actor to the process where the target extension is running), and then release it
when it is not needed anymore (because the developer toolbox has been closed and
all the devtools actors destroyed).
The DebugUtils object used the HiddenXULWindow class to lazily create
an hidden XUL window to contain the "extension process browser XUL elements"
described above (and the HiddenXULWindow istance is then destroyed when there
is no devtools actor that is using it anymore).
MozReview-Commit-ID: 31RYQk1DMvE
--HG--
extra : rebase_source : f1fd954d79593107b4542dfbb655abea05e9bd98
This change prepare the WebExtensions internals to the changes applied to the
addon debugging facilities in the other patches from this queue.
In ExtensionParent.jsm, a HiddenXULWindow helper class has been refactored out
of the HiddenExtensionPage and then reused by both HiddenExtensionPage and
the new DebugUtils object.
The DebugUtils object provides the utility methods used by the
devtools actors related to the addon debugging, which are used to retrieve
an "extension process browser XUL element" (a XUL browser element that has been
configured by DebugUtils to be used to connect the devtools parent
actor to the process where the target extension is running), and then release it
when it is not needed anymore (because the developer toolbox has been closed and
all the devtools actors destroyed).
The DebugUtils object used the HiddenXULWindow class to lazily create
an hidden XUL window to contain the "extension process browser XUL elements"
described above (and the HiddenXULWindow istance is then destroyed when there
is no devtools actor that is using it anymore).
MozReview-Commit-ID: 31RYQk1DMvE
--HG--
extra : rebase_source : 82a71189b359acecd100e94e3c48ef344dbb48c4
Previous design allows us calling resume/block from both front-end and back-end,
it's not easy to know who called these operations.
So move all these logic to frond-end side, it's more clear than before.
One important thing is that we should block tab before loading the content.
If we block the tab after loading, the media might not be blocked because it had
already started (that is one situation I observed from test).
The value of block state would be stored in the outer window, before media want
to start, it would check this value to know whether it can start playing or not.
---
In addition, introduce new attribute "media-blocked".
The "media-blocked" attribute indicates that whether the tab is allowed to play autoplay media.
The "activemedia-blocked" attribute indicates whether the tab has blocked the autoplay media.
MozReview-Commit-ID: FnNh3zmItxo
--HG--
extra : rebase_source : cdc890c0c47a4a03ea8dbbdfee24c66b52945c60
The "blocked" attribute is too general to indicate the real usage, so rename it
to "activemedia-blocked".
This attribute indicates that whether the tab has blocked the autoplay media.
MozReview-Commit-ID: EAmq6OuBYjq
--HG--
extra : rebase_source : e8e9321854b80736f0959fbfecbc8bf9a83b0712
Importing the blocklist-updater module on each notification in nsBlocklistService
could cause us to periodically jank the browser UI.
This patch now lazy loads as many dependencies as possible.
MozReview-Commit-ID: HBGjSJi5PwE
--HG--
extra : rebase_source : 4a7c18fe64b810f54d52eee07883d67837b297d3
The "platform" chrome flag requires an irrelevant "content" chrome
manifest entry, while it's only used for locales. It only has exactly
one use, which can actually be replaced by uses of the "os" flag.
Note, we're doing something similar with the "os" flag for skins in
e.g. browser/extensions/pocket/jar.mn.
Unfortunately, for determinism reasons, the chrome manifest entries from
jar.mn are sorted (per bug 982075), so keeping global-platform/unix
would leave it appearing after /mac, and would override it on mac
because of the lack of "os" flag on the /unix entry (we can't put "os"
flags on that entry because we can't do something like os!=Darwin &&
os!=WINNT). So we move it to /gtk such that it always comes before /mac.
--HG--
extra : rebase_source : aaace8147ea54f74aef8a7b2314ad022e9f9be23
Reword the `llvm-config` detection error message to recommend setting the
LLVM_CONFIG env var, like we do for the bootstrap path. This avoids exposing
`clang` as well, so the compiler won't be changed.
MozReview-Commit-ID: CVNJ2bX2POa
--HG--
extra : rebase_source : fedfb95e105f88fec08689ae3c69a841f3b52173
The telemetry is recorded once per effect:target pair, and is intended for
comparison with the telemetry added in bug 1349808.
MozReview-Commit-ID: 8JYbAifjmki
--HG--
extra : rebase_source : a5adf4ea9c0836d9ad0ecde5e5869d00eccc2205
Right now notifications displayed in non-focused windows are causing that window to be focused. This is annoying. We could work to make the doorhangers not focus the other windows, but a simpler solution is to just not show the doorhanger until the window is focused. This has the added benefit of ensuring that the doorhangers entry animation is seen by the user, increasing the likelihood that they will notice it.
Additionally, some existing tests involving extra windows were refactored. I stripped the old tests of their extra windows and created new tests specifically to test the behavior of background windows. These tests were modeled off of the background window tests of PopupNotifications.jsm, which create a new window knowing that this will cause the existing window to be the background, rather than explicitly manipulating the focus of the two windows.
The telemetry is recorded once per effect:target pair, and is intended for
comparison with the telemetry added in bug 1349808.
MozReview-Commit-ID: 8JYbAifjmki
--HG--
extra : rebase_source : fa0b615684ca1355f9bbc24b3355e90001db47b5
Remove suggested and enhanced tiles along with related campaign, frequency-cap, inadjacency, pings, preferences, strings, styles, tests.
MozReview-Commit-ID: FkjaSpSFQHu
--HG--
extra : rebase_source : 1c58ac542180f0abb290639ec1c61b9edf3d0a51
The lazy loading is a little more complex because we want this to be a constant
in the scope so extensions can't trivially replace it. This also changes the
test to be more like the proof of concept from bug 1244248.
MozReview-Commit-ID: 2P890uRY1Si
--HG--
extra : rebase_source : 6eaa3aabde262b0e03f0e664b15fa50e53d75c5a
This patch uses the new Photon animation curve for notification bars as well
as supporting `toolkit.cosmeticAnimations.enabled` to disable the animations
on notification bars entirely.
MozReview-Commit-ID: AHSQR32g6hf
--HG--
extra : rebase_source : 9b643a758db07791dbda12f7e6383f193f3fa698
It schedules the ping to be sent on new profiles after 30 minutes
from the Firefox startup. The ping is eventually sent at shutdown
if the scheduled time wasn't reached.
To reliably prevent sending the ping more than once, the "session-state.json"
file is used to keep track of the "sent" state.
The "new-profile" ping is protected behind a pref, disabled by default
in this patch.
MozReview-Commit-ID: 4g4lPRXe9q6
--HG--
extra : rebase_source : d32e93ac63a2f0c23a3d0690eca4a1e83f57c3e3
The probes needing to record in gpu were determined by listing the probes that
submitted data for those measures on Nightly on April 18.
MozReview-Commit-ID: 85nQA8rCH1p
--HG--
extra : rebase_source : 8ed93a90955c665f048d215769c4ef286f45bf0e
We now have code that unconditionally requires the rust
compiler and are committed to adding more. Remove this
last vestige of conditional support.
MozReview-Commit-ID: EK6FBnAbR
--HG--
extra : rebase_source : 6efda10a74f9ca0482304c2b1ffe6941e42138f8
The probes needing to record in gpu were determined by listing the probes that
submitted data for those measures on Nightly on April 18.
MozReview-Commit-ID: 85nQA8rCH1p
--HG--
extra : rebase_source : 58fd8cd7af623e1b6de9831af2cf66e6880dba7c
This is in preparation for being able to be replaced with SpinEventLoopUntil(),
which is going to be shipped in bug 1359490.
MozReview-Commit-ID: AChVqh4kfVb
--HG--
extra : rebase_source : 03f8d36c29d74fed34ebed6ae3cb31ca829c3e41
__define{Getter,Setter}__ are deprecated, and are not defined on
NonSyntacticVariablesObjects, so these calls get in the way of sharing
globals between different .jsms. Probably only the DownloadUtils.jsm
change is really needed for that.
configurable and enumerable are both set to true to match the existing
behavior. If enumerable is set to false, then tests fail, because some
of the getters overwrite the getter with a regular property.
MozReview-Commit-ID: 1OZF45fIAQ
--HG--
extra : source : 96dd2e2d8d1677fb04c98bb3a063df32478fbc00
Cu.isModuleLoaded is more direct, and also the current method will
break if jsms begin to share globals, as in bug 1186409.
This patch is by billm from bug 1186409.
MozReview-Commit-ID: KoHMTJpmHg2
--HG--
extra : source : 1f18d8c7210c75275a4ba49a0bd40cb5c81ea286