Window class Null safety

Top-level container for the current browser tab or window.

In a web browser, each window has a Window object, but within the context of a script, this object represents only the current window. Each other window, tab, and iframe has its own Window object.

Each window contains a Document object, which contains all of the window's content.

Use the top-level window object to access the current window. For example:

// Draw a scene when the window repaints.
drawScene(num delta) {...}
window.animationFrame.then(drawScene);.

// Write to the console.
window.console.log('Jinkies!');
window.console.error('Jeepers!');

Note: This class represents only the current window, while WindowBase is a representation of any window, including other tabs, windows, and frames.

See also

Other resources

Inheritance
Implemented types

Properties

animationFrame Future<num>
Returns a Future that completes just before the window is about to repaint so the user can draw an animation frame.
read-only
animationWorklet → _Worklet?
read-only
applicationCache ApplicationCache?
The application cache for this window.
read-only
audioWorklet → _Worklet?
read-only
caches CacheStorage?
read-only
closed bool?
Indicates whether this window has been closed.
read-onlyoverride
console Console
The debugging console for this window.
read-only
cookieStore CookieStore?
read-only
crypto Crypto?
Entrypoint for the browser's cryptographic functions.
read-only
customElements CustomElementRegistry?
read-only
defaultStatus String?
Deprecated.
read / write
defaultstatus String?
Deprecated.
read / write
devicePixelRatio num
The ratio between physical pixels and logical CSS pixels.
read-only
document Document
The newest document in this window.
read-only
external External?
read-only
hashCode int
The hash code for this object.
read-onlyinherited
history History
The current session history for this window's newest document.
read-onlyoverride
indexedDB → dynamic
Gets an instance of the Indexed DB factory to being using Indexed DB.
read-only
innerHeight int?
The height of the viewport including scrollbars.
read-only
innerWidth int?
The width of the viewport including scrollbars.
read-only
isSecureContext bool?
read-only
localStorage Storage
Storage for this window that persists across sessions.
read-only
location Location
The current location of this window.
read / writeoverride-getter
locationbar BarProp?
This window's location bar, which displays the URL.
read-only
This window's menu bar, which displays menu commands.
read-only
name String?
The name of this window.
read / write
The user agent accessing this window.
read-only
offscreenBuffering bool?
Whether objects are drawn offscreen before being displayed.
read-only
on Events
This is an ease-of-use accessor for event streams which should only be used when an explicit accessor is not available.
read-onlyinherited
onAbort Stream<Event>
Stream of abort events handled by this Window.
read-onlyoverride
onAnimationEnd Stream<AnimationEvent>
Stream of animationend events handled by this Window.
read-only
onAnimationIteration Stream<AnimationEvent>
Stream of animationiteration events handled by this Window.
read-only
onAnimationStart Stream<AnimationEvent>
Stream of animationstart events handled by this Window.
read-only
onBeforeUnload Stream<Event>
Stream of beforeunload events handled by this Window.
read-only
onBlur Stream<Event>
Stream of blur events handled by this Window.
read-onlyoverride
onCanPlay Stream<Event>
read-onlyoverride
onCanPlayThrough Stream<Event>
read-onlyoverride
onChange Stream<Event>
Stream of change events handled by this Window.
read-onlyoverride
onClick Stream<MouseEvent>
Stream of click events handled by this Window.
read-onlyoverride
onContentLoaded Stream<Event>
Stream of contentloaded events handled by this Window.
read-only
onContextMenu Stream<MouseEvent>
Stream of contextmenu events handled by this Window.
read-onlyoverride
onDeviceMotion Stream<DeviceMotionEvent>
Stream of devicemotion events handled by this Window.
read-only
onDeviceOrientation Stream<DeviceOrientationEvent>
Stream of deviceorientation events handled by this Window.
read-only
onDoubleClick Stream<Event>
Stream of doubleclick events handled by this Window.
read-onlyoverride
onDrag Stream<MouseEvent>
Stream of drag events handled by this Window.
read-onlyoverride
onDragEnd Stream<MouseEvent>
Stream of dragend events handled by this Window.
read-onlyoverride
onDragEnter Stream<MouseEvent>
Stream of dragenter events handled by this Window.
read-onlyoverride
onDragLeave Stream<MouseEvent>
Stream of dragleave events handled by this Window.
read-onlyoverride
onDragOver Stream<MouseEvent>
Stream of dragover events handled by this Window.
read-onlyoverride
onDragStart Stream<MouseEvent>
Stream of dragstart events handled by this Window.
read-onlyoverride
onDrop Stream<MouseEvent>
Stream of drop events handled by this Window.
read-onlyoverride
onDurationChange Stream<Event>
read-onlyoverride
onEmptied Stream<Event>
read-onlyoverride
onEnded Stream<Event>
read-onlyoverride
onError Stream<Event>
Stream of error events handled by this Window.
read-onlyoverride
onFocus Stream<Event>
Stream of focus events handled by this Window.
read-onlyoverride
onHashChange Stream<Event>
Stream of hashchange events handled by this Window.
read-onlyoverride
onInput Stream<Event>
Stream of input events handled by this Window.
read-onlyoverride
onInvalid Stream<Event>
Stream of invalid events handled by this Window.
read-onlyoverride
onKeyDown Stream<KeyboardEvent>
Stream of keydown events handled by this Window.
read-onlyoverride
onKeyPress Stream<KeyboardEvent>
Stream of keypress events handled by this Window.
read-onlyoverride
onKeyUp Stream<KeyboardEvent>
Stream of keyup events handled by this Window.
read-onlyoverride
onLoad Stream<Event>
Stream of load events handled by this Window.
read-onlyoverride
onLoadedData Stream<Event>
read-onlyoverride
onLoadedMetadata Stream<Event>
read-onlyoverride
onLoadStart Stream<Event>
read-only
onMessage Stream<MessageEvent>
Stream of message events handled by this Window.
read-onlyoverride
onMouseDown Stream<MouseEvent>
Stream of mousedown events handled by this Window.
read-onlyoverride
onMouseEnter Stream<MouseEvent>
Stream of mouseenter events handled by this Window.
read-onlyoverride
onMouseLeave Stream<MouseEvent>
Stream of mouseleave events handled by this Window.
read-onlyoverride
onMouseMove Stream<MouseEvent>
Stream of mousemove events handled by this Window.
read-onlyoverride
onMouseOut Stream<MouseEvent>
Stream of mouseout events handled by this Window.
read-onlyoverride
onMouseOver Stream<MouseEvent>
Stream of mouseover events handled by this Window.
read-onlyoverride
onMouseUp Stream<MouseEvent>
Stream of mouseup events handled by this Window.
read-onlyoverride
onMouseWheel Stream<WheelEvent>
Stream of mousewheel events handled by this Window.
read-onlyoverride
onOffline Stream<Event>
Stream of offline events handled by this Window.
read-onlyoverride
onOnline Stream<Event>
Stream of online events handled by this Window.
read-onlyoverride
onPageHide Stream<Event>
Stream of pagehide events handled by this Window.
read-only
onPageShow Stream<Event>
Stream of pageshow events handled by this Window.
read-only
onPause Stream<Event>
read-onlyoverride
onPlay Stream<Event>
read-onlyoverride
onPlaying Stream<Event>
read-onlyoverride
onPopState Stream<PopStateEvent>
Stream of popstate events handled by this Window.
read-onlyoverride
onProgress Stream<Event>
read-only
onRateChange Stream<Event>
read-onlyoverride
onReset Stream<Event>
Stream of reset events handled by this Window.
read-onlyoverride
onResize Stream<Event>
Stream of resize events handled by this Window.
read-onlyoverride
onScroll Stream<Event>
Stream of scroll events handled by this Window.
read-onlyoverride
onSearch Stream<Event>
Stream of search events handled by this Window.
read-only
onSeeked Stream<Event>
read-onlyoverride
onSeeking Stream<Event>
read-onlyoverride
onSelect Stream<Event>
Stream of select events handled by this Window.
read-onlyoverride
onStalled Stream<Event>
read-onlyoverride
onStorage Stream<StorageEvent>
Stream of storage events handled by this Window.
read-onlyoverride
onSubmit Stream<Event>
Stream of submit events handled by this Window.
read-onlyoverride
onSuspend Stream<Event>
read-onlyoverride
onTimeUpdate Stream<Event>
read-onlyoverride
onTouchCancel Stream<TouchEvent>
Stream of touchcancel events handled by this Window.
read-onlyoverride
onTouchEnd Stream<TouchEvent>
Stream of touchend events handled by this Window.
read-onlyoverride
onTouchMove Stream<TouchEvent>
Stream of touchmove events handled by this Window.
read-onlyoverride
onTouchStart Stream<TouchEvent>
Stream of touchstart events handled by this Window.
read-onlyoverride
onTransitionEnd Stream<TransitionEvent>
Stream of transitionend events handled by this Window.
read-only
onUnload Stream<Event>
Stream of unload events handled by this Window.
read-onlyoverride
onVolumeChange Stream<Event>
read-onlyoverride
onWaiting Stream<Event>
read-onlyoverride
onWheel Stream<WheelEvent>
Stream of wheel events handled by this Window.
read-onlyoverride
opener WindowBase?
A reference to the window that opened this one.
read / writeoverride-getter
orientation int?
read-only
origin String?
read-only
outerHeight int
The height of this window including all user interface elements.
read-only
outerWidth int
The width of the window including all user interface elements.
read-only
pageXOffset int
read-only
pageYOffset int
read-only
parent WindowBase?
A reference to the parent of this window.
read-onlyoverride
performance Performance
Timing and navigation data for this window.
read-only
runtimeType Type
A representation of the runtime type of the object.
read-onlyinherited
screen Screen?
Information about the screen displaying this window.
read-only
screenLeft int?
The distance from the left side of the screen to the left side of this window.
read-only
screenTop int?
The distance from the top of the screen to the top of this window.
read-only
screenX int?
The distance from the left side of the screen to the mouse pointer.
read-only
screenY int?
The distance from the top of the screen to the mouse pointer.
read-only
scrollbars BarProp?
This window's scroll bars.
read-only
scrollX int
The distance this window has been scrolled horizontally.
read-only
scrollY int
The distance this window has been scrolled vertically.
read-only
self WindowBase?
The current window.
read-only
sessionStorage Storage
Storage for this window that is cleared when this session ends.
read-only
speechSynthesis SpeechSynthesis?
Access to speech synthesis in the browser.
read-only
status String?
Deprecated.
read / write
statusbar BarProp?
This window's status bar.
read-only
styleMedia StyleMedia?
Access to CSS media queries.
read-only
toolbar BarProp?
This window's tool bar.
read-only
top WindowBase?
A reference to the topmost window in the window hierarchy.
read-onlyoverride
visualViewport VisualViewport?
read-only
window WindowBase?
The current window.
read-only

Methods

addEventListener(String type, EventListener? listener, [bool? useCapture]) → void
inherited
alert([String? message]) → void
Displays a modal alert to the user.
atob(String atob) String
override
btoa(String btoa) String
override
cancelAnimationFrame(int id) → void
Cancels an animation frame request.
cancelIdleCallback(int handle) → void
close() → void
Closes the window.
override
confirm([String? message]) bool
Displays a modal OK/Cancel prompt to the user.
dispatchEvent(Event event) bool
inherited
fetch(dynamic input, [Map? init]) Future
find(String? string, bool? caseSensitive, bool? backwards, bool? wrap, bool? wholeWord, bool? searchInFrames, bool? showDialog) bool
Finds text in this window.
getComputedStyleMap(Element element, String? pseudoElement) StylePropertyMapReadonly
getMatchedCssRules(Element? element, String? pseudoElement) List<CssRule>
Returns all CSS rules that apply to the element's pseudo-element.
getSelection() Selection?
Returns the currently selected text.
matchMedia(String query) MediaQueryList
Returns a list of media queries for the given query string.
moveBy(int x, int y) → void
Moves this window.
moveTo(Point<num> p) → void
Moves this window to a specific position.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a non-existent method or property is accessed.
inherited
open(String url, String name, [String? options]) WindowBase
Opens a new window.
postMessage(dynamic message, String targetOrigin, [List<Object>? transfer]) → void
Sends a cross-origin message.
override
print() → void
Opens the print dialog for this window.
removeEventListener(String type, EventListener? listener, [bool? useCapture]) → void
inherited
requestAnimationFrame(FrameRequestCallback callback) int
Called to draw an animation frame and then request the window to repaint after callback has finished (creating the animation).
requestFileSystem(int size, {bool persistent = false}) Future<FileSystem>
Access a sandboxed file system of size bytes.
requestIdleCallback(IdleRequestCallback callback, [Map? options]) int
resizeBy(int x, int y) → void
Resizes this window by an offset.
resizeTo(int x, int y) → void
Resizes this window to a specific width and height.
resolveLocalFileSystemUrl(String url) Future<Entry>
Asynchronously retrieves a local filesystem entry.
scroll([dynamic options_OR_x, dynamic y, Map? scrollOptions]) → void
Scrolls the page horizontally and vertically to a specific point.
scrollBy([dynamic options_OR_x, dynamic y, Map? scrollOptions]) → void
Scrolls the page horizontally and vertically by an offset.
scrollTo([dynamic options_OR_x, dynamic y, Map? scrollOptions]) → void
Scrolls the page horizontally and vertically to a specific point.
stop() → void
Stops the window from loading.
toString() String
A string representation of this object.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited

Static Properties

supportsPointConversions bool
convertPointFromNodeToPage and convertPointFromPageToNode are removed. see http://dev.w3.org/csswg/cssom-view/#geometry
read-only

Constants

animationEndEvent → const EventStreamProvider<AnimationEvent>
Static factory designed to expose animationend events to event handlers that are not necessarily instances of Window.
const EventStreamProvider<AnimationEvent>('webkitAnimationEnd')
animationIterationEvent → const EventStreamProvider<AnimationEvent>
Static factory designed to expose animationiteration events to event handlers that are not necessarily instances of Window.
const EventStreamProvider<AnimationEvent>('webkitAnimationIteration')
animationStartEvent → const EventStreamProvider<AnimationEvent>
Static factory designed to expose animationstart events to event handlers that are not necessarily instances of Window.
const EventStreamProvider<AnimationEvent>('webkitAnimationStart')
beforeUnloadEvent → const EventStreamProvider<BeforeUnloadEvent>
Static factory designed to expose beforeunload events to event handlers that are not necessarily instances of Window.
const EventStreamProvider('beforeunload')
contentLoadedEvent → const EventStreamProvider<Event>
Static factory designed to expose contentloaded events to event handlers that are not necessarily instances of Window.
const EventStreamProvider<Event>('DOMContentLoaded')
deviceMotionEvent → const EventStreamProvider<DeviceMotionEvent>
Static factory designed to expose devicemotion events to event handlers that are not necessarily instances of Window.
const EventStreamProvider<DeviceMotionEvent>('devicemotion')
deviceOrientationEvent → const EventStreamProvider<DeviceOrientationEvent>
Static factory designed to expose deviceorientation events to event handlers that are not necessarily instances of Window.
const EventStreamProvider<DeviceOrientationEvent>('deviceorientation')
hashChangeEvent → const EventStreamProvider<Event>
Static factory designed to expose hashchange events to event handlers that are not necessarily instances of Window.
const EventStreamProvider<Event>('hashchange')
loadStartEvent → const EventStreamProvider<Event>
const EventStreamProvider<Event>('loadstart')
messageEvent → const EventStreamProvider<MessageEvent>
Static factory designed to expose message events to event handlers that are not necessarily instances of Window.
const EventStreamProvider<MessageEvent>('message')
offlineEvent → const EventStreamProvider<Event>
Static factory designed to expose offline events to event handlers that are not necessarily instances of Window.
const EventStreamProvider<Event>('offline')
onlineEvent → const EventStreamProvider<Event>
Static factory designed to expose online events to event handlers that are not necessarily instances of Window.
const EventStreamProvider<Event>('online')
pageHideEvent → const EventStreamProvider<Event>
Static factory designed to expose pagehide events to event handlers that are not necessarily instances of Window.
const EventStreamProvider<Event>('pagehide')
pageShowEvent → const EventStreamProvider<Event>
Static factory designed to expose pageshow events to event handlers that are not necessarily instances of Window.
const EventStreamProvider<Event>('pageshow')
PERSISTENT → const int
Indicates that file system data cannot be cleared unless given user permission.
1
popStateEvent → const EventStreamProvider<PopStateEvent>
Static factory designed to expose popstate events to event handlers that are not necessarily instances of Window.
const EventStreamProvider<PopStateEvent>('popstate')
progressEvent → const EventStreamProvider<Event>
const EventStreamProvider<Event>('progress')
storageEvent → const EventStreamProvider<StorageEvent>
Static factory designed to expose storage events to event handlers that are not necessarily instances of Window.
const EventStreamProvider<StorageEvent>('storage')
TEMPORARY → const int
Indicates that file system data can be cleared at any time.
0
unloadEvent → const EventStreamProvider<Event>
Static factory designed to expose unload events to event handlers that are not necessarily instances of Window.
const EventStreamProvider<Event>('unload')