Граф коммитов

673982 Коммитов

Автор SHA1 Сообщение Дата
Andreas Pehrson 5142069c54 Bug 1512175 - Ensure there is data available immediately after the "start" event. r=jib
This patch does two things:
1) Extracts data before firing "start", instead of after, so that any
   `requestData()` or timeslice-based "dataavailable" event fired immediately
   after "start" contains data.
2) Sets mLastBlobTimeStamp on encoder initialization instead of session
   construction, so that any "dataavailable" events are held back until some
   actual data has been gathered.

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

--HG--
extra : moz-landing-system : lando
2019-10-03 22:10:43 +00:00
Andreas Pehrson 8f82b13b3b Bug 1512175 - Don't remove tracks from the MediaEncoder on stream-removal. r=jib
We're immediately after explicitly stopping the recording anyway.

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

--HG--
extra : moz-landing-system : lando
2019-10-03 22:10:31 +00:00
Andreas Pehrson 519394818a Bug 1512175 - Expand on MediaRecorder DOM exception throwing with messages. r=jib
Differential Revision: https://phabricator.services.mozilla.com/D46464

--HG--
extra : moz-landing-system : lando
2019-10-03 22:10:24 +00:00
Andreas Pehrson d522cadd73 Bug 1512175 - Adapt mochitests to spec compliant mime type handling. r=jib
Differential Revision: https://phabricator.services.mozilla.com/D17812

--HG--
extra : moz-landing-system : lando
2019-10-03 22:10:11 +00:00
Andreas Pehrson 5619da0f25 Bug 1512175 - Rename and adapt test_mr_unsupported_src.html. r=jib
With spec compliant mime type handling we no longer fire "error" on start for a
audio-only recording of a (currently) video-only MediaStream.

This patch adapts the test to more accurately name what we originally wanted to
test - that pause() after an error doesn't crash but throws. It does this by
triggering another kind of error, one that happens because we try to remove
the recorded track from the recorded stream. We still keep the behavior of
start()ing the recording before any supported tracks are available, because we
support that.

To clarify what this test is actually testing, this patch also modernizes the
code with async/await to linearize the testing of events and their order.

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

--HG--
rename : dom/media/test/test_mediarecorder_unsupported_src.html => dom/media/test/test_mediarecorder_onerror_pause.html
extra : moz-landing-system : lando
2019-10-03 22:10:04 +00:00
Andreas Pehrson f1b5675317 Bug 1512175 - Remove test_mr_getencodeddata.html. r=jib
This test relied on us choosing to record audio/ogg because of the only audio
track, which would fail and result in an error with ogg support disabled.

We now per spec select mime type synchronously on construction instead of after
detecting the stream's tracks - and so fall back to video/webm when the mime
type is defaulted. With this the test times out because we're recording fine.

When disabling also webm encoding we follow the spec's "note that this case is
essentially equivalent to leaving up to the UA the choice of container and
codecs on constructor", and choose some unknown mime type that is not supported
(none are), thus ending up throwing NotSupportedError.

Not much remains of this test with these changes, and what actually remains is
covered by other tests, which warrants removal.

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

--HG--
extra : moz-landing-system : lando
2019-10-03 22:09:52 +00:00
Andreas Pehrson b951651318 Bug 1512175 - Extend the constrained MediaRecorder mime type when needed. r=jib
This is the last step to making the MediaRecorder's mime type handling up to
spec, and has a real effect only if the constrained mime type is empty, or doesn't
contain any codecs.

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

--HG--
extra : moz-landing-system : lando
2019-10-04 09:06:08 +00:00
Andreas Pehrson cc585e56a9 Bug 1512175 - Implement MediaRecorder MIME type constraining to spec. r=jib,smaug,bryce
This leaves out support for extending the mime type with the selected container
and codecs, and support in MediaEncoder for using a specific mime type.

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

--HG--
extra : moz-landing-system : lando
2019-10-03 22:09:38 +00:00
Andreas Pehrson 0b4b5c4ccd Bug 1512175 - Add MediaRecorder MIMEType WPT. r=jib
Differential Revision: https://phabricator.services.mozilla.com/D17806

--HG--
extra : moz-landing-system : lando
2019-10-04 09:07:26 +00:00
Andreas Pehrson 047e370259 Bug 1512175 - Expand mochitest for webm mime type support with various casing. r=jib
Differential Revision: https://phabricator.services.mozilla.com/D47068

--HG--
extra : moz-landing-system : lando
2019-10-03 22:09:18 +00:00
Andreas Pehrson e7ff4e1d3b Bug 1514158 - Simplify exception asserts in test_mr_state_transition.html. r=bryce
Differential Revision: https://phabricator.services.mozilla.com/D41590

--HG--
extra : moz-landing-system : lando
2019-10-03 22:09:09 +00:00
Andreas Pehrson 7dd1457975 Bug 1514158 - Bring MediaRecorder closer to spec prose for stop, pause, resume, requestData methods. r=bryce
Differential Revision: https://phabricator.services.mozilla.com/D41589

--HG--
extra : moz-landing-system : lando
2019-10-03 22:09:07 +00:00
Andreas Pehrson 24e87cb986 Bug 1514158 - Fix MediaRecorder static-analysis warnings. r=bryce
Differential Revision: https://phabricator.services.mozilla.com/D41588

--HG--
extra : moz-landing-system : lando
2019-10-03 22:09:06 +00:00
Andreas Pehrson 2c2903d85c Bug 1514158 - Test that MediaRecorder.start() throws if MediaRecorder.stream is inactive. r=bryce
Differential Revision: https://phabricator.services.mozilla.com/D41587

--HG--
extra : moz-landing-system : lando
2019-10-03 22:08:58 +00:00
Andreas Pehrson bf71d848ad Bug 1514158 - Make VideoTrackEncoder's key frame interval uint32_t. r=bryce
This aligns it better with MediaRecorder's timeslice which was changed from
int32 to uint32 earlier.

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

--HG--
extra : moz-landing-system : lando
2019-10-03 22:08:55 +00:00
Andreas Pehrson 7bdf7c09ae Bug 1514158 - Bring MediaRecorder to spec on new bitrate handling. r=bryce
This brings the MediaRecorder constructor and start() to spec on most parts
except mime type handling (bug 1512175). The flow is also improved to better
follow along in the algorithms of the spec.

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

--HG--
extra : moz-landing-system : lando
2019-10-04 08:54:16 +00:00
Andreas Pehrson 180cc1d596 Bug 1514158 - Add bitsPerSecond WPT. r=bryce,jib
Differential Revision: https://phabricator.services.mozilla.com/D41584

--HG--
extra : moz-landing-system : lando
2019-10-04 08:53:31 +00:00
Andreas Pehrson c24fe8e49c Bug 1514158 - Update WPT expectations and make tests spec compliant. r=jib,bryce
Differential Revision: https://phabricator.services.mozilla.com/D33762

--HG--
extra : moz-landing-system : lando
2019-10-03 22:08:49 +00:00
Andreas Pehrson a0694fe0fc Bug 1514158 - Add audioBitsPerSecond and videoBitsPerSecond to MediaRecorder. r=jib,smaug
Differential Revision: https://phabricator.services.mozilla.com/D33761

--HG--
extra : moz-landing-system : lando
2019-10-04 08:53:36 +00:00
Andreas Pehrson 2aae487454 Bug 1514158 - Remove onwarning from MediaRecorder. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D33760

--HG--
extra : moz-landing-system : lando
2019-10-03 22:08:43 +00:00
Jonathan Kew df5a04d291 Bug 1584718 - Add examples with emoji to the segment break transformation reftest. r=m_kato
Differential Revision: https://phabricator.services.mozilla.com/D47905

--HG--
extra : moz-landing-system : lando
2019-10-04 09:16:25 +00:00
Jonathan Kew b673fccb0f Bug 1584718 - Make segment break transformation rules treat emoji characters with EAW=Wide as EAW=Ambiguous, per CSS Text spec. r=m_kato
Differential Revision: https://phabricator.services.mozilla.com/D47895

--HG--
extra : moz-landing-system : lando
2019-10-04 09:16:25 +00:00
Noemi Erli 38eb5bb32a Merge autoland to mozilla-central. a=merge 2019-10-04 00:47:14 +03:00
Jim Blandy 6301edbc81 Bug 1584195: Break Debugger.Frame -> generator JSScript edges before finalization. r=jonco
When a Debugger.Frame refers to a generator or async function call, the script
must be compiled with instrumentation to notify the Debugger API when the call
is resumed. To accomplish this, a generator's JSScript's DebugScript's
generatorObserverCount tracks the number of Debugger.Frames referring to calls
running the script. When the count is non-zero, instrumentation is required.

When a Debugger.Frame for a suspended generator call is garbage collected, its
JSScript's generatorObserverCount must be decremented. However, if the JSScript
is alo being garbage collected, it may have already been finalized, and should
not be touched.

The prior code had js::DebuggerFrame::finalize use IsAboutToBeFinalized to check
whether the JSScript was healthy enough to have its count decremented. Since the
garbage collector always handles debuggers and debuggees in the same GC cycle,
it was believed that the JSScript's mark bit (what IsAboutToBeFinalized checks)
would be accurate.

Unfortunately, it is possible for a JSScript to be finalized in one GC slice,
and then for the mutator to run, and then for the DebuggerFrame to be finalized
in the next slice, with the JSScript's arena available for new allocations in
the middle. When an arena is made available for allocation during an incremental
GC, all its mark bits are set. As a result, the DebuggerFrame finalizer believes
that the JSScript it was referring to is still alive, even thought it has been
finalized. IsAboutToBeFinalized is only safe to use on edges between cells of
the same alloc kind, since we do promise to run all finalizers for a given alloc
kind before putting those arenas up for reuse. It's not safe to use
IsAboutToBeFinalized to inspect edges between cells of differing alloc kinds,
like DebuggerFrame JSObjects and generator JSScripts.

Fortunately, there is another approach we can take. The garbage collector calls
`DebugAPI::sweepAll` after all marking is done, but before any finalization
takes place. At this point, all cells' mark bits are accurate (assuming they're
in a zone being GC'd), but nothing has been finalized. We can disconnect
unmarked DebuggerFrames from their scripts now, knowing that both parties are
still fully initialized.

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

--HG--
extra : moz-landing-system : lando
2019-10-03 17:46:52 +00:00
Emma Malysz 58f95d79f5 Bug 1586336, Replace XUL textbox with HTML input in testcases within layout directory r=dholbert
Differential Revision: https://phabricator.services.mozilla.com/D48126

--HG--
extra : moz-landing-system : lando
2019-10-04 19:45:56 +00:00
Jason Laster 51d1769ca8 Bug 1583244 - Provide unfuzzed timings for UserTiming markers. r=gregtatum
Differential Revision: https://phabricator.services.mozilla.com/D48092

--HG--
extra : moz-landing-system : lando
2019-10-04 18:51:45 +00:00
Michael Kaply d3547ee818 Bug 158968 - Implement kiosk mode. r=Gijs
Differential Revision: https://phabricator.services.mozilla.com/D41848

--HG--
extra : moz-landing-system : lando
2019-10-04 19:47:56 +00:00
Andrew Halberstadt f80662b1b5 Bug 1585702 - [lint] Remove temporary hacks now that 'null character' issue is fixed, r=gbrown
Depends on D48113

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

--HG--
extra : moz-landing-system : lando
2019-10-04 19:13:04 +00:00
Andrew Halberstadt cb2eb80652 Bug 1585702 - [mozprocess] Fix "Embedded null character" error in Windows with Python 3, r=gbrown
This works around a bug in Python:
https://bugs.python.org/issue32745

Null characters aren't allowed in 'c_wchar_p' types anymore, but we can get around
the issue by allocating a buffer in memory and casting it after the fact. This was
discovered via trial and error and I'm not really sure why it works.. But it does.

This also enables the tests under Python 3 on Windows (which thankfully all
seem to pass).

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

--HG--
extra : moz-landing-system : lando
2019-10-04 17:46:38 +00:00
Anmol Agarwal d2dbcf8eba Bug 1433941 - Passed remainder arguments as it is |mach python-test| r=ahal
Differential Revision: https://phabricator.services.mozilla.com/D47832

--HG--
extra : moz-landing-system : lando
2019-10-04 18:32:37 +00:00
Tom Ritter 5b875f2afd Bug 1576254 - Add isSystemOrAddonPrincipal to RustJSPrincipal r=luke
RustJSPrincipal is used in Servo; we just return the conservative value of 'false'.

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

--HG--
extra : moz-landing-system : lando
2019-10-04 17:38:03 +00:00
Tom Ritter 117e232bdc Bug 1576254 - Add isSystemOrAddonPrincipal to JSPrincipal and nsJSPrincipals r=luke
Finally, here we add the virtual method isSystemOrAddonPrincipal to the
JSPrincipal object.

We also add it to nsJSPrincipal (where it has an easy implementation), and
to carry classes that are used by JS tests and the shell.

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

--HG--
extra : moz-landing-system : lando
2019-10-04 17:37:36 +00:00
Tom Ritter cdd2029b79 Bug 1576254 - Cut WorkerPrincipal over to a real object and implement isSystemOrAddonPrincipal r=baku
Unlike WorkletPrincipal, a WorkerPrincipal had been a simple static object shared by
all Workers. We never needed to consult it about an individual Worker before. Now we
do. So we cut it over from a static object to individual objects for each Worker.

We have an off main thread access problem for the Principal however, WorkerPrivate
has a method UsesSystemPrincipal that returns a bool that was initialized from the
Principal on the main thread. We copy that pattern and add a
UsesAddonOrExpandedAddonPrincipal method that will be called by the
isSystemOrAddonPrincipal method we must implement so we can inheirt from JSPrincipal.

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

--HG--
extra : moz-landing-system : lando
2019-10-04 17:37:09 +00:00
Tom Ritter 446f05f035 Bug 1576254 - Add isSystemOrAddonPrincipal to WorkletPrincipal r=baku
WorkletPrincipal inherits JSPrincipals so we need to add the isSystemOrAddonPrincipal
method to it. As of Bug 1578623 rev a83797ed249c - Worklets are always NullPrincipal,
so we can just return false.

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

--HG--
extra : moz-landing-system : lando
2019-10-04 17:36:40 +00:00
Tom Ritter cac810aea7 Bug 1576254 - Update wasmForTrustedPrinciples to use a separate pref r=luke
Differential Revision: https://phabricator.services.mozilla.com/D47474

--HG--
extra : moz-landing-system : lando
2019-10-04 17:36:08 +00:00
Tom Ritter 754ebbc4d7 Bug 1576254 - Add a wasmForTrustedPrinciples bool onto ContextOptions that (currently) behaves the exact same as the wasm bool r=luke
In a future commit we will tie this boolean to its own preference value, but here we
initialize it with the same value as the wasm boolean.

We also update wasm::HasSupport to check the to-be-added isSystemOrAddonPrincipal()
method on JSPrincipals to determine which member (wasm or wasmForTrustedPrinciples)
to consult.

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

--HG--
extra : moz-landing-system : lando
2019-10-04 17:35:46 +00:00
Tom Ritter 206eea6eb4 Bug 1576254 - Move Clamping and Jittering from RealmCreationOptions to Behaviors r=luke
CreationOptions are intended to be immutable and not change during realm operation.
Behaviors change, and clamping/jittering should reside on behaviors.

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

--HG--
extra : moz-landing-system : lando
2019-10-04 17:35:26 +00:00
Dão Gottwald ecd4680f9a Bug 1586232 - Animate the megabar with transforms only r=mak
Differential Revision: https://phabricator.services.mozilla.com/D48164

--HG--
extra : moz-landing-system : lando
2019-10-04 18:33:15 +00:00
Tom Ritter a74bcb566f Bug 1585353 - Revert Bug 1440013 and remove the -mbig-obj flag for MinGW r=dmajor
mingw-gcc is no longer supported.

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

--HG--
extra : moz-landing-system : lando
2019-10-04 18:23:15 +00:00
Razvan Maries a1961739be Merge autoland to mozilla-central a=merge 2019-10-03 19:30:11 +03:00
Jared Wein 20802e4942 Bug 1583796 - Re-sort and render the login list when breach notifications are updated without acting like a user-initiated sort. r=sfoster
Differential Revision: https://phabricator.services.mozilla.com/D47982

--HG--
extra : moz-landing-system : lando
2019-10-03 16:04:39 +00:00
Jared Wein 7a8544e664 Bug 1583426 - Clear the aria-activedescendant attribute if navigating through the list reaches an end of the list to trigger NVDA to speak the list's aria-label. Restore the aria-activedescendant attribute upon tabbing back to the listso the... r=sfoster
...active descendant will correctly get announced. r?sfoster

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

--HG--
extra : moz-landing-system : lando
2019-10-03 16:44:14 +00:00
Tom Ritter 40c0ddaa36 Bug 1585355 - Back out (part of) Bug 1443823, removing -fno-keep-inline-dllexport which was only applied to mingw-gcc r=dmajor
Differential Revision: https://phabricator.services.mozilla.com/D48071

--HG--
extra : moz-landing-system : lando
2019-10-03 16:01:26 +00:00
Greg Tatum bdf72887ea Bug 1580469 - Create end to end profile capture tests; r=julienw
This patch creates the first full mochitest that exercises the profiler
popup's mechanisms of capturing profiles. The test tries to use user-focused
mechanisms–clicking buttons to fully capture a profile.

In addition, it fixes two leaks that were uncovered by the leaktest check.
The first has to do with the iframe src creating an about:blank page when
set to an empty string. The next was the Services.obs.addObserver call
in the perfFrontInterface not being removed when the page was unloaded.

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

--HG--
extra : moz-landing-system : lando
2019-10-04 18:23:48 +00:00
Greg Tatum 47016d67d0 Bug 1581975 - Factor out the getSymbolsTable browser code from client code; r=julienw
The popup's shortcuts use a different codepath than the popup's buttons.
When using the buttons, the profile was not being captured as a gzipped
profile, and it was using the DevTools' mechanism for getting the symbol
tables. This patch makes the getSymbolTables mechanism configuring in the
recording panel's client.

In addition, browser code made its way into the client. This patch moves
the browser code to all be in browser.js to match the original code
organization for the panel, which was trying to keep browser APIs
out of the React components and Redux store.

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

--HG--
extra : moz-landing-system : lando
2019-10-04 18:17:43 +00:00
Morgan Reschenberg 05ad28e67c Bug 1539212: Add readability backplate for all elements containing text when HCM or a11y theme is active. r=dholbert,mattwoodrow,Jamie
Differential Revision: https://phabricator.services.mozilla.com/D42979

--HG--
extra : moz-landing-system : lando
2019-10-04 16:44:49 +00:00
Gurzau Raul 5c3ecc9909 Backed out changeset be7c53bea22d (bug 1586336) for reftest failures at accesskey.xul on a CLOSED TREE. 2019-10-04 21:22:07 +03:00
Emma Malysz 337d6db7d1 Bug 1585727, ensure browser_preferences_usage.js is fission compatible r=mconley
Differential Revision: https://phabricator.services.mozilla.com/D47945

--HG--
extra : moz-landing-system : lando
2019-10-04 18:09:01 +00:00
Luke Crouch cda6d84e6e Bug 1586354: add install permission for new proxy domain r=baku
Differential Revision: https://phabricator.services.mozilla.com/D48207

--HG--
extra : moz-landing-system : lando
2019-10-04 18:04:06 +00:00
James Willcox 99e172a1ac Bug 1577003 - Update CHANGELOG.md and API description r=geckoview-reviewers,esawin
Differential Revision: https://phabricator.services.mozilla.com/D47484

--HG--
extra : moz-landing-system : lando
2019-10-04 17:54:43 +00:00