With all the dependency removed this pref can be safely removed.
Depends on D17574
Differential Revision: https://phabricator.services.mozilla.com/D17575
--HG--
extra : moz-landing-system : lando
This patch removes the XBL pluginProblem binding and have the in-content
UI always created by the UA Widget.
Depends on D17573
Differential Revision: https://phabricator.services.mozilla.com/D17574
--HG--
extra : moz-landing-system : lando
This patch removes the datetimebox binding and always use
UA Widget for the job.
Depends on D17571
Differential Revision: https://phabricator.services.mozilla.com/D17572
--HG--
extra : moz-landing-system : lando
This patch removes the XBL videocontrols binding and make <video>
to always use the UA Widget to generate controls.
DevTools tests that look for NAC is switched to use <input type=file>.
Differential Revision: https://phabricator.services.mozilla.com/D17571
--HG--
extra : moz-landing-system : lando
This custom element replaces XBL <content> usage by directly prepend the two needed child nodes when the element is connected.
This is doable because
- There isn't any direct access of child nodes under <menulist>. Everyone seems to access via .menupopup, which is usually the only child.
- We don't need to move the children under <menulist>. If we need to and if the child is a <xbl:children> (which could happen if <menulist> is inside an XBL <content> that just get cloned to the document), the layout will get very confused and crash (see finding in bug 1514926)
Differential Revision: https://phabricator.services.mozilla.com/D16149
--HG--
rename : toolkit/content/widgets/menulist.xml => toolkit/content/widgets/menulist.js
extra : moz-landing-system : lando
Because custom elements will be constructed when DOM is constructed,
construct the DOM in the hidden panels will be expensive as we move
more and more widgets to custom elements from XBL.
This patch attempts to counter that by moving all the pane markups
into comment nodes, and use MozXULElement.parseXULToFragment() to
insert it when it is being asked.
They will be loaded lazily from an requestIdleCallback() in findInPage.js.
Differential Revision: https://phabricator.services.mozilla.com/D16787
--HG--
extra : moz-landing-system : lando
***
Bug 1514594: Part 3a - Change ChromeUtils.import to return an exports object; not pollute global. r=mccr8
This changes the behavior of ChromeUtils.import() to return an exports object,
rather than a module global, in all cases except when `null` is passed as a
second argument, and changes the default behavior not to pollute the global
scope with the module's exports. Thus, the following code written for the old
model:
ChromeUtils.import("resource://gre/modules/Services.jsm");
is approximately the same as the following, in the new model:
var {Services} = ChromeUtils.import("resource://gre/modules/Services.jsm");
Since the two behaviors are mutually incompatible, this patch will land with a
scripted rewrite to update all existing callers to use the new model rather
than the old.
***
Bug 1514594: Part 3b - Mass rewrite all JS code to use the new ChromeUtils.import API. rs=Gijs
This was done using the followng script:
https://bitbucket.org/kmaglione/m-c-rewrites/src/tip/processors/cu-import-exports.jsm
***
Bug 1514594: Part 3c - Update ESLint plugin for ChromeUtils.import API changes. r=Standard8
Differential Revision: https://phabricator.services.mozilla.com/D16747
***
Bug 1514594: Part 3d - Remove/fix hundreds of duplicate imports from sync tests. r=Gijs
Differential Revision: https://phabricator.services.mozilla.com/D16748
***
Bug 1514594: Part 3e - Remove no-op ChromeUtils.import() calls. r=Gijs
Differential Revision: https://phabricator.services.mozilla.com/D16749
***
Bug 1514594: Part 3f.1 - Cleanup various test corner cases after mass rewrite. r=Gijs
***
Bug 1514594: Part 3f.2 - Cleanup various non-test corner cases after mass rewrite. r=Gijs
Differential Revision: https://phabricator.services.mozilla.com/D16750
--HG--
extra : rebase_source : 359574ee3064c90f33bf36c2ebe3159a24cc8895
extra : histedit_source : b93c8f42808b1599f9122d7842d2c0b3e656a594%2C64a3a4e3359dc889e2ab2b49461bab9e27fc10a7
The big change here is breaking the previous invariant that every
active instance of XPIState contains a file and path. With the change
in place, the implementation of the new "location" for built-in addons
is pretty straightforward.
Differential Revision: https://phabricator.services.mozilla.com/D15639
--HG--
extra : rebase_source : 71192a266108147ce888fee9505ef0056d9bdfdc
extra : source : e476cb7c0c0b9baaabfa0b75851ee2a922ec3678
This aggregates a list of all static component manifests in the tree, and
writes them out to a `manifests-lists.json` file, which is read by the codegen
scripts in the next patch.
It slightly abuses the IDL lists machinery, given that these aren't
technically IDL files. But the semantics are similar enough that it seemed
like the best option.
Differential Revision: https://phabricator.services.mozilla.com/D15034
--HG--
extra : rebase_source : f1e1e1c9497ab8c18c25a106316a1af57237b99f
extra : source : f500020a273a27c66bf2166505a0e97bbc34a214
This aggregates a list of all static component manifests in the tree, and
writes them out to a `manifests-lists.json` file, which is read by the codegen
scripts in the next patch.
It slightly abuses the IDL lists machinery, given that these aren't
technically IDL files. But the semantics are similar enough that it seemed
like the best option.
Differential Revision: https://phabricator.services.mozilla.com/D15034
--HG--
extra : rebase_source : 7e8148f5f6c0d830db92571700289b1eb841e140
extra : histedit_source : cab2c81128d17fa289d4b8ed653cad2599263e35
This test checks that POST data can be submitted from both file and
moz-extension URIs to web content without the data being lost, or the
load being performed in the incorrect process.
Depends on D15612
Differential Revision: https://phabricator.services.mozilla.com/D15613
--HG--
extra : moz-landing-system : lando
This will only happen if the pref is enabled, and works through the existing
mechanism for process switching loads. It should enable POST data to be
preserved when performing a process switch, for example when submitting
a form on a file:// or moz-extension:// URI to a http:// URI.
Depends on D15611
Differential Revision: https://phabricator.services.mozilla.com/D15612
--HG--
extra : moz-landing-system : lando
This code largely skips the logic in load methods, and tries to simply get the
channel opened & connected to the correct listener ASAP, without breaking any
loading state.
Depends on D15610
Differential Revision: https://phabricator.services.mozilla.com/D15611
--HG--
extra : moz-landing-system : lando
This fixes the notification bar that shows how many popup windows have been blocked.
Differential Revision: https://phabricator.services.mozilla.com/D17152
--HG--
extra : rebase_source : 2c42491f121c8279330f0bb797b3600c73a6861f
Add Telemetry to know the number of times user adds site to allow list, remove site from allow list, add site to block list and remove site from block list.
Differential Revision: https://phabricator.services.mozilla.com/D16642
--HG--
extra : moz-landing-system : lando
Drive-by fixes to annyoing warnings in `mach doc` for Telemetry docs.
Depends on D17231
Differential Revision: https://phabricator.services.mozilla.com/D17232
--HG--
extra : moz-landing-system : lando
Changed the reference of getParentProcessScalars in test_TelemetryScalars.js
Differential Revision: https://phabricator.services.mozilla.com/D17032
--HG--
extra : moz-landing-system : lando
The All Downloads view removes and re-adds its richlistbox for performance reasons.
However, after bug 1492326, this causes the richlistitem's .current property to be assigned before its binding is applied.
Since the .current property fires a11y focus events, this means this property is overridden and thus the events never get fired for that item.
To fix this, move a11y focus event firing into richlistbox.currentItem.
Differential Revision: https://phabricator.services.mozilla.com/D16932
--HG--
extra : moz-landing-system : lando
With the patch above we do find the input element, and try to autocomplete it
normally, which confuses some tests.
Differential Revision: https://phabricator.services.mozilla.com/D17143
--HG--
extra : moz-landing-system : lando
CSS visibility doesn't work like `display`. `visibility: visible` elements in a
`visibility: hidden` subtree still get shown.
Differential Revision: https://phabricator.services.mozilla.com/D17068
--HG--
extra : moz-landing-system : lando
JS classes, unlike var or const, are not automatically made part
of the global scope in JSMs. This makes it impossible to import
ActorChild this way:
const {ActorChild} = ChromeUtils.import("resource://gre/modules/ActorChild.jsm", {});
By assigning the ActorChild class to this we work around this problem.
Differential Revision: https://phabricator.services.mozilla.com/D17080
--HG--
extra : rebase_source : 88feda088b4e66a1166c7624d834e6a1565ced9b
extra : source : 4b6549b8a6012efa6a3b250b26fff7cf0d1ca564
JS classes, unlike var or const, are not automatically made part
of the global scope in JSMs. This makes it impossible to import
ActorChild this way:
const {ActorChild} = ChromeUtils.import("resource://gre/modules/ActorChild.jsm", {});
By assigning the ActorChild class to this we work around this problem.
Differential Revision: https://phabricator.services.mozilla.com/D17080
--HG--
extra : moz-landing-system : lando
The restriction preventing fullscreen windows from being dragged is removed.
Differential Revision: https://phabricator.services.mozilla.com/D15075
--HG--
extra : moz-landing-system : lando
This commit adds categories to all markers. This way the profiler's
marker categories and frame label categories agree. There are a few
duplicate category properties on some of the marker payloads, but
this could be cleaned up in a follow-up if needed.
Differential Revision: https://phabricator.services.mozilla.com/D16864
--HG--
extra : moz-landing-system : lando
The restriction preventing fullscreen windows from being dragged is removed.
Differential Revision: https://phabricator.services.mozilla.com/D15075
--HG--
extra : moz-landing-system : lando
Ensure system addons are not accidentally started on start-up even if their about:config preferences are off.
Differential Revision: https://phabricator.services.mozilla.com/D14297
--HG--
extra : moz-landing-system : lando
As far as I can tell this was only ever done to give legacy add-ons the chance to
clean up user data and isn't needed anymore (and had the strange side effect that e.g.
localStorage was cleared when removing the site zoom settings).
Differential Revision: https://phabricator.services.mozilla.com/D16463
--HG--
extra : moz-landing-system : lando
If the extension had either default_icon or one of it's property as an empty string, it would show a black icon in the toolbar. With this patch, it checks if any of default_icon property is empty and throws an error on extension load.
Differential Revision: https://phabricator.services.mozilla.com/D16070
--HG--
extra : moz-landing-system : lando
Add APPLICATION_REPUTATION_SERVER_VERDICT_2 telemetry with file extension as the key.
This can give us an idea about the current detecion rate for archived
files.
Differential Revision: https://phabricator.services.mozilla.com/D13249
--HG--
extra : moz-landing-system : lando
No one is using the aUseTrackingProtection parameter and also tracking
protection related preference in Classify API. And we shouldn't use it
that way in the future.
Differential Revision: https://phabricator.services.mozilla.com/D16798
--HG--
extra : moz-landing-system : lando
Back when those were added, option defaults could not indirectly depend
on `target` or `host`, but that changed with bug 1322025.
Differential Revision: https://phabricator.services.mozilla.com/D16778
--HG--
extra : moz-landing-system : lando
This patch uses categorical keyed Historgram to collect data. While the key is
used to determine whether is it an external error or an internal error (Note:
the external error is referred to low level failure, for example: database
corrupt, OS API errors, ... etc; the internal error is referred to errors, like:
not handle file properly, unexpected filenames, ... etc), the labels for
categorical indicates where the error happens.
Furthermore, this patch make QuotaManager keep traversing the profile even if
an error happens so that we can get more information in the telemetry data.
Please note that these things should only happen in the Nightly Channel.
Differential Revision: https://phabricator.services.mozilla.com/D15908
--HG--
extra : moz-landing-system : lando
Let SessionStoreUtils be a WebIDL namespace, rather than a XPCOM service
Differential Revision: https://phabricator.services.mozilla.com/D9776
--HG--
rename : toolkit/components/sessionstore/nsSessionStoreUtils.cpp => toolkit/components/sessionstore/SessionStoreUtils.cpp
extra : moz-landing-system : lando
Adds disabledForTesting checks to the about dialog app update code
Makes a copy of update.sjs for browser-chrome tests so the changes don't break chrome tests
Prepares for the removal of the chrome tests and the old app update UI
Adds 14 tests for app update in the about dialog
--HG--
rename : toolkit/mozapps/update/tests/data/update.sjs => toolkit/mozapps/update/tests/browser/app_update.sjs
rename : toolkit/mozapps/update/tests/data/update.sjs => toolkit/mozapps/update/tests/chrome/update.sjs
sizetopopup is set to "pref" by default by the menulist XBL binding, however
when converting the binding to custom element, it did not set the attribute value
at a time that is early enough.
This patch updates nsMenuPopupFrame and nsMenuFrame so that it considers
<menulist> with unset sizetopopup attribute as equal to "pref" to avoid
the problem above.
This reftest
layout/reftests/xul/menulist-shrinkwrap-2.xul
can detect this failure.
The sizetopopup attribute is never meant to be set dynamically;
the fix here does not allow us to do so.
Differential Revision: https://phabricator.services.mozilla.com/D16410
--HG--
extra : moz-landing-system : lando
Under WOW64, the SysWOW64 directory is the effective system directory. A flag
has been added (ModuleTrustFlags::SysWOW64Directory) representing this
directory, and we now grant this the same trustworthiness as
ModuleTrustFlags::SystemDirectory.
Depends on D16013
Differential Revision: https://phabricator.services.mozilla.com/D16160
--HG--
extra : moz-landing-system : lando
This patch:
- Adds two new fields to the untrusted modules ping
- Updates documentation for the untrusted modules ping:
- Documents these 2 new fields
- Documents the new XUL ModuleTrustFlags bitfield value
- Adds a "version history" section
- Corrects documentation for ModuleTrustFlags (JIT, keyboard layouts)
Differential Revision: https://phabricator.services.mozilla.com/D16013
--HG--
extra : moz-landing-system : lando
In order to help unify DLL timings across machines with different performance
characteristics, this change collects the load duration of xul.dll.
Because xul.dll is always loaded, it can serve as a control value for DLL load
times.
Differential Revision: https://phabricator.services.mozilla.com/D16012
--HG--
extra : moz-landing-system : lando
This patch measures the duration of module loads and passes it up to
UntrustedModulesManager where, in later patches, it will be consumed by
telemetry.
Differential Revision: https://phabricator.services.mozilla.com/D16011
--HG--
extra : moz-landing-system : lando
Rust ships with some natvis files that enable nicer display of Rust standard
library types in Microsoft's debuggers. rustc will add the right linker
options to include them when it invokes the linker but since we don't link
libxul with rustc we need to explicitly pass them to the linker ourselves.
This change locates all natvis files in the Rust sysroot and adds them
to the libxul link line.
Differential Revision: https://phabricator.services.mozilla.com/D16544
--HG--
extra : moz-landing-system : lando
The fixes in bug 1503760 inadvertently broke searches of downloads that
have not yet started receiving data (which have a value of -1 for the
totalBytes property). That regression is fixed here.
Differential Revision: https://phabricator.services.mozilla.com/D16889
--HG--
extra : moz-landing-system : lando
We need a test-only IPC message to socket process to trigger the Telemetry::Scalar set since no js engine in the socket process.
And hook the IPC call to AddPendingEvent |CallOrWaitSocketProcess| introduced by bug 1496257.
Differential Revision: https://phabricator.services.mozilla.com/D14822
--HG--
extra : moz-landing-system : lando
Currently there are two conditions where CONTENT_FRAME_TIME_REASON can
be NoVsync. Since, were getting an appreciable amount of these with
WebRender it makes sense to split out the telemetry so that we can
confirm which scenario we're hitting.
Differential Revision: https://phabricator.services.mozilla.com/D16611
--HG--
extra : moz-landing-system : lando
These tests make sure that passing alwaysOnTop as a window feature
results in a window with WS_EX_TOPMOST, and also ensures that web
content cannot request alwaysOnTop windows.
Differential Revision: https://phabricator.services.mozilla.com/D16570
--HG--
extra : moz-landing-system : lando