Back to Content

CaptureController: CaptureController() constructor

files/en-us/web/api/capturecontroller/capturecontroller/index.md

latest1.2 KB
Original Source

{{APIRef("Screen Capture API")}}{{SeeCompatTable}}{{SecureContext_Header}}

The {{domxref("CaptureController")}} constructor creates a new CaptureController object instance.

Syntax

js-nolint
CaptureController()

Parameters

None.

Examples

js
// Create a new CaptureController instance
const controller = new CaptureController();

// Prompt the user to share a tab, window, or screen.
const stream = await navigator.mediaDevices.getDisplayMedia({ controller });

// Query the displaySurface value of the captured video track
const [track] = stream.getVideoTracks();
const displaySurface = track.getSettings().displaySurface;

if (displaySurface === "browser") {
  // Focus the captured tab.
  controller.setFocusBehavior("focus-captured-surface");
} else if (displaySurface === "window") {
  // Do not move focus to the captured window.
  // Keep the capturing page focused.
  controller.setFocusBehavior("no-focus-change");
}

Specifications

{{Specifications}}

Browser compatibility

{{Compat}}

See also