This will save us some time from figuring out what's the best thing to do in
bug 1552587, so that other patches I have in flight (mainly bug 1552708) can
land, since we cannot add a single byte to nsStyleDisplay right now otherwise.
The code removed here is well isolated and not that complicated, so it seems to
me that should be easy to bring back should we have an emergency (and I commit
to doing that while preserving the nsStyleDisplay size limit if we need to :)).
Differential Revision: https://phabricator.services.mozilla.com/D32026
--HG--
extra : moz-landing-system : lando
This patch adds telemetry instrumentation to count the number of times the RDM viewport properties are changed (dimensions and rotation). This count will be correlated with the panel open count and time spent open to refine the baseline for RDM usage and filter out accidental usage.
A new Redux middleware, `telemetryMiddleware`, is introduced to the RDM Redux store. This observes actions dispatched to the store. For `RESIZE_VIEWPORT` and `ROTATE_VIEWPORT` actions, it increases a numeric value for the new scalar telemetry probe, `"devtools.responsive.viewport_change_count"`.
Other actions may be observed in this middleware for future telemetry instrumentation of RDM.
The `RESIZE_VIEWPORT` action is a dispatched with a high frequency when dragging to resize. Therefore, we debounce logging for this action. To ensure the test can reliably test counting this action without adding needless complexity to account for the asynchronicity, the `debounce()` utility is extended with an `immediate` parameter to cause the very first call to be executed immediately before going into the debounce behaviour.
Differential Revision: https://phabricator.services.mozilla.com/D31645
--HG--
extra : moz-landing-system : lando
Depends on D32016
The code comment is perhaps a leftover from a file duplication to extract shared methods to `shared/inspector/css-logic.js` from `server/actors/inspector/css-logic.js`.
The comment is confusing because there is no usage of any of the CssLogic terminology within the file.
Differential Revision: https://phabricator.services.mozilla.com/D32017
--HG--
extra : moz-landing-system : lando
`isInherited` is a callback function that checks if a given CSS property is inherited. It is misleadingly commented as a cache of inherited properties (which perhaps it is on the InspectorUtils implementation, but on the consumer side it is just a function).
The actual call is done by InspectorUtils.isPropertyInherited. There is no need to pass the handler to CssLogic or to CssPropertyInfo since InspectorUtils is available in the same context as the definition of the consumers.
There is no other use case where a custom handler is passed to check for inherited properties in so it is safe to remove this as an argument and just use InspectorUtils.isPropertyInherited where needed. This cleans up the code slightly.
Differential Revision: https://phabricator.services.mozilla.com/D32016
--HG--
extra : moz-landing-system : lando
We need to notify the whole parent chain (using NOTIFY) rather than just
mStyleSets, since mStyleSets is empty for @import-ed sheets.
Differential Revision: https://phabricator.services.mozilla.com/D31787
--HG--
extra : moz-landing-system : lando
I also made a few gratuitous code formatting cleanups. I hope you don't mind.
We are unable to properly analyze shutdown crashes and deduce the right action
to take when that happened. This leads to surprising occurrences of the
'about:sessionrestore' page shown, especially when a full restore is expected
anyway.
Differential Revision: https://phabricator.services.mozilla.com/D29676
--HG--
extra : moz-landing-system : lando
Before sending back the stacktrace, we remove all the
devtools internal frames using removeFramesAboveDebuggerEval.
A test (that was failing without the fix) is added to ensure
this works as expected.
The test revealed some issues in webconsole-connection-proxy
(mostly trying to access webConsoleUI while closing the toolbox),
which we fix in the patch as well.
Differential Revision: https://phabricator.services.mozilla.com/D31249
--HG--
extra : moz-landing-system : lando
Segoe UI Light couldn't accomodate the new stub installer visual design, and
it already wasn't used for other languages (including other Englishes), so
swap it out for regular weight Segoe UI.
Depends on D31142
Differential Revision: https://phabricator.services.mozilla.com/D31143
--HG--
extra : moz-landing-system : lando
We typically want to define sizes of elements in the stub installer in terms of
dialog units because those are independent of DPI. But sometimes we need to do
some calculations or invoke some API that needs pixels. So this function takes
a number of dialog units and an axis (because dialog units are not square) and
converts them to screen pixels using MapDialogRect.
Depends on D31141
Differential Revision: https://phabricator.services.mozilla.com/D31142
--HG--
extra : moz-landing-system : lando
BrandProductName is a recently-introduced branding string which is intended to
not change with the channel of the product; e.g., for a Nightly Firefox build,
BrandShortName is not "Firefox", it's "Nightly", but BrandProductName is still
"Firefox". Some of the new stub installer copy needs a name string like this.
Depends on D31140
Differential Revision: https://phabricator.services.mozilla.com/D31141
--HG--
extra : moz-landing-system : lando
The current implementation of GetTextWidthHeight attempts to guess how much
height a string needs to fit into a given width based on how long the string
is when rendered onto one line of unlimited width. This doesn't work because
breaking up the string into lines introduces additional space at the end of
the lines that the single-line method doesn't account for.
This patch replaces all of that logic with asking DrawText to render the
string into the width of interest and then just seeing how much height it
ended up needing in order to do that.
We also take the opportunity to clarify what GetDlgItemBottomDU was doing,
because it isn't exactly what it claimed to be doing.
Depends on D31139
Differential Revision: https://phabricator.services.mozilla.com/D31140
--HG--
extra : moz-landing-system : lando
Soon XUL documents will be loaded as XHTML and createElement will create HTML
elements instead of XUL element by default. This restriction can be removed
once we migrate everything.
Differential Revision: https://phabricator.services.mozilla.com/D31294
--HG--
extra : moz-landing-system : lando
which causes the promise being rejected and testharness reports error given
that there are unhandled rejected promises
Differential Revision: https://phabricator.services.mozilla.com/D32071
--HG--
extra : moz-landing-system : lando
Adding those tests with the premise to run all the videos as muted,
at least as long as bug 1547717 hasn't been fixed.
Differential Revision: https://phabricator.services.mozilla.com/D32040
--HG--
extra : moz-landing-system : lando
3gp4 is based on mp4. Should the codecs not be supported we will simply error later.
Differential Revision: https://phabricator.services.mozilla.com/D31919
--HG--
extra : moz-landing-system : lando
Because the IPDL channel between HttpChannelChild/Parent is sensitive to chaos
mode delays, sometimes the channel will be cancelled before completing, other
times after.
Because of this, the test will sometimes fail in verify mode.
Differential Revision: https://phabricator.services.mozilla.com/D31984
--HG--
extra : moz-landing-system : lando