setDeviceMetricsOverride method
Overrides the values of device screen dimensions (window.screen.width, window.screen.height,
window.innerWidth, window.innerHeight, and "device-width"/"device-height"-related CSS media
query results).
width
Overriding width value in pixels (minimum 0, maximum 10000000). 0 disables the override.
height
Overriding height value in pixels (minimum 0, maximum 10000000). 0 disables the override.
deviceScaleFactor
Overriding device scale factor value. 0 disables the override.
mobile
Whether to emulate mobile device. This includes viewport meta tag, overlay scrollbars, text
autosizing and more.
scale
Scale to apply to resulting view image.
screenWidth
Overriding screen width value in pixels (minimum 0, maximum 10000000).
screenHeight
Overriding screen height value in pixels (minimum 0, maximum 10000000).
positionX
Overriding view X position on screen in pixels (minimum 0, maximum 10000000).
positionY
Overriding view Y position on screen in pixels (minimum 0, maximum 10000000).
dontSetVisibleSize
Do not set visible view size, rely upon explicit setVisibleSize call.
screenOrientation
Screen orientation override.
viewport
If set, the visible area of the page will be overridden to this viewport. This viewport
change is not observed by the page, e.g. viewport-relative elements do not change positions.
displayFeature
If set, the display feature of a multi-segment screen. If not set, multi-segment support
is turned-off.
Implementation
Future<void> setDeviceMetricsOverride(
int width, int height, num deviceScaleFactor, bool mobile,
{num? scale,
int? screenWidth,
int? screenHeight,
int? positionX,
int? positionY,
bool? dontSetVisibleSize,
ScreenOrientation? screenOrientation,
page.Viewport? viewport,
DisplayFeature? displayFeature}) async {
await _client.send('Emulation.setDeviceMetricsOverride', {
'width': width,
'height': height,
'deviceScaleFactor': deviceScaleFactor,
'mobile': mobile,
if (scale != null) 'scale': scale,
if (screenWidth != null) 'screenWidth': screenWidth,
if (screenHeight != null) 'screenHeight': screenHeight,
if (positionX != null) 'positionX': positionX,
if (positionY != null) 'positionY': positionY,
if (dontSetVisibleSize != null) 'dontSetVisibleSize': dontSetVisibleSize,
if (screenOrientation != null) 'screenOrientation': screenOrientation,
if (viewport != null) 'viewport': viewport,
if (displayFeature != null) 'displayFeature': displayFeature,
});
}