SetIconDetails constructor
Implementation
SetIconDetails({
/// Either an ImageData object or a dictionary {size -> ImageData}
/// representing an icon to be set. If the icon is specified as a
/// dictionary, the image used is chosen depending on the screen's pixel
/// density. If the number of image pixels that fit into one screen space
/// unit equals `scale`, then an image with size `scale` * n is selected,
/// where <i>n</i> is the size of the icon in the UI. At least one image
/// must be specified. Note that 'details.imageData = foo' is equivalent to
/// 'details.imageData = {'16': foo}'
Object? imageData,
/// Either a relative image path or a dictionary {size -> relative image
/// path} pointing to an icon to be set. If the icon is specified as a
/// dictionary, the image used is chosen depending on the screen's pixel
/// density. If the number of image pixels that fit into one screen space
/// unit equals `scale`, then an image with size `scale` * n is selected,
/// where <i>n</i> is the size of the icon in the UI. At least one image
/// must be specified. Note that 'details.path = foo' is equivalent to
/// 'details.path = {'16': foo}'
Object? path,
/// Limits the change to when a particular tab is selected. Automatically
/// resets when the tab is closed.
int? tabId,
}) : _wrapped = $js.SetIconDetails(
imageData: switch (imageData) {
JSObject() => imageData,
Map() => imageData.jsify()!,
null => null,
_ => throw UnsupportedError(
'Received type: ${imageData.runtimeType}. Supported types are: JSObject, Map')
},
path: switch (path) {
String() => path.jsify()!,
Map() => path.jsify()!,
null => null,
_ => throw UnsupportedError(
'Received type: ${path.runtimeType}. Supported types are: String, Map')
},
tabId: tabId,
);