diff --git a/getusermedia.html b/getusermedia.html index 25d7c3cb..381442bd 100644 --- a/getusermedia.html +++ b/getusermedia.html @@ -3412,6 +3412,7 @@

{{DeviceChangeEvent}}

interface DeviceChangeEvent : Event { constructor(DOMString type, optional DeviceChangeEventInit eventInitDict = {}); [SameObject] readonly attribute FrozenArray<MediaDeviceInfo> devices; + [SameObject] readonly attribute FrozenArray<MediaDeviceInfo> userInsertedDevices; };

Constructors

@@ -3439,6 +3440,38 @@

Attributes

objects representing the list of available devices at this time.

+
+ userInsertedDevices of type FrozenArray<{{MediaDeviceInfo}}>, + readonly +
+
+

The {{userInsertedDevices}} attribute returns an array + containing only those {{MediaDeviceInfo}} objects from + {{devices}} that the user physically inserted or activated + recently and are newly exposed with this event as a result. + Otherwise, an empty list is returned.

+

The [=User Agent=] MAY include devices the + user inserted or activated before + {{MediaDevices/getUserMedia()}} was called, provided this + event marks their first exposure, and the user did not + choose devices in {{MediaDevices/getUserMedia()}}. +

+

The {{MediaDeviceInfo}} objects, if any, MUST also exist + in {{devices}}.

+
+

A user inserting a device during (or immediately ahead of) + a call can be a strong signal that they wish to use the + device immediately.

+

Applications are encouraged to rely on this attribute + to disambiguate this signal from differences in {{devices}} + that might happen from changes in device information exposure.

+
+
+ If the attribute is missing, it means that this UA has not been upgraded to implement + this version of the specification. +
+