@ohos.window (Window)

The Window module provides basic window management capabilities, such as creating and destroying the current window, setting properties for the current window, and managing and scheduling windows.

This module provides the following common window-related functions:

  • Window: the current window instance, which is the basic unit managed by the window manager.
  • WindowStage: window manager that manages windows.

NOTE

The initial APIs of this module are supported since API version 6. Newly added APIs will be marked with a superscript to indicate their earliest API version.

Modules to Import

import window from '@ohos.window';

WindowType7+

Enumerates the window types.

System capability: SystemCapability.WindowManager.WindowManager.Core

Name Value Description
TYPE_APP 0 Application subwindow.
Model restriction: This API can be used only in the FA model.
TYPE_SYSTEM_ALERT 1 System alert window.
TYPE_INPUT_METHOD9+ 2 Input method window.
Model restriction: This API can be used only in the stage model.
System API: This is a system API.
TYPE_STATUS_BAR9+ 3 Status bar.
Model restriction: This API can be used only in the stage model.
System API: This is a system API.
TYPE_PANEL9+ 4 Notification panel.
Model restriction: This API can be used only in the stage model.
System API: This is a system API.
TYPE_KEYGUARD9+ 5 Lock screen.
Model restriction: This API can be used only in the stage model.
System API: This is a system API.
TYPE_VOLUME_OVERLAY9+ 6 Volume bar.
Model restriction: This API can be used only in the stage model.
System API: This is a system API.
TYPE_NAVIGATION_BAR9+ 7 Navigation bar.
Model restriction: This API can be used only in the stage model.
System API: This is a system API.
TYPE_FLOAT9+ 8 Floating window.
Model restriction: This API can be used only in the stage model.
Required permissions: ohos.permission.SYSTEM_FLOAT_WINDOW
TYPE_WALLPAPER9+ 9 Wallpaper.
Model restriction: This API can be used only in the stage model.
System API: This is a system API.
TYPE_DESKTOP9+ 10 Home screen.
Model restriction: This API can be used only in the stage model.
System API: This is a system API.
TYPE_LAUNCHER_RECENT9+ 11 Recent tasks screen.
Model restriction: This API can be used only in the stage model.
System API: This is a system API.
TYPE_LAUNCHER_DOCK9+ 12 Dock bar on the home screen.
Model restriction: This API can be used only in the stage model.
System API: This is a system API.
TYPE_VOICE_INTERACTION9+ 13 Voice assistant.
Model restriction: This API can be used only in the stage model.
System API: This is a system API.
TYPE_POINTER9+ 14 Mouse.
Model restriction: This API can be used only in the stage model.
System API: This is a system API.
TYPE_FLOAT_CAMERA9+ 15 Floating camera window.
Model restriction: This API can be used only in the stage model.
System API: This is a system API.
TYPE_DIALOG9+ 16 Modal window.
Model restriction: This API can be used only in the stage model.
System API: This is a system API.
TYPE_SCREENSHOT9+ 17 Screenshot window.
Model restriction: This API can be used only in the stage model.
System API: This is a system API.

Configuration9+

Defines the parameters for creating a subwindow or system window.

System capability: SystemCapability.WindowManager.WindowManager.Core

Name Type Mandatory Description
name string Yes Name of the window.
windowType WindowType Yes Type of the window.
ctx BaseContext No Current application context. If this parameter is not set, no context is used.
You do not need to set this parameter to create a subwindow in the FA model or a system window in the stage model.
displayId number No ID of the current physical screen. If this parameter is not set, the default value -1 is used.
parentId number No ID of the parent window. If this parameter is not set, the default value -1 is used.

AvoidAreaType7+

Enumerates the types of the area where the window cannot be displayed.

System capability: SystemCapability.WindowManager.WindowManager.Core

Name Value Description
TYPE_SYSTEM 0 Default area of the system. Generally, the status bar and navigation bar are included. The default area may vary according to the device in use.
TYPE_CUTOUT 1 Notch.
TYPE_SYSTEM_GESTURE9+ 2 Gesture area.
TYPE_KEYBOARD9+ 3 Soft keyboard area.

WindowMode7+

Enumerates the window modes.

System API: This is a system API.

System capability: SystemCapability.WindowManager.WindowManager.Core

Name Value Description
UNDEFINED 1 The window mode is not defined by the application.
FULLSCREEN 2 The application is displayed in full screen.
PRIMARY 3 The application is displayed in the primary window in split-screen mode.
SECONDARY 4 The application is displayed in the secondary window in split-screen mode.
FLOATING 5 The application is displayed in a floating window.

WindowLayoutMode9+

Enumerates the window layout modes.

System API: This is a system API.

System capability: SystemCapability.WindowManager.WindowManager.Core

Name Value Description
WINDOW_LAYOUT_MODE_CASCADE 0 Cascade mode.
WINDOW_LAYOUT_MODE_TILE 1 Tile mode.

SystemBarProperties

Describes the properties of the status bar and navigation bar.

System capability: SystemCapability.WindowManager.WindowManager.Core

Name Type Mandatory Description
statusBarColor string No Background color of the status bar. The value is a hexadecimal RGB or aRGB color value and is case insensitive, for example, #00FF00 or #FF00FF00. The default value is #0x66000000.
isStatusBarLightIcon7+ boolean No Whether any icon on the status bar is highlighted. The value true means that the icon is highlighted, and false means the opposite. The default value is false.
statusBarContentColor8+ string No Color of the text on the status bar. After this property is set, the setting of isStatusBarLightIcon is invalid. The default value is 0xE5FFFFFF.
navigationBarColor string No Background color of the navigation bar. The value is a hexadecimal RGB or aRGB color value and is case insensitive, for example, #00FF00 or #FF00FF00. The default value is #0x66000000.
isNavigationBarLightIcon7+ boolean No Whether any icon on the navigation bar is highlighted. The value true means that the icon is highlighted, and false means the opposite. The default value is false.
navigationBarContentColor8+ string No Color of the text on the navigation bar. After this property is set, the setting of isNavigationBarLightIcon is invalid. The default value is 0xE5FFFFFF.

Orientation9+

Enumerates the window orientations.

System capability: SystemCapability.WindowManager.WindowManager.Core

Name Value Description
UNSPECIFIED 0 Unspecified. The orientation is determined by the system.
PORTRAIT 1 Portrait.
LANDSCAPE 2 Landscape.
PORTRAIT_INVERTED 3 Reverse portrait.
LANDSCAPE_INVERTED 4 Reverse landscape.
AUTO_ROTATION 5 Auto rotation.
AUTO_ROTATION_PORTRAIT 6 Auto rotation in the vertical direction.
AUTO_ROTATION_LANDSCAPE 7 Auto rotation in the horizontal direction.
AUTO_ROTATION_RESTRICTED 8 Switched-determined auto rotation.
AUTO_ROTATION_PORTRAIT_RESTRICTED 9 Switched-determined auto rotation in the vertical direction.
AUTO_ROTATION_LANDSCAPE_RESTRICTED 10 Switched-determined auto rotation in the horizontal direction.
LOCKED 11 Locked.

BlurStyle9+

Enumerates the window blur styles.

System API: This is a system API.

System capability: SystemCapability.WindowManager.WindowManager.Core

Name Value Description
OFF 0 Blur disabled.
THIN 1 Thin blur.
REGULAR 2 Regular blur.
THICK 3 Thick blur.

SystemBarRegionTint8+

Describes the callback for a single system bar.

System API: This is a system API.

System capability: SystemCapability.WindowManager.WindowManager.Core

Name Type Readable Writable Description
type WindowType Yes No Type of the system bar whose properties are changed. Only the status bar and navigation bar are supported.
isEnable boolean Yes No Whether the system bar is displayed. The value true means that the system bar is displayed, and false means the opposite.
region Rect Yes No Current position and size of the system bar.
backgroundColor string Yes No Background color of the system bar. The value is a hexadecimal RGB or aRGB color value and is case insensitive, for example, #00FF00 or #FF00FF00.
contentColor string Yes No Color of the text on the system bar.

SystemBarTintState8+

Describes the callback for the current system bar.

System API: This is a system API.

System capability: SystemCapability.WindowManager.WindowManager.Core

Name Type Readable Writable Description
displayId number Yes No ID of the current physical screen.
regionTint Array<SystemBarRegionTint> Yes No All system bar information that has been changed.

Rect7+

Describes the rectangular area of the window.

System capability: SystemCapability.WindowManager.WindowManager.Core

Name Type Readable Writable Description
left number Yes Yes Left boundary of the rectangle, in pixels.
top number Yes Yes Top boundary of the rectangle, in pixels.
width number Yes Yes Width of the rectangle, in pixels.
height number Yes Yes Height of the rectangle, in pixels.

AvoidArea7+

Describes the area where the window cannot be displayed.

System capability: SystemCapability.WindowManager.WindowManager.Core

Name Type Readable Writable Description
visible9+ boolean Yes Yes Whether the window can be displayed in the area. The value true means that the window can be displayed in the area, and false means the opposite.
leftRect Rect Yes Yes Rectangle on the left of the screen.
topRect Rect Yes Yes Rectangle at the top of the screen.
rightRect Rect Yes Yes Rectangle on the right of the screen.
bottomRect Rect Yes Yes Rectangle at the bottom of the screen.

Size7+

Describes the window size.

System capability: SystemCapability.WindowManager.WindowManager.Core

Name Type Readable Writable Description
width number Yes Yes Window width, in pixels.
height number Yes Yes Window height, in pixels.

WindowProperties

Describes the window properties.

System capability: SystemCapability.WindowManager.WindowManager.Core

Name Type Readable Writable Description
windowRect7+ Rect Yes Yes Window size.
type7+ WindowType Yes Yes Window type.
isFullScreen boolean Yes Yes Whether the window is displayed in full screen mode. The default value is false. The value true means that the window is displayed in full screen mode, and false means the opposite.
isLayoutFullScreen7+ boolean Yes Yes Whether the window layout is in full-screen mode (whether the window is immersive). The default value is false. The value true means that the window is immersive, and false means the opposite.
focusable7+ boolean Yes No Whether the window can gain focus. The default value is true. The value true means that the window can gain focus, and false means the opposite.
touchable7+ boolean Yes No Whether the window is touchable. The default value is true. The value true means that the window is touchable, and false means the opposite.
brightness number Yes Yes Screen brightness. The value ranges from 0 to 1. The value 1 indicates the maximum brightness.
dimBehindValue(deprecated) number Yes Yes Dimness of the window that is not on top. The value ranges from 0 to 1. The value 1 indicates the maximum dimness.
NOTE
This property is supported since API version 7 and deprecated since API version 9.
isKeepScreenOn boolean Yes Yes Whether the screen is always on. The default value is false. The value true means that the screen is always on, and false means the opposite.
isPrivacyMode7+ boolean Yes Yes Whether the window is in privacy mode. The default value is false. The value true means that the window is in privacy mode, and false means the opposite.
isRoundCorner(deprecated) boolean Yes Yes Whether the window has rounded corners. The default value is false. The value true means that the window has rounded corners, and false means the opposite.
NOTE
This property is supported since API version 7 and deprecated since API version 9.
isTransparent7+ boolean Yes Yes Whether the window is transparent. The default value is false. The value true means that the window is transparent, and false means the opposite.
id9+ number Yes No Window ID. The default value is 0.0.

ColorSpace8+

Enumerates the color spaces.

System capability: SystemCapability.WindowManager.WindowManager.Core

Name Value Description
DEFAULT 0 Default SRGB gamut.
WIDE_GAMUT 1 Wide-gamut.

ScaleOptions9+

Describes the scale parameters.

System API: This is a system API.

System capability: SystemCapability.WindowManager.WindowManager.Core

Name Type Readable Writable Description
x number No Yes Scale factor along the x-axis. The default value is 1.0.
y number No Yes Scale factor along the y-axis. The default value is 1.0.
pivotX number No Yes X coordinate of the scale center. The value ranges from 0.0 to 1.0, and the default value is 0.5.
pivotY number No Yes Y coordinate of the scale center. The value ranges from 0.0 to 1.0, and the default value is 0.5.

RotateOptions9+

Describes the rotation parameters.

System API: This is a system API.

System capability: SystemCapability.WindowManager.WindowManager.Core

Name Type Readable Writable Description
x number No Yes Rotation angle around the x-axis. The default value is 0.0.
y number No Yes Rotation angle around the y-axis. The default value is 0.0.
z number No Yes Rotation angle around the z-xis. The default value is 0.0.
pivotX number No Yes X coordinate of the rotation center. The value ranges from 0.0 to 1.0, and the default value is 0.5.
pivotY number No Yes Y coordinate of the rotation center. The value ranges from 0.0 to 1.0, and the default value is 0.5.

TranslateOptions9+

Describes the translation parameters.

System API: This is a system API.

System capability: SystemCapability.WindowManager.WindowManager.Core

Name Type Readable Writable Description
x number No Yes Distance to translate along the x-axis. The default value is 0.0.
y number No Yes Distance to translate along the y-axis. The default value is 0.0.
z number No Yes Distance to translate along the z-axis. The default value is 0.0.

window.createWindow9+

createWindow(config: Configuration, callback: AsyncCallback<Window>): void

Creates a subwindow or system window. This API uses an asynchronous callback to return the result.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
config Configuration Yes Parameters used for creating the window.
callback AsyncCallback<Window> Yes Callback used to return the window created.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300001 Repeated operation.
1300006 This window context is abnormal.

Example

let windowClass = null;
let config = {name: "alertWindow", windowType: window.WindowType.TYPE_SYSTEM_ALERT, ctx: this.context};
try {
    window.createWindow(config, (err, data) => {
        if (err.code) {
            console.error('Failed to create the window. Cause: ' + JSON.stringify(err));
            return;
        }
        windowClass = data;
        console.info('Succeeded in creating the window. Data: ' + JSON.stringify(data));
        windowClass.resetSize(500, 1000);
    });
} catch (exception) {
    console.error('Failed to create the window. Cause: ' + JSON.stringify(exception));
}

window.createWindow9+

createWindow(config: Configuration): Promise<Window>

Creates a subwindow or system window. This API uses a promise to return the result.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
config Configuration Yes Parameters used for creating the window.

Return value

Type Description
Promise<Window> Promise used to return the window created.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300001 Repeated operation.
1300006 This window context is abnormal.

Example

let windowClass = null;
let config = {name: "alertWindow", windowType: window.WindowType.TYPE_SYSTEM_ALERT, ctx: this.context};
try {
    let promise = window.createWindow(config);
    promise.then((data)=> {
        windowClass = data;
        console.info('Succeeded in creating the window. Data:' + JSON.stringify(data));
    }).catch((err)=>{
        console.error('Failed to create the Window. Cause:' + JSON.stringify(err));
    });
} catch (exception) {
    console.error('Failed to create the window. Cause: ' + JSON.stringify(exception));
}

window.findWindow9+

findWindow(name: string): Window

Finds a window based on the name.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
name string Yes Window ID.

Return value

Type Description
Window Window found.

Example

let windowClass = null;
try {
    windowClass = window.findWindow('alertWindow');
} catch (exception) {
    console.error('Failed to find the Window. Cause: ' + JSON.stringify(exception));
}

window.getLastWindow9+

getLastWindow(ctx: BaseContext, callback: AsyncCallback<Window>): void

Obtains the top window of the current application. This API uses an asynchronous callback to return the result.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
ctx BaseContext Yes Current application context.
callback AsyncCallback<Window> Yes Callback used to return the top window obtained.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.
1300006 This window context is abnormal.

Example

let windowClass = null;
try {
    window.getLastWindow(this.context, (err, data) => {
        if (err.code) {
            console.error('Failed to obtain the top window. Cause: ' + JSON.stringify(err));
            return;
        }
        windowClass = data;
        console.info('Succeeded in obtaining the top window. Data: ' + JSON.stringify(data));
    });
} catch (exception) {
    console.error('Failed to obtain the top window. Cause: ' + JSON.stringify(exception));
}

window.getLastWindow9+

getLastWindow(ctx: BaseContext): Promise<Window>

Obtains the top window of the current application. This API uses a promise to return the result.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
ctx BaseContext Yes Current application context.

Return value

Type Description
Promise<Window> Promise used to return the top window obtained.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.
1300006 This window context is abnormal.

Example

let windowClass = null;
try {
    let promise = window.getLastWindow(this.context);
    promise.then((data)=> {
        windowClass = data;
        console.info('Succeeded in obtaining the top window. Data: ' + JSON.stringify(data));
    }).catch((err)=>{
        console.error('Failed to obtain the top window. Cause: ' + JSON.stringify(err));
    });
} catch (exception) {
    console.error('Failed to obtain the top window. Cause: ' + JSON.stringify(exception));
}

window.minimizeAll9+

minimizeAll(id: number, callback: AsyncCallback<void>): void

Minimizes all windows on a display. This API uses an asynchronous callback to return the result.

System API: This is a system API.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
id number Yes ID of the display.
callback AsyncCallback<void> Yes Callback used to return the result.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300003 This window manager service works abnormally.

Example

import display from '@ohos.display'

let displayClass = null;
try {
    displayClass = display.getDefaultDisplaySync();

    try {
        window.minimizeAll(displayClass.id, (err) => {
            if(err.code) {
                console.error('Failed to minimize all windows. Cause: ' + JSON.stringify(err));
                return;
            }
            console.info('Succeeded in minimizing all windows.');
        });
    } catch (exception) {
        console.error('Failed to minimize all windows. Cause: ' + JSON.stringify(exception));
    }
} catch (exception) {
    console.error('Failed to obtain the default display object. Code: ' + JSON.stringify(exception));
}

window.minimizeAll9+

minimizeAll(id: number): Promise<void>

Minimizes all windows on a display. This API uses a promise to return the result.

System API: This is a system API.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
id number Yes ID of the display.

Return value

Type Description
Promise<void> Promise that returns no value.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300003 This window manager service works abnormally.

Example

import display from '@ohos.display'

let displayClass = null;
try {
    displayClass = display.getDefaultDisplaySync();

    try {
        let promise = window.minimizeAll(displayClass.id);
        promise.then(()=> {
            console.info('Succeeded in minimizing all windows.');
        }).catch((err)=>{
            console.error('Failed to minimize all windows. Cause: ' + JSON.stringify(err));
        });
    } catch (exception) {
        console.error('Failed to minimize all windows. Cause: ' + JSON.stringify(exception));
    }
} catch (exception) {
    console.error('Failed to obtain the default display object. Code: ' + JSON.stringify(exception));
}

window.toggleShownStateForAllAppWindows9+

toggleShownStateForAllAppWindows(callback: AsyncCallback<void>): void

Hides or restores the application's windows during quick multi-window switching. This API uses an asynchronous callback to return the result.

System API: This is a system API.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
callback AsyncCallback<void> Yes Callback used to return the result.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300003 This window manager service works abnormally.

Example

window.toggleShownStateForAllAppWindows((err) => {
    if (err.code) {
        console.error('Failed to toggle shown state for all app windows. Cause: ' + JSON.stringify(err));
        return;
    }
    console.info('Succeeded in toggling shown state for all app windows.');
});

window.toggleShownStateForAllAppWindows9+

toggleShownStateForAllAppWindows(): Promise<void>

Hides or restores the application's windows during quick multi-window switching. This API uses a promise to return the result.

System API: This is a system API.

System capability: SystemCapability.WindowManager.WindowManager.Core

Return value

Type Description
Promise<void> Promise that returns no value.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300003 This window manager service works abnormally.

Example

let promise = window.toggleShownStateForAllAppWindows();
promise.then(()=> {
    console.info('Succeeded in toggling shown state for all app windows.');
}).catch((err)=>{
    console.error('Failed to toggle shown state for all app windows. Cause: ' + JSON.stringify(err));
});

window.setWindowLayoutMode9+

setWindowLayoutMode(mode: WindowLayoutMode, callback: AsyncCallback<void>): void

Sets the window layout mode. This API uses an asynchronous callback to return the result.

System API: This is a system API.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
mode WindowLayoutMode Yes Window layout mode to set.
callback AsyncCallback<void> Yes Callback used to return the result.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300003 This window manager service works abnormally.

Example

try {
    window.setWindowLayoutMode(window.WindowLayoutMode.WINDOW_LAYOUT_MODE_CASCADE, (err) => {
        if(err.code) {
            console.error('Failed to set window layout mode. Cause: ' + JSON.stringify(err));
            return;
        }
        console.info('Succeeded in setting window layout mode.');
    });
} catch (exception) {
    console.error('Failed to set window layout mode. Cause: ' + JSON.stringify(exception));
}

window.setWindowLayoutMode9+

setWindowLayoutMode(mode: WindowLayoutMode): Promise<void>

Sets the window layout mode. This API uses a promise to return the result.

System API: This is a system API.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
mode WindowLayoutMode Yes Window layout mode to set.

Return value

Type Description
Promise<void> Promise that returns no value.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300003 This window manager service works abnormally.

Example

try {
    let promise = window.setWindowLayoutMode(window.WindowLayoutMode.WINDOW_LAYOUT_MODE_CASCADE);
    promise.then(()=> {
        console.info('Succeeded in setting window layout mode.');
    }).catch((err)=>{
        console.error('Failed to set window layout mode. Cause: ' + JSON.stringify(err));
    });
} catch (exception) {
    console.error('Failed to set window layout mode. Cause: ' + JSON.stringify(exception));
}

window.on('systemBarTintChange')8+

on(type: 'systemBarTintChange', callback: Callback<SystemBarTintState>): void

Enables listening for properties changes of the status bar and navigation bar.

System API: This is a system API.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
type string Yes Event type. The value is fixed at 'systemBarTintChange', indicating the property change event of the status bar and navigation bar.
callback Callback<SystemBarTintState> Yes Callback used to return the properties of the status bar and navigation bar.

Example

try {
    window.on('systemBarTintChange', (data) => {
        console.info('Succeeded in enabling the listener for systemBarTint changes. Data: ' + JSON.stringify(data));
    });
} catch (exception) {
    console.error('Failed to enable the listener for systemBarTint changes. Cause: ' + JSON.stringify(exception));
}

window.off('systemBarTintChange')8+

off(type: 'systemBarTintChange', callback?: Callback<SystemBarTintState >): void

Disables listening for properties changes of the status bar and navigation bar.

System API: This is a system API.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
type string Yes Event type. The value is fixed at 'systemBarTintChange', indicating the property change event of the status bar and navigation bar.
callback Callback<SystemBarTintState> No Callback used to return the properties of the status bar and navigation bar.

Example

try {
    window.off('systemBarTintChange');
} catch (exception) {
    console.error('Failed to disable the listener for systemBarTint changes. Cause: ' + JSON.stringify(exception));
}

window.create(deprecated)

create(id: string, type: WindowType, callback: AsyncCallback<Window>): void

Creates a subwindow. This API uses an asynchronous callback to return the result.

NOTE

This API is supported since API version 7 and deprecated since API version 9. You are advised to use createWindow() instead.

Model restriction: This API can be used only in the FA model.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
id string Yes Window ID.
type WindowType Yes Window type.
callback AsyncCallback<Window> Yes Callback used to return the subwindow created.

Example

let windowClass = null;
window.create('first', window.WindowType.TYPE_APP,(err,data) => {
    if(err.code){
        console.error('Failed to create the subWindow. Cause: ' + JSON.stringify(err));
        return;
    }
    windowClass = data;
    console.info('Succeeded in creating the subWindow. Data: ' + JSON.stringify(data));
});

window.create(deprecated)

create(id: string, type: WindowType): Promise<Window>

Creates a subwindow. This API uses a promise to return the result.

NOTE

This API is supported since API version 7 and deprecated since API version 9. You are advised to use createWindow() instead.

Model restriction: This API can be used only in the FA model.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
id string Yes Window ID.
type WindowType Yes Window type.

Return value

Type Description
Promise<Window> Promise used to return the subwindow created.

Example

let windowClass = null;
let promise = window.create('first', window.WindowType.TYPE_APP);
promise.then((data)=> {
    windowClass = data;
    console.info('Succeeded in creating the subWindow. Data: ' + JSON.stringify(data));
}).catch((err)=>{
    console.error('Failed to create the subWindow. Cause: ' + JSON.stringify(err));
});

window.create(deprecated)

create(ctx: BaseContext, id: string, type: WindowType, callback: AsyncCallback<Window>): void

Creates a system window. This API uses an asynchronous callback to return the result.

NOTE

This API is supported since API version 7 and deprecated since API version 9. You are advised to use createWindow() instead.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
ctx BaseContext Yes Current application context.
id string Yes Window ID.
type WindowType Yes Window type.
callback AsyncCallback<Window> Yes Callback used to return the subwindow created.

Example

let windowClass = null;
window.create(this.context, 'alertWindow', window.WindowType.TYPE_SYSTEM_ALERT, (err, data) => {
    if (err.code) {
        console.error('Failed to create the window. Cause: ' + JSON.stringify(err));
        return;
    }
    windowClass = data;
    console.info('Succeeded in creating the window. Data: ' + JSON.stringify(data));
    windowClass.resetSize(500, 1000);
});

window.create(deprecated)

create(ctx: BaseContext, id: string, type: WindowType): Promise<Window>

Creates a system window. This API uses a promise to return the result.

NOTE

This API is supported since API version 7 and deprecated since API version 9. You are advised to use createWindow() instead.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
ctx BaseContext Yes Current application context.
id string Yes Window ID.
type WindowType Yes Window type.

Return value

Type Description
Promise<Window> Promise used to return the subwindow created.

Example

let windowClass = null;
let promise = window.create(this.context, 'alertWindow', window.WindowType.TYPE_SYSTEM_ALERT);
promise.then((data)=> {
    windowClass = data;
    console.info('Succeeded in creating the window. Data:' + JSON.stringify(data));
}).catch((err)=>{
    console.error('Failed to create the Window. Cause:' + JSON.stringify(err));
});

window.find(deprecated)

find(id: string, callback: AsyncCallback<Window>): void

Finds a window based on the ID. This API uses an asynchronous callback to return the result.

NOTE

This API is supported since API version 7 and deprecated since API version 9. You are advised to use findWindow() instead.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
id string Yes Window ID.
callback AsyncCallback<Window> Yes Callback used to return the window found.

Example

let windowClass = null;
window.find('alertWindow', (err, data) => {
    if (err.code) {
        console.error('Failed to find the Window. Cause: ' + JSON.stringify(err));
        return;
    }
    windowClass = data;
    console.info('Succeeded in finding the window. Data: ' + JSON.stringify(data));
});

window.find(deprecated)

find(id: string): Promise<Window>

Finds a window based on the ID. This API uses a promise to return the result.

NOTE

This API is supported since API version 7 and deprecated since API version 9. You are advised to use findWindow() instead.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
id string Yes Window ID.

Return value

Type Description
Promise<Window> Promise used to return the window found.

Example

let windowClass = null;
let promise = window.find('alertWindow');
promise.then((data)=> {
    windowClass = data;
    console.info('Succeeded in finding the window. Data: ' + JSON.stringify(data));
}).catch((err)=>{
    console.error('Failed to find the Window. Cause: ' + JSON.stringify(err));
});

window.getTopWindow(deprecated)

getTopWindow(callback: AsyncCallback<Window>): void

Obtains the top window of the current application. This API uses an asynchronous callback to return the result.

NOTE

This API is supported since API version 6 and deprecated since API version 9. You are advised to use getLastWindow() instead.

Model restriction: This API can be used only in the FA model.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
callback AsyncCallback<Window> Yes Callback used to return the top window obtained.

Example

let windowClass = null;
window.getTopWindow((err, data) => {
    if (err.code) {
        console.error('Failed to obtain the top window. Cause: ' + JSON.stringify(err));
        return;
    }
    windowClass = data;
    console.info('Succeeded in obtaining the top window. Data: ' + JSON.stringify(data));
});

window.getTopWindow(deprecated)

getTopWindow(): Promise<Window>

Obtains the top window of the current application. This API uses a promise to return the result.

NOTE

This API is supported since API version 6 and deprecated since API version 9. You are advised to use getLastWindow() instead.

Model restriction: This API can be used only in the FA model.

System capability: SystemCapability.WindowManager.WindowManager.Core

Return value

Type Description
Promise<Window> Promise used to return the top window obtained.

Example

let windowClass = null;
let promise = window.getTopWindow();
promise.then((data)=> {
    windowClass = data;
    console.info('Succeeded in obtaining the top window. Data: ' + JSON.stringify(data));
}).catch((err)=>{
    console.error('Failed to obtain the top window. Cause: ' + JSON.stringify(err));
});

window.getTopWindow(deprecated)

getTopWindow(ctx: BaseContext, callback: AsyncCallback<Window>): void

Obtains the top window of the current application. This API uses an asynchronous callback to return the result.

NOTE

This API is supported since API version 8 and deprecated since API version 9. You are advised to use getLastWindow() instead.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
ctx BaseContext Yes Current application context.
callback AsyncCallback<Window> Yes Callback used to return the top window obtained.

Example

let windowClass = null;
window.getTopWindow(this.context, (err, data) => {
    if (err.code) {
        console.error('Failed to obtain the top window. Cause: ' + JSON.stringify(err));
        return;
    }
    windowClass = data;
    console.info('Succeeded in obtaining the top window. Data: ' + JSON.stringify(data));
});

window.getTopWindow(deprecated)

getTopWindow(ctx: BaseContext): Promise<Window>

Obtains the top window of the current application. This API uses a promise to return the result.

NOTE

This API is supported since API version 8 and deprecated since API version 9. You are advised to use getLastWindow() instead.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
ctx BaseContext Yes Current application context.

Return value

Type Description
Promise<Window> Promise used to return the top window obtained.

Example

let windowClass = null;
let promise = window.getTopWindow(this.context);
promise.then((data)=> {
 	windowClass = data;
    console.info('Succeeded in obtaining the top window. Data: ' + JSON.stringify(data));
}).catch((err)=>{
    console.error('Failed to obtain the top window. Cause: ' + JSON.stringify(err));
});

Window

Represents the current window instance, which is the basic unit managed by the window manager.

In the following API examples, you must use getLastWindow(), createWindow(), or findWindow() to obtain a Window instance and then call a method in this instance.

hide7+

hide (callback: AsyncCallback<void>): void

Hides this window. This API uses an asynchronous callback to return the result.

System API: This is a system API.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
callback AsyncCallback<void> Yes Callback used to return the result.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.

Example

windowClass.hide((err) => {
    if (err.code) {
        console.error('Failed to hide the window. Cause: ' + JSON.stringify(err));
        return;
    }
    console.info('Succeeded in hiding the window.');
});

hide7+

hide(): Promise<void>

Hides this window. This API uses a promise to return the result.

System API: This is a system API.

System capability: SystemCapability.WindowManager.WindowManager.Core

Return value

Type Description
Promise<void> Promise that returns no value.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.

Example

let promise = windowClass.hide();
promise.then(()=> {
    console.info('Succeeded in hiding the window.');
}).catch((err)=>{
    console.error('Failed to hide the window. Cause: ' + JSON.stringify(err));
});

hideWithAnimation9+

hideWithAnimation(callback: AsyncCallback<void>): void

Hides this window and plays an animation during the process. This API uses an asynchronous callback to return the result.

System API: This is a system API.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
callback AsyncCallback<void> Yes Callback used to return the result.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.
1300003 This window manager service works abnormally.
1300004 Unauthorized operation.

Example

windowClass.hideWithAnimation((err) => {
    if (err.code) {
        console.error('Failed to hide the window with animation. Cause: ' + JSON.stringify(err));
        return;
    }
    console.info('Succeeded in hiding the window with animation.');
});

hideWithAnimation9+

hideWithAnimation(): Promise<void>

Hides this window and plays an animation during the process. This API uses a promise to return the result.

System API: This is a system API.

System capability: SystemCapability.WindowManager.WindowManager.Core

Return value

Type Description
Promise<void> Promise that returns no value.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.
1300003 This window manager service works abnormally.
1300004 Unauthorized operation.

Example

let promise = windowClass.hideWithAnimation();
promise.then(()=> {
    console.info('Succeeded in hiding the window with animation.');
}).catch((err)=>{
    console.error('Failed to hide the window with animation. Cause: ' + JSON.stringify(err));
});

showWindow9+

showWindow(callback: AsyncCallback<void>): void

Shows this window. This API uses an asynchronous callback to return the result.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
callback AsyncCallback<void> Yes Callback used to return the result.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.

Example

windowClass.showWindow((err) => {
    if (err.code) {
        console.error('Failed to show the window. Cause: ' + JSON.stringify(err));
        return;
    }
    console.info('Succeeded in showing the window.');
});

showWindow9+

showWindow(): Promise<void>

Shows this window. This API uses a promise to return the result.

System capability: SystemCapability.WindowManager.WindowManager.Core

Return value

Type Description
Promise<void> Promise that returns no value.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.

Example

let promise = windowClass.showWindow();
promise.then(()=> {
    console.info('Succeeded in showing the window.');
}).catch((err)=>{
    console.error('Failed to show the window. Cause: ' + JSON.stringify(err));
});

showWithAnimation9+

showWithAnimation(callback: AsyncCallback<void>): void

Shows this window and plays an animation during the process. This API uses an asynchronous callback to return the result.

System API: This is a system API.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
callback AsyncCallback<void> Yes Callback used to return the result.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.
1300003 This window manager service works abnormally.
1300004 Unauthorized operation.

Example

windowClass.showWithAnimation((err) => {
    if (err.code) {
        console.error('Failed to show the window with animation. Cause: ' + JSON.stringify(err));
        return;
    }
    console.info('Succeeded in showing the window with animation.');
});

showWithAnimation9+

showWithAnimation(): Promise<void>

Shows this window and plays an animation during the process. This API uses a promise to return the result.

System API: This is a system API.

System capability: SystemCapability.WindowManager.WindowManager.Core

Return value

Type Description
Promise<void> Promise that returns no value.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.
1300003 This window manager service works abnormally.
1300004 Unauthorized operation.

Example

let promise = windowClass.showWithAnimation();
promise.then(()=> {
    console.info('Succeeded in showing the window with animation.');
}).catch((err)=>{
    console.error('Failed to show the window with animation. Cause: ' + JSON.stringify(err));
});

destroyWindow9+

destroyWindow(callback: AsyncCallback<void>): void

Destroys this window. This API uses an asynchronous callback to return the result.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
callback AsyncCallback<void> Yes Callback used to return the result.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.
1300003 This window manager service works abnormally.

Example

windowClass.destroyWindow((err) => {
    if (err.code) {
        console.error('Failed to destroy the window. Cause:' + JSON.stringify(err));
        return;
    }
    console.info('Succeeded in destroying the window.');
});

destroyWindow9+

destroyWindow(): Promise<void>

Destroys this window. This API uses a promise to return the result.

System capability: SystemCapability.WindowManager.WindowManager.Core

Return value

Type Description
Promise<void> Promise that returns no value.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.
1300003 This window manager service works abnormally.

Example

let promise = windowClass.destroyWindow();
promise.then(()=> {
    console.info('Succeeded in destroying the window.');
}).catch((err)=>{
    console.error('Failed to destroy the window. Cause: ' + JSON.stringify(err));
});

moveWindowTo9+

moveWindowTo(x: number, y: number, callback: AsyncCallback<void>): void

Moves this window. This API uses an asynchronous callback to return the result.

This operation is not supported in a window in full-screen mode.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
x number Yes Distance that the window moves along the x-axis, in px. A positive value indicates that the window moves to the right.
y number Yes Distance that the window moves along the y-axis, in px. A positive value indicates that the window moves downwards.
callback AsyncCallback<void> Yes Callback used to return the result.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.
1300003 This window manager service works abnormally.

Example

try {
    windowClass.moveWindowTo(300, 300, (err)=>{
        if (err.code) {
            console.error('Failed to move the window. Cause:' + JSON.stringify(err));
            return;
        }
        console.info('Succeeded in moving the window.');
    });
} catch (exception) {
    console.error('Failed to move the window. Cause:' + JSON.stringify(exception));
}

moveWindowTo9+

moveWindowTo(x: number, y: number): Promise<void>

Moves this window. This API uses a promise to return the result.

This operation is not supported in a window in full-screen mode.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
x number Yes Distance that the window moves along the x-axis, in px. A positive value indicates that the window moves to the right.
y number Yes Distance that the window moves along the y-axis, in px. A positive value indicates that the window moves downwards.

Return value

Type Description
Promise<void> Promise that returns no value.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.
1300003 This window manager service works abnormally.

Example

try {
    let promise = windowClass.moveWindowTo(300, 300);
    promise.then(()=> {
        console.info('Succeeded in moving the window.');
    }).catch((err)=>{
        console.error('Failed to move the window. Cause: ' + JSON.stringify(err));
    });
} catch (exception) {
    console.error('Failed to move the window. Cause:' + JSON.stringify(exception));
}

resize9+

resize(width: number, height: number, callback: AsyncCallback<void>): void

Changes the size of this window. This API uses an asynchronous callback to return the result.

The main window and subwindow have the following size limits: [320, 2560] in width and [240, 2560] in height, both in units of vp.

The system window has the following size limits: [0, 2560] in width and [0, 2560] in height, both in units of vp.

The new width and height you set must meet the limits.

This operation is not supported in a window in full-screen mode.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
width number Yes New width of the window, in px.
height number Yes New height of the window, in px.
callback AsyncCallback<void> Yes Callback used to return the result.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.
1300003 This window manager service works abnormally.

Example

try {
    windowClass.resize(500, 1000, (err) => {
        if (err.code) {
            console.error('Failed to change the window size. Cause:' + JSON.stringify(err));
            return;
        }
        console.info('Succeeded in changing the window size.');
    });
} catch (exception) {
    console.error('Failed to change the window size. Cause:' + JSON.stringify(exception));
}

resize9+

resize(width: number, height: number): Promise<void>

Changes the size of this window. This API uses a promise to return the result.

The main window and subwindow have the following size limits: [320, 2560] in width and [240, 2560] in height, both in units of vp.

The system window has the following size limits: [0, 2560] in width and [0, 2560] in height, both in units of vp.

The new width and height you set must meet the limits.

This operation is not supported in a window in full-screen mode.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
width number Yes New width of the window, in px.
height number Yes New height of the window, in px.

Return value

Type Description
Promise<void> Promise that returns no value.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.
1300003 This window manager service works abnormally.

Example

try {
    let promise = windowClass.resize(500, 1000);
    promise.then(()=> {
        console.info('Succeeded in changing the window size.');
    }).catch((err)=>{
        console.error('Failed to change the window size. Cause: ' + JSON.stringify(err));
    });
} catch (exception) {
    console.error('Failed to change the window size. Cause: ' + JSON.stringify(exception));
}

setWindowMode9+

setWindowMode(mode: WindowMode, callback: AsyncCallback<void>): void

Sets the mode of this window. This API uses an asynchronous callback to return the result.

System API: This is a system API.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
mode WindowMode Yes Window mode to set.
callback AsyncCallback<void> Yes Callback used to return the result.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.
1300003 This window manager service works abnormally.

Example

let mode = window.WindowMode.FULLSCREEN;
try {
    windowClass.setWindowMode(mode, (err) => {
    if (err.code) {
        console.error('Failed to set the window mode. Cause: ' + JSON.stringify(err));
        return;
    }
    console.info('Succeeded in setting the window mode.');
    });
} catch (exception) {
    console.error('Failed to set the window mode. Cause: ' + JSON.stringify(exception));
}

setWindowMode9+

setWindowMode(mode: WindowMode): Promise<void>

Sets the type of this window. This API uses a promise to return the result.

System API: This is a system API.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
mode WindowMode Yes Window mode to set.

Return value

Type Description
Promise<void> Promise that returns no value.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.
1300003 This window manager service works abnormally.

Example

let mode = window.WindowMode.FULLSCREEN;
try {
    let promise = windowClass.setWindowMode(mode);
    promise.then(()=> {
        console.info('Succeeded in setting the window mode.');
    }).catch((err)=>{
        console.error('Failed to set the window mode. Cause: ' + JSON.stringify(err));
    });
} catch (exception) {
    console.error('Failed to set the window mode. Cause: ' + JSON.stringify(exception));
}

getWindowProperties9+

getWindowProperties(): WindowProperties

Obtains the properties of this window.

System capability: SystemCapability.WindowManager.WindowManager.Core

Return value

Type Description
WindowProperties Window properties obtained.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.

Example

try {
    let properties = windowClass.getWindowProperties();
} catch (exception) {
    console.error('Failed to obtain the window properties. Cause: ' + JSON.stringify(exception));
}

getWindowAvoidArea9+

getWindowAvoidArea(type: AvoidAreaType): AvoidArea

Obtains the area where this window cannot be displayed, for example, the system bar area, notch, gesture area, and soft keyboard area.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
type AvoidAreaType Yes Type of the area.

Return value

Type Description
AvoidArea Area where the window cannot be displayed.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.

Example

let type = window.AvoidAreaType.TYPE_SYSTEM;
try {
    let avoidArea = windowClass.getWindowAvoidArea(type);
} catch (exception) {
    console.error('Failed to obtain the area. Cause:' + JSON.stringify(exception));
}

setWindowLayoutFullScreen9+

setWindowLayoutFullScreen(isLayoutFullScreen: boolean, callback: AsyncCallback<void>): void

Sets whether to enable the full-screen mode for the window layout. This API uses an asynchronous callback to return the result.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
isLayoutFullScreen boolean Yes Whether to enable the full-screen mode for the window layout, in which the status bar and navigation bar are displayed. The value true means to enable the full-screen mode for the window layout, and false means the opposite.
callback AsyncCallback<void> Yes Callback used to return the result.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.
1300003 This window manager service works abnormally.

Example

let isLayoutFullScreen= true;
try {
    windowClass.setWindowLayoutFullScreen(isLayoutFullScreen, (err) => {
        if (err.code) {
            console.error('Failed to set the window layout to full-screen mode. Cause:' + JSON.stringify(err));
            return;
        }
        console.info('Succeeded in setting the window layout to full-screen mode.');
    });
} catch (exception) {
    console.error('Failed to set the window layout to full-screen mode. Cause:' + JSON.stringify(exception));
}

setWindowLayoutFullScreen9+

setWindowLayoutFullScreen(isLayoutFullScreen: boolean): Promise<void>

Sets whether to enable the full-screen mode for the window layout. This API uses a promise to return the result.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
isLayoutFullScreen boolean Yes Whether to enable the full-screen mode for the window layout, in which the status bar and navigation bar are displayed. The value true means to enable the full-screen mode for the window layout, and false means the opposite.

Return value

Type Description
Promise<void> Promise that returns no value.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.
1300003 This window manager service works abnormally.

Example

let isLayoutFullScreen = true;
try {
    let promise = windowClass.setWindowLayoutFullScreen(isLayoutFullScreen);
    promise.then(()=> {
        console.info('Succeeded in setting the window layout to full-screen mode.');
    }).catch((err)=>{
        console.error('Failed to set the window layout to full-screen mode. Cause:' + JSON.stringify(err));
    });
} catch (exception) {
    console.error('Failed to set the window layout to full-screen mode. Cause:' + JSON.stringify(exception));
}

setWindowSystemBarEnable9+

setWindowSystemBarEnable(names: Array<'status' | 'navigation'>, callback: AsyncCallback<void>): void

Sets whether to display the status bar and navigation bar in this window. This API uses an asynchronous callback to return the result.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
names Array<'status'|'navigation'> Yes Whether to display the status bar and navigation bar.
For example, to display the status bar and navigation bar, set this parameter to ['status', 'navigation']. By default, they are not displayed.
callback AsyncCallback<void> Yes Callback used to return the result.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.
1300003 This window manager service works abnormally.

Example

// In this example, the status bar and navigation bar are not displayed.
let names = [];
try {
    windowClass.setWindowSystemBarEnable(names, (err) => {
        if (err.code) {
            console.error('Failed to set the system bar to be invisible. Cause:' + JSON.stringify(err));
            return;
        }
        console.info('Succeeded in setting the system bar to be invisible.');
    });
} catch (exception) {
    console.error('Failed to set the system bar to be invisible. Cause:' + JSON.stringify(exception));
}

setWindowSystemBarEnable9+

setWindowSystemBarEnable(names: Array<'status' | 'navigation'>): Promise<void>

Sets whether to display the status bar and navigation bar in this window. This API uses a promise to return the result.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
names Array<'status'|'navigation'> Yes Whether to display the status bar and navigation bar.
For example, to display the status bar and navigation bar, set this parameter to ['status', 'navigation']. By default, they are not displayed.

Return value

Type Description
Promise<void> Promise that returns no value.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.
1300003 This window manager service works abnormally.

Example

// In this example, the status bar and navigation bar are not displayed.
let names = [];
try {
    let promise = windowClass.setWindowSystemBarEnable(names);
    promise.then(()=> {
        console.info('Succeeded in setting the system bar to be invisible.');
    }).catch((err)=>{
        console.error('Failed to set the system bar to be invisible. Cause:' + JSON.stringify(err));
    });
} catch (exception) {
    console.error('Failed to set the system bar to be invisible. Cause:' + JSON.stringify(exception));
}

setWindowSystemBarProperties9+

setWindowSystemBarProperties(systemBarProperties: SystemBarProperties, callback: AsyncCallback<void>): void

Sets the properties of the status bar and navigation bar in this window. This API uses an asynchronous callback to return the result.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
SystemBarProperties SystemBarProperties Yes Properties of the status bar and navigation bar.
callback AsyncCallback<void> Yes Callback used to return the result.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.
1300003 This window manager service works abnormally.

Example

let SystemBarProperties = {
    statusBarColor: '#ff00ff',
    navigationBarColor: '#00ff00',
    // The following properties are supported since API version 8.
    statusBarContentColor:'#ffffff',
    navigationBarContentColor:'#00ffff'
};
try {
    windowClass.setWindowSystemBarProperties(SystemBarProperties, (err) => {
        if (err.code) {
            console.error('Failed to set the system bar properties. Cause: ' + JSON.stringify(err));
            return;
        }
        console.info('Succeeded in setting the system bar properties.');
    });
} catch (exception) {
    console.error('Failed to set the system bar properties. Cause: ' + JSON.stringify(exception));
}

setWindowSystemBarProperties9+

setWindowSystemBarProperties(systemBarProperties: SystemBarProperties): Promise<void>

Sets the properties of the status bar and navigation bar in this window. This API uses a promise to return the result.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
SystemBarProperties SystemBarProperties Yes Properties of the status bar and navigation bar.

Return value

Type Description
Promise<void> Promise that returns no value.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.
1300003 This window manager service works abnormally.

Example

let SystemBarProperties = {
    statusBarColor: '#ff00ff',
    navigationBarColor: '#00ff00',
    // The following properties are supported since API version 8.
    statusBarContentColor:'#ffffff',
    navigationBarContentColor:'#00ffff'
};
try {
    let promise = windowClass.setWindowSystemBarProperties(SystemBarProperties);
    promise.then(()=> {
        console.info('Succeeded in setting the system bar properties.');
    }).catch((err)=>{
        console.error('Failed to set the system bar properties. Cause: ' + JSON.stringify(err));
    });
} catch (exception) {
    console.error('Failed to set the system bar properties. Cause: ' + JSON.stringify(exception));
}

setPreferredOrientation9+

setPreferredOrientation(orientation: Orientation, callback: AsyncCallback<void>): void

Sets the preferred orientation for this window. This API uses an asynchronous callback to return the result.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
Orientation Orientation Yes Orientation to set.
callback AsyncCallback<void> Yes Callback used to return the result.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.

Example

let orientation = window.Orientation.AUTO_ROTATION;
try {
    windowClass.setPreferredOrientation(orientation, (err) => {
        if (err.code) {
            console.error('Failed to set window orientation. Cause: ' + JSON.stringify(err));
            return;
        }
        console.info('Succeeded in setting window orientation.');
    });
} catch (exception) {
    console.error('Failed to set window orientation. Cause: ' + JSON.stringify(exception));
}

setPreferredOrientation9+

setPreferredOrientation(orientation: Orientation): Promise<void>

Sets the preferred orientation for this window. This API uses a promise to return the result.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
Orientation Orientation Yes Orientation to set.

Return value

Type Description
Promise<void> Promise that returns no value.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.

Example

let orientation = window.Orientation.AUTO_ROTATION;
try {
    let promise = windowClass.setPreferredOrientation(orientation);
    promise.then(()=> {
        console.info('Succeeded in setting the window orientation.');
    }).catch((err)=>{
        console.error('Failed to set the window orientation. Cause: ' + JSON.stringify(err));
    });
} catch (exception) {
    console.error('Failed to set window orientation. Cause: ' + JSON.stringify(exception));
}

setUIContent9+

setUIContent(path: string, callback: AsyncCallback<void>): void

Loads content from a page to this window. This API uses an asynchronous callback to return the result.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
path string Yes Path of the page from which the content will be loaded.
callback AsyncCallback<void> Yes Callback used to return the result.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.
1300003 This window manager service works abnormally.

Example

try {
    windowClass.setUIContent('pages/page2/page2', (err) => {
    if (err.code) {
            console.error('Failed to load the content. Cause:' + JSON.stringify(err));
            return;
    }
    console.info('Succeeded in loading the content.');
    });
} catch (exception) {
    console.error('Failed to load the content. Cause:' + JSON.stringify(exception));
}

setUIContent9+

setUIContent(path: string): Promise<void>

Loads content from a page to this window. This API uses a promise to return the result.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
path string Yes Path of the page from which the content will be loaded.

Return value

Type Description
Promise<void> Promise that returns no value.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.
1300003 This window manager service works abnormally.

Example

try {
    let promise = windowClass.setUIContent('pages/page2/page2');
    promise.then(()=> {
        console.info('Succeeded in loading the content.');
    }).catch((err)=>{
        console.error('Failed to load the content. Cause: ' + JSON.stringify(err));
    });
} catch (exception) {
    console.error('Failed to load the content. Cause: ' + JSON.stringify(exception));
}

loadContent9+

loadContent(path: string, storage: LocalStorage, callback: AsyncCallback<void>): void

Loads content from a page associated with a local storage to this window. This API uses an asynchronous callback to return the result.

Model restriction: This API can be used only in the stage model.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
path string Yes Path of the page from which the content will be loaded.
storage LocalStorage Yes A storage unit, which provides storage for variable state properties and non-variable state properties of an application.
callback AsyncCallback<void> Yes Callback used to return the result.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.
1300003 This window manager service works abnormally.

Example

let storage = new LocalStorage();
storage.setOrCreate('storageSimpleProp',121);
console.log('onWindowStageCreate');
try {
    windowClass.loadContent('pages/page2', storage, (err) => {
        if (err.code) {
            console.error('Failed to load the content. Cause:' + JSON.stringify(err));
            return;
        }
        console.info('Succeeded in loading the content.');
    });
} catch (exception) {
    console.error('Failed to load the content. Cause:' + JSON.stringify(exception));
}

loadContent9+

loadContent(path: string, storage: LocalStorage): Promise<void>

Loads content from a page associated with a local storage to this window. This API uses a promise to return the result.

Model restriction: This API can be used only in the stage model.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
path string Yes Path of the page from which the content will be loaded.
storage LocalStorage Yes A storage unit, which provides storage for variable state properties and non-variable state properties of an application.

Return value

Type Description
Promise<void> Promise that returns no value.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.
1300003 This window manager service works abnormally.

Example

let storage = new LocalStorage();
storage.setOrCreate('storageSimpleProp',121);
console.log('onWindowStageCreate');
try {
    let promise = windowClass.loadContent('pages/page2', storage);
    promise.then(() => {
        console.info('Succeeded in loading the content.');
    }).catch((err) => {
        console.error('Failed to load the content. Cause:' + JSON.stringify(err));
    });
} catch (exception) {
    console.error('Failed to load the content. Cause:' + JSON.stringify(exception));
}

isWindowShowing9+

isWindowShowing(): boolean

Checks whether this window is displayed.

System capability: SystemCapability.WindowManager.WindowManager.Core

Return value

Type Description
boolean Whether the window is displayed. The value true means that the window is displayed, and false means the opposite.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.

Example

try {
    let data = windowClass.isWindowShowing();
    console.info('Succeeded in checking whether the window is showing. Data: ' + JSON.stringify(data));
} catch (exception) {
    console.error('Failed to check whether the window is showing. Cause: ' + JSON.stringify(exception));
}

on('windowSizeChange')7+

on(type: 'windowSizeChange', callback: Callback<Size>): void

Enables listening for window size changes.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
type string Yes Event type. The value is fixed at 'windowSizeChange', indicating the window size change event.
callback Callback<Size> Yes Callback used to return the window size.

Example

try {
    windowClass.on('windowSizeChange', (data) => {
        console.info('Succeeded in enabling the listener for window size changes. Data: ' + JSON.stringify(data));
    });
} catch (exception) {
    console.error('Failed to enable the listener for window size changes. Cause: ' + JSON.stringify(exception));
}

off('windowSizeChange')7+

off(type: 'windowSizeChange', callback?: Callback<Size>): void

Disables listening for window size changes.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
type string Yes Event type. The value is fixed at 'windowSizeChange', indicating the window size change event.
callback Callback<Size> No Callback used to return the window size.

Example

try {
    windowClass.off('windowSizeChange');
} catch (exception) {
    console.error('Failed to disable the listener for window size changes. Cause: ' + JSON.stringify(exception));
}

on('avoidAreaChange')9+

on(type: 'avoidAreaChange', callback: Callback<{AvoidAreaType, AvoidArea}>): void

Enables listening for changes to the area where the window cannot be displayed.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
type string Yes Event type. The value is fixed at 'avoidAreaChange', indicating the event of changes to the area where the window cannot be displayed.
callback Callback<{AvoidAreaType, AvoidArea}> Yes Callback used to return the area and area type.

Example

try {
    windowClass.on('avoidAreaChange', (data) => {
        console.info('Succeeded in enabling the listener for system avoid area changes. type:' +
            JSON.stringify(data.type) + ', area: ' + JSON.stringify(data.area));
    });
} catch (exception) {
    console.error('Failed to enable the listener for system avoid area changes. Cause: ' + JSON.stringify(exception));
}

off('avoidAreaChange')9+

off(type: 'avoidAreaChange', callback: Callback<{AvoidAreaType, AvoidArea}>): void

Disables listening for changes to the area where the window cannot be displayed.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
type string Yes Event type. The value is fixed at 'avoidAreaChange', indicating the event of changes to the area where the window cannot be displayed.
callback Callback<{AvoidAreaType, AvoidArea}> No Callback used to return the area and area type.

Example

try {
    windowClass.off('avoidAreaChange');
} catch (exception) {
    console.error('Failed to disable the listener for system avoid area changes. Cause: ' + JSON.stringify(exception));
}

on('keyboardHeightChange')7+

on(type: 'keyboardHeightChange', callback: Callback<number>): void

Enables listening for keyboard height changes.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
type string Yes Event type. The value is fixed at 'keyboardHeightChange', indicating the keyboard height change event.
callback Callback<number> Yes Callback used to return the current keyboard height.

Example

try {
    windowClass.on('keyboardHeightChange', (data) => {
        console.info('Succeeded in enabling the listener for keyboard height changes. Data: ' + JSON.stringify(data));
    });
} catch (exception) {
    console.error('Failed to enable the listener for keyboard height changes. Cause: ' + JSON.stringify(exception));
}

off('keyboardHeightChange')7+

off(type: 'keyboardHeightChange', callback?: Callback<number>): void

Disables listening for keyboard height changes.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
type string Yes Event type. The value is fixed at 'keyboardHeightChange', indicating the keyboard height change event.
callback Callback<number> No Callback used to return the current keyboard height.

Example

try {
    windowClass.off('keyboardHeightChange');
} catch (exception) {
    console.error('Failed to disable the listener for keyboard height changes. Cause: ' + JSON.stringify(exception));
}

on('touchOutside')9+

on(type: 'touchOutside', callback: Callback<void>): void

Enables listening for click events outside this window.

System API: This is a system API.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
type string Yes Event type. The value is fixed at 'touchOutside', indicating the click event outside this window.
callback Callback<void> Yes Callback used to return the click event outside this window.

Example

try {
    windowClass.on('touchOutside', () => {
        console.info('touch outside');
    });
} catch (exception) {
    console.error('Failed to register callback. Cause: ' + JSON.stringify(exception));
}

off('touchOutside')9+

off(type: 'touchOutside', callback?: Callback<void>): void

Disables listening for click events outside this window.

System API: This is a system API.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
type string Yes Event type. The value is fixed at 'touchOutside', indicating the click event outside this window.
callback Callback<number> No Callback used to return the click event outside this window.

Example

try {
    windowClass.off('touchOutside');
} catch (exception) {
    console.error('Failed to unregister callback. Cause: ' + JSON.stringify(exception));
}

on('screenshot')9+

on(type: 'screenshot', callback: Callback<void>): void

Subscribes to screenshot events.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
type string Yes Event type. The value is fixed at 'screenshot', indicating the screenshot event.
callback Callback<void> Yes Callback invoked when a screenshot event occurs.

Example

try {
    windowClass.on('screenshot', () => {
        console.info('screenshot happened');
    });
} catch (exception) {
    console.error('Failed to register callback. Cause: ' + JSON.stringify(exception));
}

off('screenshot')9+

off(type: 'screenshot', callback?: Callback<void>): void

Unsubscribes from screenshot events.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
type string Yes Event type. The value is fixed at 'screenshot', indicating the screenshot event.
callback Callback<void> No Callback invoked when a screenshot event occurs.

Example

let callback = () => {
    console.info('screenshot happened');
};
try {
    windowClass.on('screenshot', callback);
} catch (exception) {
    console.error('Failed to register callback. Cause: ' + JSON.stringify(exception));
}
try {
    windowClass.off('screenshot', callback);
    // If multiple callbacks are enabled in on(), they will all be disabled.
    windowClass.off('screenshot');
} catch (exception) {
    console.error('Failed to unregister callback. Cause: ' + JSON.stringify(exception));
}

bindDialogTarget9+

bindDialogTarget(token: rpc.RemoteObject, deathCallback: Callback<void>, callback: AsyncCallback<void>): void

Binds the modal window to the target window, and adds a callback to listen for modal window destruction events. This API uses an asynchronous callback to return the result.

System API: This is a system API.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
token rpc.RemoteObject Yes Token of the target window.
deathCallback Callback<void> Yes Callback used to listen for modal window destruction events.
callback AsyncCallback<void> Yes Callback used to return the result.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.
1300003 This window manager service works abnormally.

Example

import rpc from '@ohos.rpc';

class MyDeathRecipient {
    onRemoteDied() {
        console.log('server died');
    }
}
class TestRemoteObject extends rpc.RemoteObject {
    constructor(descriptor) {
        super(descriptor);
    }
    addDeathRecipient(recipient: MyDeathRecipient, flags: number): boolean {
        return true;
    }
    removeDeathRecipient(recipient: MyDeathRecipient, flags: number): boolean {
        return true;
    }
    isObjectDead(): boolean {
        return false;
    }
}

let token = new TestRemoteObject('testObject');
try {
    windowClass.bindDialogTarget(token, () => {
        console.info('Dialog Window Need Destroy.');
    }, (err) => {
        if (err.code) {
            console.error('Failed to bind dialog target. Cause:' + JSON.stringify(err));
            return;
        }
        console.info('Succeeded in binding dialog target.');
    });
} catch (exception) {
    console.error('Failed to bind dialog target. Cause:' + JSON.stringify(exception));
}

bindDialogTarget9+

bindDialogTarget(token: rpc.RemoteObject, deathCallback: Callback<void>): Promise<void>

Binds the modal window to the target window, and adds a callback to listen for modal window destruction events. This API uses a promise to return the result.

System API: This is a system API.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
token rpc.RemoteObject Yes Token of the target window.
deathCallback Callback<void> Yes Callback used to listen for modal window destruction events.

Return value

Type Description
Promise<void> Promise that returns no value.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.
1300003 This window manager service works abnormally.

Example

import rpc from '@ohos.rpc';

class MyDeathRecipient {
    onRemoteDied() {
        console.log('server died');
    }
}
class TestRemoteObject extends rpc.RemoteObject {
    constructor(descriptor) {
        super(descriptor);
    }
    addDeathRecipient(recipient: MyDeathRecipient, flags: number): boolean {
        return true;
    }
    removeDeathRecipient(recipient: MyDeathRecipient, flags: number): boolean {
        return true;
    }
    isObjectDead(): boolean {
        return false;
    }
}

let token = new TestRemoteObject('testObject');
try {
    let promise = windowClass.bindDialogTarget(token, () => {
        console.info('Dialog Window Need Destroy.');
    });
    promise.then(()=> {
        console.info('Succeeded in binding dialog target.');
    }).catch((err)=>{
            console.error('Failed to bind dialog target. Cause:' + JSON.stringify(err));
    });
} catch (exception) {
    console.error('Failed to bind dialog target. Cause:' + JSON.stringify(exception));
}

isWindowSupportWideGamut9+

isWindowSupportWideGamut(callback: AsyncCallback<boolean>): void

Checks whether this window supports the wide-gamut color space. This API uses an asynchronous callback to return the result.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
callback AsyncCallback<boolean> Yes Callback used to return the result. The value true means that the wide-gamut color space is supported, and false means the opposite.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.

Example

windowClass.isWindowSupportWideGamut((err, data) => {
    if (err.code) {
        console.error('Failed to check whether the window support WideGamut. Cause:' + JSON.stringify(err));
        return;
    }
    console.info('Succeeded in checking whether the window support WideGamut Data: ' + JSON.stringify(data));
});

isWindowSupportWideGamut9+

isWindowSupportWideGamut(): Promise<boolean>

Checks whether this window supports the wide-gamut color space. This API uses a promise to return the result.

System capability: SystemCapability.WindowManager.WindowManager.Core

Return value

Type Description
Promise<boolean> Promise used to return the result. The value true means that the wide-gamut color space is supported, and false means the opposite.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.

Example

let promise = windowClass.isWindowSupportWideGamut();
promise.then((data)=> {
    console.info('Succeeded in checking whether the window support WideGamut. Data: ' + JSON.stringify(data));
}).catch((err)=>{
    console.error('Failed to check whether the window support WideGamut. Cause: ' + JSON.stringify(err));
});

setWindowColorSpace9+

setWindowColorSpace(colorSpace:ColorSpace, callback: AsyncCallback<void>): void

Sets a color space for this window. This API uses an asynchronous callback to return the result.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
colorSpace ColorSpace Yes Color space to set.
callback AsyncCallback<void> Yes Callback used to return the result.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.

Example

try {
    windowClass.setWindowColorSpace(window.ColorSpace.WIDE_GAMUT, (err) => {
        if (err.code) {
            console.error('Failed to set window colorspace. Cause:' + JSON.stringify(err));
            return;
        }
        console.info('Succeeded in setting window colorspace.');
    });
} catch (exception) {
    console.error('Failed to set window colorspace. Cause:' + JSON.stringify(exception));
}

setWindowColorSpace9+

setWindowColorSpace(colorSpace:ColorSpace): Promise<void>

Sets a color space for this window. This API uses a promise to return the result.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
colorSpace ColorSpace Yes Color space to set.

Return value

Type Description
Promise<void> Promise that returns no value.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.

Example

try {
    let promise = windowClass.setWindowColorSpace(window.ColorSpace.WIDE_GAMUT);
    promise.then(()=> {
        console.info('Succeeded in setting window colorspace.');
    }).catch((err)=>{
        console.error('Failed to set window colorspace. Cause: ' + JSON.stringify(err));
    });
} catch (exception) {
    console.error('Failed to set window colorspace. Cause:' + JSON.stringify(exception));
}

getWindowColorSpace9+

getWindowColorSpace(): ColorSpace

Obtains the color space of this window.

System capability: SystemCapability.WindowManager.WindowManager.Core

Return value

Type Description
ColorSpace Color space obtained.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.

Example

let colorSpace = windowClass.getWindowColorSpace();

setWindowBackgroundColor9+

setWindowBackgroundColor(color: string): void

Sets the background color for this window. In the stage model, this API must be used after loadContent.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
color string Yes Background color to set. The value is a hexadecimal RGB or ARGB color code and is case insensitive, for example, #00FF00 or #FF00FF00.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.

Example

let color = '#00ff33';
try {
    windowClass.setWindowBackgroundColor(color);
} catch (exception) {
    console.error('Failed to set the background color. Cause: ' + JSON.stringify(exception));
}

setWindowBrightness9+

setWindowBrightness(brightness: number, callback: AsyncCallback<void>): void

Sets the screen brightness for this window. This API uses an asynchronous callback to return the result.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
brightness number Yes Brightness to set, which ranges from 0 to 1. The value 1 indicates the brightest.
callback AsyncCallback<void> Yes Callback used to return the result.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.
1300003 This window manager service works abnormally.

Example

let brightness = 1;
try {
    windowClass.setWindowBrightness(brightness, (err) => {
        if (err.code) {
            console.error('Failed to set the brightness. Cause: ' + JSON.stringify(err));
            return;
        }
        console.info('Succeeded in setting the brightness.');
    });
} catch (exception) {
    console.error('Failed to set the brightness. Cause: ' + JSON.stringify(exception));
}

setWindowBrightness9+

setWindowBrightness(brightness: number): Promise<void>

Sets the screen brightness for this window. This API uses a promise to return the result.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
brightness number Yes Brightness to set, which ranges from 0 to 1. The value 1 indicates the brightest.

Return value

Type Description
Promise<void> Promise that returns no value.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.
1300003 This window manager service works abnormally.

Example

let brightness = 1;
try {
    let promise = windowClass.setWindowBrightness(brightness);
    promise.then(()=> {
        console.info('Succeeded in setting the brightness.');
    }).catch((err)=>{
        console.error('Failed to set the brightness. Cause: ' + JSON.stringify(err));
    });
} catch (exception) {
    console.error('Failed to set the brightness. Cause: ' + JSON.stringify(exception));
}

setWindowFocusable9+

setWindowFocusable(isFocusable: boolean, callback: AsyncCallback<void>): void

Sets whether this window can gain focus. This API uses an asynchronous callback to return the result.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
isFocusable boolean Yes Whether the window can gain focus. The value true means that the window can gain focus, and false means the opposite.
callback AsyncCallback<void> Yes Callback used to return the result.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.
1300003 This window manager service works abnormally.

Example

let isFocusable = true;
try {
    windowClass.setWindowFocusable(isFocusable, (err) => {
        if (err.code) {
            console.error('Failed to set the window to be focusable. Cause:' + JSON.stringify(err));
            return;
        }
        console.info('Succeeded in setting the window to be focusable.');
    });
} catch (exception) {
    console.error('Failed to set the window to be focusable. Cause:' + JSON.stringify(exception));
}

setWindowFocusable9+

setWindowFocusable(isFocusable: boolean): Promise<void>

Sets whether this window can gain focus. This API uses a promise to return the result.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
isFocusable boolean Yes Whether the window can gain focus. The value true means that the window can gain focus, and false means the opposite.

Return value

Type Description
Promise<void> Promise that returns no value.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.
1300003 This window manager service works abnormally.

Example

let isFocusable = true;
try {
    let promise = windowClass.setWindowFocusable(isFocusable);
    promise.then(()=> {
        console.info('Succeeded in setting the window to be focusable.');
    }).catch((err)=>{
        console.error('Failed to set the window to be focusable. Cause: ' + JSON.stringify(err));
    });
} catch (exception) {
    console.error('Failed to set the window to be focusable. Cause:' + JSON.stringify(exception));
}

setWindowKeepScreenOn9+

setWindowKeepScreenOn(isKeepScreenOn: boolean, callback: AsyncCallback<void>): void

Sets whether to keep the screen always on. This API uses an asynchronous callback to return the result.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
isKeepScreenOn boolean Yes Whether to keep the screen always on. The value true means to keep the screen always on, and false means the opposite.
callback AsyncCallback<void> Yes Callback used to return the result.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.
1300003 This window manager service works abnormally.

Example

let isKeepScreenOn = true;
try {
    windowClass.setWindowKeepScreenOn(isKeepScreenOn, (err) => {
        if (err.code) {
            console.error('Failed to set the screen to be always on. Cause: ' + JSON.stringify(err));
            return;
        }
        console.info('Succeeded in setting the screen to be always on.');
    });
} catch (exception) {
    console.error('Failed to set the screen to be always on. Cause: ' + JSON.stringify(exception));
}

setWindowKeepScreenOn9+

setWindowKeepScreenOn(isKeepScreenOn: boolean): Promise<void>

Sets whether to keep the screen always on. This API uses a promise to return the result.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
isKeepScreenOn boolean Yes Whether to keep the screen always on. The value true means to keep the screen always on, and false means the opposite.

Return value

Type Description
Promise<void> Promise that returns no value.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.
1300003 This window manager service works abnormally.

Example

let isKeepScreenOn = true;
try {
    let promise = windowClass.setWindowKeepScreenOn(isKeepScreenOn);
    promise.then(() => {
        console.info('Succeeded in setting the screen to be always on.');
    }).catch((err)=>{
        console.info('Failed to set the screen to be always on. Cause:  ' + JSON.stringify(err));
    });
} catch (exception) {
    console.error('Failed to set the screen to be always on. Cause: ' + JSON.stringify(exception));
}

setWakeUpScreen()9+

setWakeUpScreen(wakeUp: boolean): void

Wakes up the screen.

System API: This is a system API.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
wakeUp boolean Yes Whether to wake up the screen. The value true means to wake up the screen, and false means the opposite.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.
1300003 This window manager service works abnormally.

Example

let wakeUp = true;
try {
    windowClass.setWakeUpScreen(wakeUp);
} catch (exception) {
    console.error('Failed to wake up the screen. Cause: ' + JSON.stringify(exception));
}

setWindowPrivacyMode9+

setWindowPrivacyMode(isPrivacyMode: boolean, callback: AsyncCallback<void>): void

Sets whether this window is in privacy mode. This API uses an asynchronous callback to return the result. When in privacy mode, the window content cannot be captured or recorded.

System capability: SystemCapability.WindowManager.WindowManager.Core

Required permissions: ohos.permission.PRIVACY_WINDOW

Parameters

Name Type Mandatory Description
isPrivacyMode boolean Yes Whether the window is in privacy mode. The value true means that the window is in privacy mode, and false means the opposite.
callback AsyncCallback<void> Yes Callback used to return the result.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.

Example

let isPrivacyMode = true;
try {
    windowClass.setWindowPrivacyMode(isPrivacyMode, (err) => {
        if (err.code) {
            console.error('Failed to set the window to privacy mode. Cause:' + JSON.stringify(err));
            return;
        }
        console.info('Succeeded in setting the window to privacy mode.');
    });
} catch (exception) {
    console.error('Failed to set the window to privacy mode. Cause:' + JSON.stringify(exception));
}

setWindowPrivacyMode9+

setWindowPrivacyMode(isPrivacyMode: boolean): Promise<void>

Sets whether this window is in privacy mode. This API uses a promise to return the result. When in privacy mode, the window content cannot be captured or recorded.

System capability: SystemCapability.WindowManager.WindowManager.Core

Required permissions: ohos.permission.PRIVACY_WINDOW

Parameters

Name Type Mandatory Description
isPrivacyMode boolean Yes Whether the window is in privacy mode. The value true means that the window is in privacy mode, and false means the opposite.

Return value

Type Description
Promise<void> Promise that returns no value.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.

Example

let isPrivacyMode = true;
try {
    let promise = windowClass.setWindowPrivacyMode(isPrivacyMode);
    promise.then(()=> {
        console.info('Succeeded in setting the window to privacy mode.');
    }).catch((err)=>{
        console.error('Failed to set the window to privacy mode. Cause: ' + JSON.stringify(err));
    });
} catch (exception) {
    console.error('Failed to set the window to privacy mode. Cause:' + JSON.stringify(exception));
}

setSnapshotSkip9+

setSnapshotSkip(isSkip: boolean): void

Sets whether to ignore this window during screen capturing or recording.

System API: This is a system API.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
isSkip boolean Yes Whether to ignore the window. The default value is false.
The value true means that the window is ignored, and false means the opposite.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.
let isSkip = true;
try {
    windowClass.setSnapshotSkip(isSkip);
} catch (exception) {
    console.error('Failed to Skip. Cause: ' + JSON.stringify(exception));
};

setWindowTouchable9+

setWindowTouchable(isTouchable: boolean, callback: AsyncCallback<void>): void

Sets whether this window is touchable. This API uses an asynchronous callback to return the result.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
isTouchable boolean Yes Whether the window is touchable. The value true means that the window is touchable, and false means the opposite.
callback AsyncCallback<void> Yes Callback used to return the result.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.
1300003 This window manager service works abnormally.

Example

let isTouchable = true;
try {
    windowClass.setWindowTouchable(isTouchable, (err) => {
        if (err.code) {
            console.error('Failed to set the window to be touchable. Cause:' + JSON.stringify(err));
            return;
        }
        console.info('Succeeded in setting the window to be touchable.');
    });
} catch (exception) {
    console.error('Failed to set the window to be touchable. Cause:' + JSON.stringify(exception));
}

setWindowTouchable9+

setWindowTouchable(isTouchable: boolean): Promise<void>

Sets whether this window is touchable. This API uses a promise to return the result.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
isTouchable boolean Yes Whether the window is touchable. The value true means that the window is touchable, and false means the opposite.

Return value

Type Description
Promise<void> Promise that returns no value.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.
1300003 This window manager service works abnormally.

Example

let isTouchable = true;
try {
    let promise = windowClass.setWindowTouchable(isTouchable);
    promise.then(()=> {
        console.info('Succeeded in setting the window to be touchable.');
    }).catch((err)=>{
        console.error('Failed to set the window to be touchable. Cause: ' + JSON.stringify(err));
    });
} catch (exception) {
    console.error('Failed to set the window to be touchable. Cause:' + JSON.stringify(exception));
}

setForbidSplitMove9+

setForbidSplitMove(isForbidSplitMove: boolean, callback: AsyncCallback<void>): void

Sets whether this window is forbidden to move in split-screen mode. This API uses an asynchronous callback to return the result.

System API: This is a system API.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
isForbidSplitMove boolean Yes Whether the window is forbidden to move in split-screen mode. The value true means the window is forbidden to move in split-screen mode, and false means the opposite.
callback AsyncCallback<void> Yes Callback used to return the result.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.
1300003 This window manager service works abnormally.

Example

let isForbidSplitMove = true;
try {
    windowClass.setForbidSplitMove(isForbidSplitMove, (err) => {
        if (err.code) {
            console.error('Failed to forbid window moving in split screen mode. Cause:' + JSON.stringify(err));
            return;
        }
        console.info('Succeeded in forbidding window moving in split screen mode.');
    });
} catch (exception) {
    console.error('Failed to forbid window moving in split screen mode. Cause:' + JSON.stringify(exception));
}

setForbidSplitMove9+

setForbidSplitMove(isForbidSplitMove: boolean): Promise<void>

Sets whether this window is forbidden to move in split-screen mode. This API uses a promise to return the result.

System API: This is a system API.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
isForbidSplitMove boolean Yes Whether the window is forbidden to move in split-screen mode. The value true means the window is forbidden to move in split-screen mode, and false means the opposite.

Return value

Type Description
Promise<void> Promise that returns no value.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.
1300003 This window manager service works abnormally.

Example

let isForbidSplitMove = true;
try {
    let promise = windowClass.setForbidSplitMove(isForbidSplitMove);
    promise.then(()=> {
        console.info('Succeeded in forbidding window moving in split screen mode.');
    }).catch((err)=>{
        console.error('Failed to forbid window moving in split screen mode. Cause: ' + JSON.stringify(err));
    });
} catch (exception) {
    console.error('Failed to forbid window moving in split screen mode. Cause:' + JSON.stringify(exception));
}

snapshot9+

snapshot(callback: AsyncCallback<image.PixelMap>): void

Captures this window. This API uses an asynchronous callback to return the result.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
callback AsyncCallback<image.PixelMap> Yes Callback used to return the result.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.

Example

windowClass.snapshot((err, pixelMap) => {
    if (err.code) {
        console.error('Failed to snapshot window. Cause:' + JSON.stringify(err));
        return;
    }
    console.info('Succeeded in snapshotting window. Pixel bytes number: ' + pixelMap.getPixelBytesNumber());
    pixelMap.release(); // Release the memory in time after the PixelMap is used.
});

snapshot9+

snapshot(): Promise<image.PixelMap>

Captures this window. This API uses a promise to return the result.

System capability: SystemCapability.WindowManager.WindowManager.Core

Return value

Type Description
Promise<image.PixelMap> Promise used to return the window screenshot.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.

Example

let promise = windowClass.snapshot();
promise.then((pixelMap)=> {
    console.info('Succeeded in snapshotting window. Pixel bytes number: ' + pixelMap.getPixelBytesNumber());
    pixelMap.release(); // Release the memory in time after the PixelMap is used.
}).catch((err)=>{
    console.error('Failed to snapshot window. Cause:' + JSON.stringify(err));
});

opacity9+

opacity(opacity: number): void

Sets the opacity for this window. This API can be used only when you customize an animation to be played during the display or hiding of a system window.

System API: This is a system API.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
opacity number Yes Opacity to set. The value ranges from 0.0 to 1.0. The value 0.0 means completely transparent, and 1.0 means completely opaque.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.
1300004 Unauthorized operation.

Example

try {
    windowClass.opacity(0.5);
} catch (exception) {
    console.error('Failed to opacity. Cause: ' + JSON.stringify(exception));
}

scale9+

scale(scaleOptions: ScaleOptions): void

Sets the scale parameters for this window. This API can be used only when you customize an animation to be played during the display or hiding of a system window.

System API: This is a system API.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
scaleOptions ScaleOptions Yes Scale parameters to set.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.
1300004 Unauthorized operation.

Example

let obj : window.ScaleOptions = {
  x : 2.0,
  y : 1.0,
  pivotX : 0.5,
  pivotY : 0.5
};
try {
    windowClass.scale(obj);
} catch (exception) {
    console.error('Failed to scale. Cause: ' + JSON.stringify(exception));
}

rotate9+

rotate(rotateOptions: RotateOptions): void

Sets the rotation parameters for this window. This API can be used only when you customize an animation to be played during the display or hiding of a system window.

System API: This is a system API.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
rotateOptions RotateOptions Yes Rotation parameters to set.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.
1300004 Unauthorized operation.

Example

let obj : window.RotateOptions = {
  x : 1.0,
  y : 1.0,
  z : 45.0,
  pivotX : 0.5,
  pivotY : 0.5
};
try {
    windowClass.rotate(obj);
} catch (exception) {
    console.error('Failed to rotate. Cause: ' + JSON.stringify(exception));
}

translate9+

translate(translateOptions: TranslateOptions): void

Sets the translation parameters for this window. This API can be used only when you customize an animation to be played during the display or hiding of a system window.

System API: This is a system API.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
translateOptions TranslateOptions Yes Translation parameters. The unit is pixels.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.
1300004 Unauthorized operation.

Example

let obj : window.TranslateOptions = {
  x : 100.0,
  y : 0.0,
  z : 0.0
};
try {
    windowClass.translate(obj);
} catch (exception) {
    console.error('Failed to translate. Cause: ' + JSON.stringify(exception));
}

getTransitionController9+

getTransitionController(): TransitionController

Obtains the transition animation controller.

System API: This is a system API.

System capability: SystemCapability.WindowManager.WindowManager.Core

Return value

Type Description
TransitionController Transition animation controller.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.
1300004 Unauthorized operation.

Example

let controller = windowClass.getTransitionController(); // Obtain the transition animation controller.
controller.animationForHidden = (context : window.TransitionContext) => {
	let toWindow = context.toWindow;
 	animateTo({
    	duration: 1000, // Animation duration.
        tempo: 0.5, // Playback speed.
        curve: Curve.EaseInOut, // Animation curve.
        delay: 0, // Animation delay.
        iterations: 1, // Number of playback times.
        playMode: PlayMode.Normal // Animation playback mode.
        onFinish: ()=> {
            context.completeTransition(true)
        }    
      }, () => {
        let obj : window.TranslateOptions = {
          x : 100.0,
          y : 0.0,
          z : 0.0
        };
        toWindow.translate(obj); // Set the transition animation.
        console.info('toWindow translate end');
      }
    );
    console.info('complete transition end');
};
windowClass.hideWithAnimation((err, data) => {
    if (err.code) {
        console.error('Failed to show the window with animation. Cause: ' + JSON.stringify(err));
        return;
    }
    console.info('Succeeded in showing the window with animation. Data: ' + JSON.stringify(data));
});

setBlur9+

setBlur(radius: number): void

Blurs this window.

System API: This is a system API.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
radius number Yes Radius of the blur. The value is greater than or equal to 0. The value 0 means that the blur is disabled for the window.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.
1300004 Unauthorized operation.

Example

try {
    windowClass.setBlur(4.0);
} catch (exception) {
    console.error('Failed to set blur. Cause: ' + JSON.stringify(exception));
}

setBackdropBlur9+

setBackdropBlur(radius: number): void

Blurs the background of this window.

System API: This is a system API.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
radius number Yes Radius of the blur. The value is greater than or equal to 0. The value 0 means that the blur is disabled for the background of the window.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.
1300004 Unauthorized operation.

Example

try {
    windowClass.setBackdropBlur(4.0);
} catch (exception) {
    console.error('Failed to set backdrop blur. Cause: ' + JSON.stringify(exception));
}

setBackdropBlurStyle9+

setBackdropBlurStyle(blurStyle: BlurStyle): void

Sets the blur style for the background of this window.

System API: This is a system API.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
blurStyle BlurStyle Yes Blur style to set for the background of the window.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.
1300004 Unauthorized operation.

Example

try {
    windowClass.setBackdropBlurStyle(window.BlurStyle.THIN);
} catch (exception) {
    console.error('Failed to set backdrop blur style. Cause: ' + JSON.stringify(exception));
}

setShadow9+

setShadow(radius: number, color?: string, offsetX?: number, offsetY?: number): void

Sets the shadow for the window borders.

System API: This is a system API.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
radius number Yes Radius of the shadow. The value is greater than or equal to 0. The value 0 means that the shadow is disabled for the window borders.
color string No Color of the shadow. The value is a hexadecimal RGB or ARGB color code and is case insensitive, for example, #00FF00 or #FF00FF00.
offsetX number No Offset of the shadow along the x-axis, in pixels.
offsetY number No Offset of the shadow along the y-axis, in pixels.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.
1300004 Unauthorized operation.

Example

try {
    windowClass.setShadow(4.0, '#FF00FF00', 2, 3);
} catch (exception) {
    console.error('Failed to set shadow. Cause: ' + JSON.stringify(exception));
}

setCornerRadius9+

setCornerRadius(cornerRadius: number): void

Sets the radius of the rounded corners for this window.

System API: This is a system API.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
radius number Yes Radius of the rounded corners. The value is greater than or equal to 0. The value 0 means that the window does not use rounded corners.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.
1300004 Unauthorized operation.

Example

try {
    windowClass.setCornerRadius(4.0);
} catch (exception) {
    console.error('Failed to set corner radius. Cause: ' + JSON.stringify(exception));
}

show(deprecated)

show(callback: AsyncCallback<void>): void

Shows this window. This API uses an asynchronous callback to return the result.

NOTE

This API is supported since API version 7 and deprecated since API version 9. You are advised to use showWindow() instead.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
callback AsyncCallback<void> Yes Callback used to return the result.

Example

windowClass.show((err) => {
    if (err.code) {
        console.error('Failed to show the window. Cause: ' + JSON.stringify(err));
        return;
    }
    console.info('Succeeded in showing the window.');
});

show(deprecated)

show(): Promise<void>

Shows this window. This API uses a promise to return the result.

NOTE

This API is supported since API version 7 and deprecated since API version 9. You are advised to use showWindow() instead.

System capability: SystemCapability.WindowManager.WindowManager.Core

Return value

Type Description
Promise<void> Promise that returns no value.

Example

let promise = windowClass.show();
promise.then(()=> {
    console.info('Succeeded in showing the window.');
}).catch((err)=>{
    console.error('Failed to show the window. Cause: ' + JSON.stringify(err));
});

destroy(deprecated)

destroy(callback: AsyncCallback<void>): void

Destroys this window. This API uses an asynchronous callback to return the result.

NOTE

This API is supported since API version 7 and deprecated since API version 9. You are advised to use destroyWindow() instead.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
callback AsyncCallback<void> Yes Callback used to return the result.

Example

windowClass.destroy((err) => {
    if (err.code) {
        console.error('Failed to destroy the window. Cause:' + JSON.stringify(err));
        return;
    }
    console.info('Succeeded in destroying the window.');
});

destroy(deprecated)

destroy(): Promise<void>

Destroys this window. This API uses a promise to return the result.

NOTE

This API is supported since API version 7 and deprecated since API version 9. You are advised to use destroyWindow() instead.

System capability: SystemCapability.WindowManager.WindowManager.Core

Return value

Type Description
Promise<void> Promise that returns no value.

Example

let promise = windowClass.destroy();
promise.then(()=> {
    console.info('Succeeded in destroying the window.');
}).catch((err)=>{
    console.error('Failed to destroy the window. Cause: ' + JSON.stringify(err));
});

moveTo(deprecated)

moveTo(x: number, y: number, callback: AsyncCallback<void>): void

Moves this window. This API uses an asynchronous callback to return the result.

This operation is not supported in a window in full-screen mode.

NOTE

This API is supported since API version 7 and deprecated since API version 9. You are advised to use moveWindowTo() instead.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
x number Yes Distance that the window moves along the x-axis, in px. A positive value indicates that the window moves to the right.
y number Yes Distance that the window moves along the y-axis, in px. A positive value indicates that the window moves downwards.
callback AsyncCallback<void> Yes Callback used to return the result.

Example

windowClass.moveTo(300, 300, (err)=>{
    if (err.code) {
        console.error('Failed to move the window. Cause:' + JSON.stringify(err));
        return;
    }
    console.info('Succeeded in moving the window.');
});

moveTo(deprecated)

moveTo(x: number, y: number): Promise<void>

Moves this window. This API uses a promise to return the result.

This operation is not supported in a window in full-screen mode.

NOTE

This API is supported since API version 7 and deprecated since API version 9. You are advised to use moveWindowTo() instead.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
x number Yes Distance that the window moves along the x-axis, in px. A positive value indicates that the window moves to the right.
y number Yes Distance that the window moves along the y-axis, in px. A positive value indicates that the window moves downwards.

Return value

Type Description
Promise<void> Promise that returns no value.

Example

let promise = windowClass.moveTo(300, 300);
promise.then(()=> {
    console.info('Succeeded in moving the window.');
}).catch((err)=>{
    console.error('Failed to move the window. Cause: ' + JSON.stringify(err));
});

resetSize(deprecated)

resetSize(width: number, height: number, callback: AsyncCallback<void>): void

Changes the size of this window. This API uses an asynchronous callback to return the result.

The main window and subwindow have the following size limits: [320, 2560] in width and [240, 2560] in height, both in units of vp.

The system window has the following size limits: [0, 2560] in width and [0, 2560] in height, both in units of vp.

The new width and height you set must meet the limits.

This operation is not supported in a window in full-screen mode.

NOTE

This API is supported since API version 7 and deprecated since API version 9. You are advised to use resize() instead.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
width number Yes New width of the window, in px.
height number Yes New height of the window, in px.
callback AsyncCallback<void> Yes Callback used to return the result.

Example

windowClass.resetSize(500, 1000, (err) => {
    if (err.code) {
        console.error('Failed to change the window size. Cause:' + JSON.stringify(err));
        return;
    }
    console.info('Succeeded in changing the window size.');
});

resetSize(deprecated)

resetSize(width: number, height: number): Promise<void>

Changes the size of this window. This API uses a promise to return the result.

The main window and subwindow have the following size limits: [320, 2560] in width and [240, 2560] in height, both in units of vp.

The system window has the following size limits: [0, 2560] in width and [0, 2560] in height, both in units of vp.

The new width and height you set must meet the limits.

This operation is not supported in a window in full-screen mode.

NOTE

This API is supported since API version 7 and deprecated since API version 9. You are advised to use resize() instead.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
width number Yes New width of the window, in px.
height number Yes New height of the window, in px.

Return value

Type Description
Promise<void> Promise that returns no value.

Example

let promise = windowClass.resetSize(500, 1000);
promise.then(()=> {
    console.info('Succeeded in changing the window size.');
}).catch((err)=>{
    console.error('Failed to change the window size. Cause: ' + JSON.stringify(err));
});

setWindowType(deprecated)

setWindowType(type: WindowType, callback: AsyncCallback<void>): void

Sets the type of this window. This API uses an asynchronous callback to return the result.

System API: This is a system API.

NOTE

This API is supported since API version 7 and deprecated since API version 9.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
type WindowType Yes Window type.
callback AsyncCallback<void> Yes Callback used to return the result.

Example

let type = window.WindowType.TYPE_APP;
windowClass.setWindowType(type, (err) => {
  if (err.code) {
      console.error('Failed to set the window type. Cause: ' + JSON.stringify(err));
      return;
  }
  console.info('Succeeded in setting the window type.');
});

setWindowType(deprecated)

setWindowType(type: WindowType): Promise<void>

Sets the type of this window. This API uses a promise to return the result.

System API: This is a system API.

NOTE

This API is supported since API version 7 and deprecated since API version 9.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
type WindowType Yes Window type.

Return value

Type Description
Promise<void> Promise that returns no value.

Example

let type = window.WindowType.TYPE_APP;
let promise = windowClass.setWindowType(type);
promise.then(()=> {
    console.info('Succeeded in setting the window type.');
}).catch((err)=>{
    console.error('Failed to set the window type. Cause: ' + JSON.stringify(err));
});

getProperties(deprecated)

getProperties(callback: AsyncCallback<WindowProperties>): void

Obtains the properties of this window. This API uses an asynchronous callback to return the result.

NOTE

This API is supported since API version 6 and deprecated since API version 9. You are advised to use getWindowProperties() instead.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
callback AsyncCallback<WindowProperties> Yes Callback used to return the window properties.

Example

windowClass.getProperties((err, data) => {
    if (err.code) {
        console.error('Failed to obtain the window properties. Cause: ' + JSON.stringify(err));
        return;
    }
    console.info('Succeeded in obtaining the window properties. Data: ' + JSON.stringify(data));
});

getProperties(deprecated)

getProperties(): Promise<WindowProperties>

Obtains the properties of this window. This API uses a promise to return the result.

NOTE

This API is supported since API version 6 and deprecated since API version 9. You are advised to use getWindowProperties() instead.

System capability: SystemCapability.WindowManager.WindowManager.Core

Return value

Type Description
Promise<WindowProperties> Promise used to return the window properties.

Example

let promise = windowClass.getProperties();
promise.then((data)=> {
    console.info('Succeeded in obtaining the window properties. Data: ' + JSON.stringify(data));
}).catch((err)=>{
    console.error('Failed to obtain the window properties. Cause: ' + JSON.stringify(err));
});

getAvoidArea(deprecated)

getAvoidArea(type: AvoidAreaType, callback: AsyncCallback<AvoidArea>): void

Obtains the area where this window cannot be displayed, for example, the system bar area, notch, gesture area, and soft keyboard area. This API uses an asynchronous callback to return the result.

NOTE

This API is supported since API version 7 and deprecated since API version 9. You are advised to use getWindowAvoidArea() instead.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
type AvoidAreaType Yes Type of the area.
callback AsyncCallback<AvoidArea> Yes Callback used to return the area.

Example

let type = window.AvoidAreaType.TYPE_SYSTEM;
windowClass.getAvoidArea(type, (err, data) => {
    if (err.code) {
        console.error('Failed to obtain the area. Cause:' + JSON.stringify(err));
        return;
    }
    console.info('Succeeded in obtaining the area. Data:' + JSON.stringify(data));
});

getAvoidArea(deprecated)

getAvoidArea(type: AvoidAreaType): Promise<AvoidArea>

Obtains the area where this window cannot be displayed, for example, the system bar area, notch, gesture area, and soft keyboard area. This API uses a promise to return the result.

NOTE

This API is supported since API version 7 and deprecated since API version 9. You are advised to use getWindowAvoidArea() instead.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
type AvoidAreaType Yes Type of the area.

Return value

Type Description
Promise<AvoidArea> Promise used to return the area.

Example

let type = window.AvoidAreaType.TYPE_SYSTEM;
let promise = windowClass.getAvoidArea(type);
promise.then((data)=> {
    console.info('Succeeded in obtaining the area. Data:' + JSON.stringify(data));
}).catch((err)=>{
    console.error('Failed to obtain the area. Cause:' + JSON.stringify(err));
});

setFullScreen(deprecated)

setFullScreen(isFullScreen: boolean, callback: AsyncCallback<void>): void

Sets whether to enable the full-screen mode for this window. This API uses an asynchronous callback to return the result.

NOTE

This API is supported since API version 6 and deprecated since API version 9. You are advised to use setWindowSystemBarEnable() instead.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
isFullScreen boolean Yes Whether to enable the full-screen mode, in which the status bar and navigation bar are hidden. The value true means to enable the full-screen mode, and false means the opposite.
callback AsyncCallback<void> Yes Callback used to return the result.

Example

let isFullScreen = true;
windowClass.setFullScreen(isFullScreen, (err) => {
    if (err.code) {
        console.error('Failed to enable the full-screen mode. Cause: ' + JSON.stringify(err));
        return;
    }
    console.info('Succeeded in enabling the full-screen mode.');
});

setFullScreen(deprecated)

setFullScreen(isFullScreen: boolean): Promise<void>

Sets whether to enable the full-screen mode for this window. This API uses a promise to return the result.

NOTE

This API is supported since API version 6 and deprecated since API version 9. You are advised to use setWindowSystemBarEnable() instead.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
isFullScreen boolean Yes Whether to enable the full-screen mode, in which the status bar and navigation bar are hidden. The value true means to enable the full-screen mode, and false means the opposite.

Return value

Type Description
Promise<void> Promise that returns no value.

Example

let isFullScreen = true;
let promise = windowClass.setFullScreen(isFullScreen);
promise.then(()=> {
    console.info('Succeeded in enabling the full-screen mode.');
}).catch((err)=>{
    console.error('Failed to enable the full-screen mode. Cause: ' + JSON.stringify(err));
});

setLayoutFullScreen(deprecated)

setLayoutFullScreen(isLayoutFullScreen: boolean, callback: AsyncCallback<void>): void

Sets whether to enable the full-screen mode for the window layout. This API uses an asynchronous callback to return the result.

NOTE

This API is supported since API version 7 and deprecated since API version 9. You are advised to use setWindowLayoutFullScreen() instead.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
isLayoutFullScreen boolean Yes Whether to enable the full-screen mode for the window layout, in which the status bar and navigation bar are displayed. The value true means to enable the full-screen mode for the window layout, and false means the opposite.
callback AsyncCallback<void> Yes Callback used to return the result.

Example

let isLayoutFullScreen= true;
windowClass.setLayoutFullScreen(isLayoutFullScreen, (err) => {
    if (err.code) {
        console.error('Failed to set the window layout to full-screen mode. Cause:' + JSON.stringify(err));
        return;
    }
    console.info('Succeeded in setting the window layout to full-screen mode.');
});

setLayoutFullScreen(deprecated)

setLayoutFullScreen(isLayoutFullScreen: boolean): Promise<void>

Sets whether to enable the full-screen mode for the window layout. This API uses a promise to return the result.

NOTE

This API is supported since API version 7 and deprecated since API version 9. You are advised to use setWindowLayoutFullScreen() instead.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
isLayoutFullScreen boolean Yes Whether to enable the full-screen mode for the window layout, in which the status bar and navigation bar are displayed. The value true means to enable the full-screen mode for the window layout, and false means the opposite.

Return value

Type Description
Promise<void> Promise that returns no value.

Example

let isLayoutFullScreen = true;
let promise = windowClass.setLayoutFullScreen(isLayoutFullScreen);
promise.then(()=> {
    console.info('Succeeded in setting the window layout to full-screen mode.');
}).catch((err)=>{
    console.error('Failed to set the window layout to full-screen mode. Cause:' + JSON.stringify(err));
});

setSystemBarEnable(deprecated)

setSystemBarEnable(names: Array<'status' | 'navigation'>, callback: AsyncCallback<void>): void

Sets whether to display the status bar and navigation bar in this window. This API uses an asynchronous callback to return the result.

NOTE

This API is supported since API version 7 and deprecated since API version 9. You are advised to use setWindowSystemBarEnable() instead.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
names Array<'status'|'navigation'> Yes Whether to display the status bar and navigation bar.
For example, to display the status bar and navigation bar, set this parameter to ['status', 'navigation']. By default, they are not displayed.
callback AsyncCallback<void> Yes Callback used to return the result.

Example

// In this example, the status bar and navigation bar are not displayed.
let names = [];
windowClass.setSystemBarEnable(names, (err) => {
    if (err.code) {
        console.error('Failed to set the system bar to be invisible. Cause:' + JSON.stringify(err));
        return;
    }
    console.info('Succeeded in setting the system bar to be invisible.');
});

setSystemBarEnable(deprecated)

setSystemBarEnable(names: Array<'status' | 'navigation'>): Promise<void>

Sets whether to display the status bar and navigation bar in this window. This API uses a promise to return the result.

NOTE

This API is supported since API version 7 and deprecated since API version 9. You are advised to use setWindowSystemBarEnable() instead.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
names Array<'status'|'navigation'> Yes Whether to display the status bar and navigation bar.
For example, to display the status bar and navigation bar, set this parameter to ['status', 'navigation']. By default, they are not displayed.

Return value

Type Description
Promise<void> Promise that returns no value.

Example

// In this example, the status bar and navigation bar are not displayed.
let names = [];
let promise = windowClass.setSystemBarEnable(names);
promise.then(()=> {
    console.info('Succeeded in setting the system bar to be invisible.');
}).catch((err)=>{
    console.error('Failed to set the system bar to be invisible. Cause:' + JSON.stringify(err));
});

setSystemBarProperties(deprecated)

setSystemBarProperties(systemBarProperties: SystemBarProperties, callback: AsyncCallback<void>): void

Sets the properties of the status bar and navigation bar in this window. This API uses an asynchronous callback to return the result.

NOTE

This API is supported since API version 6 and deprecated since API version 9. You are advised to use setWindowSystemBarProperties() instead.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
SystemBarProperties SystemBarProperties Yes Properties of the status bar and navigation bar.
callback AsyncCallback<void> Yes Callback used to return the result.

Example

let SystemBarProperties={
    statusBarColor: '#ff00ff',
    navigationBarColor: '#00ff00',
    // The following properties are supported since API version 8.
    statusBarContentColor:'#ffffff',
    navigationBarContentColor:'#00ffff'
};
windowClass.setSystemBarProperties(SystemBarProperties, (err) => {
    if (err.code) {
        console.error('Failed to set the system bar properties. Cause: ' + JSON.stringify(err));
        return;
    }
    console.info('Succeeded in setting the system bar properties.');
});

setSystemBarProperties(deprecated)

setSystemBarProperties(systemBarProperties: SystemBarProperties): Promise<void>

Sets the properties of the status bar and navigation bar in this window. This API uses a promise to return the result.

NOTE

This API is supported since API version 6 and deprecated since API version 9. You are advised to use setWindowSystemBarProperties() instead.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
SystemBarProperties SystemBarProperties Yes Properties of the status bar and navigation bar.

Return value

Type Description
Promise<void> Promise that returns no value.

Example

let SystemBarProperties={
    statusBarColor: '#ff00ff',
    navigationBarColor: '#00ff00',
    // The following properties are supported since API version 8.
    statusBarContentColor:'#ffffff',
    navigationBarContentColor:'#00ffff'
};
let promise = windowClass.setSystemBarProperties(SystemBarProperties);
promise.then(()=> {
    console.info('Succeeded in setting the system bar properties.');
}).catch((err)=>{
    console.error('Failed to set the system bar properties. Cause: ' + JSON.stringify(err));
});

loadContent(deprecated)

loadContent(path: string, callback: AsyncCallback<void>): void

Loads content from a page to this window. This API uses an asynchronous callback to return the result.

NOTE

This API is supported since API version 7 and deprecated since API version 9. You are advised to use setUIContent() instead.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
path string Yes Path of the page from which the content will be loaded.
callback AsyncCallback<void> Yes Callback used to return the result.

Example

windowClass.loadContent('pages/page2/page2', (err) => {
   if (err.code) {
         console.error('Failed to load the content. Cause:' + JSON.stringify(err));
         return;
   }
  console.info('Succeeded in loading the content.');
});

loadContent(deprecated)

loadContent(path: string): Promise<void>

Loads content from a page to this window. This API uses a promise to return the result.

NOTE

This API is supported since API version 7 and deprecated since API version 9. You are advised to use setUIContent() instead.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
path string Yes Path of the page from which the content will be loaded.

Return value

Type Description
Promise<void> Promise that returns no value.

Example

let promise = windowClass.loadContent('pages/page2/page2');
promise.then(()=> {
    console.info('Succeeded in loading the content.');
}).catch((err)=>{
    console.error('Failed to load the content. Cause: ' + JSON.stringify(err));
});

isShowing(deprecated)

isShowing(callback: AsyncCallback<boolean>): void

Checks whether this window is displayed. This API uses an asynchronous callback to return the result.

NOTE

This API is supported since API version 7 and deprecated since API version 9. You are advised to use isWindowShowing() instead.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
callback AsyncCallback<boolean> Yes Callback used to return the result. The value true means that the window is displayed, and false means the opposite.

Example

windowClass.isShowing((err, data) => {
    if (err.code) {
        console.error('Failed to check whether the window is showing. Cause:' + JSON.stringify(err));
        return;
    }
    console.info('Succeeded in checking whether the window is showing. Data: ' + JSON.stringify(data));
});

isShowing(deprecated)

isShowing(): Promise<boolean>

Checks whether this window is displayed. This API uses a promise to return the result.

NOTE

This API is supported since API version 7 and deprecated since API version 9. You are advised to use isWindowShowing() instead.

System capability: SystemCapability.WindowManager.WindowManager.Core

Return value

Type Description
Promise<boolean> Promise used to return the result. The value true means that the window is displayed, and false means the opposite.

Example

let promise = windowClass.isShowing();
promise.then((data)=> {
    console.info('Succeeded in checking whether the window is showing. Data: ' + JSON.stringify(data));
}).catch((err)=>{
    console.error('Failed to check whether the window is showing. Cause: ' + JSON.stringify(err));
});

on('systemAvoidAreaChange')(deprecated)

on(type: 'systemAvoidAreaChange', callback: Callback<AvoidArea>): void

Enables listening for changes to the area where the window cannot be displayed.

NOTE

This API is supported since API version 7 and deprecated since API version 9. Use on('avoidAreaChange') instead.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
type string Yes Event type. The value is fixed at 'systemAvoidAreaChange', indicating the event of changes to the area where the window cannot be displayed.
callback Callback<AvoidArea> Yes Callback used to return the area.

Example

windowClass.on('systemAvoidAreaChange', (data) => {
    console.info('Succeeded in enabling the listener for system avoid area changes. Data: ' + JSON.stringify(data));
});

off('systemAvoidAreaChange')(deprecated)

off(type: 'systemAvoidAreaChange', callback?: Callback<AvoidArea>): void

Disables listening for changes to the area where the window cannot be displayed.

NOTE

This API is supported since API version 7 and deprecated since API version 9. Use off('avoidAreaChange') instead.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
type string Yes Event type. The value is fixed at 'systemAvoidAreaChange', indicating the event of changes to the area where the window cannot be displayed.
callback Callback<AvoidArea> No Callback used to return the area.

Example

windowClass.off('systemAvoidAreaChange');

isSupportWideGamut(deprecated)

isSupportWideGamut(callback: AsyncCallback<boolean>): void

Checks whether this window supports the wide-gamut color space. This API uses an asynchronous callback to return the result.

NOTE

This API is supported since API version 8 and deprecated since API version 9. You are advised to use isWindowSupportWideGamut() instead.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
callback AsyncCallback<boolean> Yes Callback used to return the result. The value true means that the wide-gamut color space is supported, and false means the opposite.

Example

windowClass.isSupportWideGamut((err, data) => {
    if (err.code) {
        console.error('Failed to check whether the window support WideGamut. Cause:' + JSON.stringify(err));
        return;
    }
    console.info('Succeeded in checking whether the window support WideGamut Data: ' + JSON.stringify(data));
});

isSupportWideGamut(deprecated)

isSupportWideGamut(): Promise<boolean>

Checks whether this window supports the wide-gamut color space. This API uses a promise to return the result.

NOTE

This API is supported since API version 8 and deprecated since API version 9. You are advised to use isWindowSupportWideGamut() instead.

System capability: SystemCapability.WindowManager.WindowManager.Core

Return value

Type Description
Promise<boolean> Promise used to return the result. The value true means that the wide-gamut color space is supported, and false means the opposite.

Example

let promise = windowClass.isSupportWideGamut();
promise.then((data)=> {
    console.info('Succeeded in checking whether the window support WideGamut. Data: ' + JSON.stringify(data));
}).catch((err)=>{
    console.error('Failed to check whether the window support WideGamut. Cause: ' + JSON.stringify(err));
});

setColorSpace(deprecated)

setColorSpace(colorSpace:ColorSpace, callback: AsyncCallback<void>): void

Sets a color space for this window. This API uses an asynchronous callback to return the result.

NOTE

This API is supported since API version 8 and deprecated since API version 9. You are advised to use setWindowColorSpace() instead.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
colorSpace ColorSpace Yes Color space to set.
callback AsyncCallback<void> Yes Callback used to return the result.

Example

windowClass.setColorSpace(window.ColorSpace.WIDE_GAMUT, (err) => {
    if (err.code) {
        console.error('Failed to set window colorspace. Cause:' + JSON.stringify(err));
        return;
    }
    console.info('Succeeded in setting window colorspace.');
});

setColorSpace(deprecated)

setColorSpace(colorSpace:ColorSpace): Promise<void>

Sets a color space for this window. This API uses a promise to return the result.

NOTE

This API is supported since API version 8 and deprecated since API version 9. You are advised to use setWindowColorSpace() instead.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
colorSpace ColorSpace Yes Color space to set.

Return value

Type Description
Promise<void> Promise that returns no value.

Example

let promise = windowClass.setColorSpace(window.ColorSpace.WIDE_GAMUT);
promise.then(()=> {
    console.info('Succeeded in setting window colorspace.');
}).catch((err)=>{
    console.error('Failed to set window colorspace. Cause: ' + JSON.stringify(err));
});

getColorSpace(deprecated)

getColorSpace(callback: AsyncCallback<ColorSpace>): void

Obtains the color space of this window. This API uses an asynchronous callback to return the result.

NOTE

This API is supported since API version 8 and deprecated since API version 9. You are advised to use getWindowColorSpace() instead.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
callback AsyncCallback<ColorSpace> Yes Callback used to return the result. When the color space is obtained successfully, err is undefined, and data is the current color space.

Example

windowClass.getColorSpace((err, data) => {
    if (err.code) {
        console.error('Failed to get window colorspace. Cause:' + JSON.stringify(err));
        return;
    }
    console.info('Succeeded in getting window colorspace. Cause:' + JSON.stringify(data));
});

getColorSpace(deprecated)

getColorSpace(): Promise<ColorSpace>

Obtains the color space of this window. This API uses a promise to return the result.

NOTE

This API is supported since API version 8 and deprecated since API version 9. You are advised to use getWindowColorSpace() instead.

System capability: SystemCapability.WindowManager.WindowManager.Core

Return value

Type Description
Promise<ColorSpace> Promise used to return the current color space.

Example

let promise = windowClass.getColorSpace();
promise.then((data)=> {
    console.info('Succeeded in getting window color space. Cause:' + JSON.stringify(data));
}).catch((err)=>{
    console.error('Failed to get window colorspace. Cause: ' + JSON.stringify(err));
});

setBackgroundColor(deprecated)

setBackgroundColor(color: string, callback: AsyncCallback<void>): void

Sets the background color for this window. This API uses an asynchronous callback to return the result. In the stage model, this API must be used after loadContent or setUIContent().

NOTE

This API is supported since API version 6 and deprecated since API version 9. You are advised to use setWindowBackgroundColor() instead.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
color string Yes Background color to set. The value is a hexadecimal RGB or ARGB color code and is case insensitive, for example, #00FF00 or #FF00FF00.
callback AsyncCallback<void> Yes Callback used to return the result.

Example

let color = '#00ff33';
windowClass.setBackgroundColor(color, (err) => {
    if (err.code) {
        console.error('Failed to set the background color. Cause: ' + JSON.stringify(err));
        return;
    }
    console.info('Succeeded in setting the background color.');
});

setBackgroundColor(deprecated)

setBackgroundColor(color: string): Promise<void>

Sets the background color for this window. This API uses a promise to return the result. In the stage model, this API must be used after loadContent or setUIContent().

NOTE

This API is supported since API version 6 and deprecated since API version 9. You are advised to use setWindowBackgroundColor() instead.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
color string Yes Background color to set. The value is a hexadecimal RGB or ARGB color code and is case insensitive, for example, #00FF00 or #FF00FF00.

Return value

Type Description
Promise<void> Promise that returns no value.

Example

let color = '#00ff33';
let promise = windowClass.setBackgroundColor(color);
promise.then(()=> {
    console.info('Succeeded in setting the background color.');
}).catch((err)=>{
    console.error('Failed to set the background color. Cause: ' + JSON.stringify(err));
});

setBrightness(deprecated)

setBrightness(brightness: number, callback: AsyncCallback<void>): void

Sets the screen brightness for this window. This API uses an asynchronous callback to return the result.

NOTE

This API is supported since API version 6 and deprecated since API version 9. You are advised to use setWindowBrightness() instead.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
brightness number Yes Brightness to set, which ranges from 0 to 1. The value 1 indicates the brightest.
callback AsyncCallback<void> Yes Callback used to return the result.

Example

let brightness = 1;
windowClass.setBrightness(brightness, (err) => {
    if (err.code) {
        console.error('Failed to set the brightness. Cause: ' + JSON.stringify(err));
        return;
    }
    console.info('Succeeded in setting the brightness.');
});

setBrightness(deprecated)

setBrightness(brightness: number): Promise<void>

Sets the screen brightness for this window. This API uses a promise to return the result.

NOTE

This API is supported since API version 6 and deprecated since API version 9. You are advised to use setWindowBrightness() instead.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
brightness number Yes Brightness to set, which ranges from 0 to 1. The value 1 indicates the brightest.

Return value

Type Description
Promise<void> Promise that returns no value.

Example

let brightness = 1;
let promise = windowClass.setBrightness(brightness);
promise.then(()=> {
    console.info('Succeeded in setting the brightness.');
}).catch((err)=>{
    console.error('Failed to set the brightness. Cause: ' + JSON.stringify(err));
});

setDimBehind(deprecated)

setDimBehind(dimBehindValue: number, callback: AsyncCallback<void>): void

Sets the dimness of the window that is not on top. This API uses an asynchronous callback to return the result.

NOTE

This API cannot be used. This API is supported since API version 7 and deprecated since API version 9.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
dimBehindValue number Yes Dimness of the window to set. The value ranges from 0 to 1. The value 1 indicates the dimmest.
callback AsyncCallback<void> Yes Callback used to return the result.

Example

windowClass.setDimBehind(0.5, (err) => {
    if (err.code) {
        console.error('Failed to set the dimness. Cause: ' + JSON.stringify(err));
        return;
    }
    console.info('Succeeded in setting the dimness.');
});

setDimBehind(deprecated)

setDimBehind(dimBehindValue: number): Promise<void>

Sets the dimness of the window that is not on top. This API uses a promise to return the result.

NOTE

This API cannot be used. This API is supported since API version 7 and deprecated since API version 9.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
dimBehindValue number Yes Dimness of the window to set. The value ranges from 0 to 1. The value 1 indicates the dimmest.

Return value

Type Description
Promise<void> Promise that returns no value.

Example

let promise = windowClass.setDimBehind(0.5);
promise.then(()=> {
    console.info('Succeeded in setting the dimness.');
}).catch((err)=>{
    console.error('Failed to set the dimness. Cause: ' + JSON.stringify(err));
});

setFocusable(deprecated)

setFocusable(isFocusable: boolean, callback: AsyncCallback<void>): void

Sets whether this window can gain focus. This API uses an asynchronous callback to return the result.

NOTE

This API is supported since API version 7 and deprecated since API version 9. You are advised to use setWindowFocusable() instead.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
isFocusable boolean Yes Whether the window can gain focus. The value true means that the window can gain focus, and false means the opposite.
callback AsyncCallback<void> Yes Callback used to return the result.

Example

let isFocusable= true;
windowClass.setFocusable(isFocusable, (err) => {
    if (err.code) {
        console.error('Failed to set the window to be focusable. Cause:' + JSON.stringify(err));
        return;
    }
    console.info('Succeeded in setting the window to be focusable.');
});

setFocusable(deprecated)

setFocusable(isFocusable: boolean): Promise<void>

Sets whether this window can gain focus. This API uses a promise to return the result.

NOTE

This API is supported since API version 7 and deprecated since API version 9. You are advised to use setWindowFocusable() instead.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
isFocusable boolean Yes Whether the window can gain focus. The value true means that the window can gain focus, and false means the opposite.

Return value

Type Description
Promise<void> Promise that returns no value.

Example

let isFocusable= true;
let promise = windowClass.setFocusable(isFocusable);
promise.then(()=> {
    console.info('Succeeded in setting the window to be focusable.');
}).catch((err)=>{
    console.error('Failed to set the window to be focusable. Cause: ' + JSON.stringify(err));
});

setKeepScreenOn(deprecated)

setKeepScreenOn(isKeepScreenOn: boolean, callback: AsyncCallback<void>): void

Sets whether to keep the screen always on. This API uses an asynchronous callback to return the result.

NOTE

This API is supported since API version 6 and deprecated since API version 9. You are advised to use setWindowKeepScreenOn() instead.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
isKeepScreenOn boolean Yes Whether to keep the screen always on. The value true means to keep the screen always on, and false means the opposite.
callback AsyncCallback<void> Yes Callback used to return the result.

Example

let isKeepScreenOn = true;
windowClass.setKeepScreenOn(isKeepScreenOn, (err) => {
    if (err.code) {
        console.error('Failed to set the screen to be always on. Cause: ' + JSON.stringify(err));
        return;
    }
    console.info('Succeeded in setting the screen to be always on.');
});

setKeepScreenOn(deprecated)

setKeepScreenOn(isKeepScreenOn: boolean): Promise<void>

Sets whether to keep the screen always on. This API uses a promise to return the result.

NOTE

This API is supported since API version 6 and deprecated since API version 9. You are advised to use setWindowKeepScreenOn() instead.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
isKeepScreenOn boolean Yes Whether to keep the screen always on. The value true means to keep the screen always on, and false means the opposite.

Return value

Type Description
Promise<void> Promise that returns no value.

Example

let isKeepScreenOn = true;
let promise = windowClass.setKeepScreenOn(isKeepScreenOn);
promise.then(() => {
    console.info('Succeeded in setting the screen to be always on.');
}).catch((err)=>{
    console.info('Failed to set the screen to be always on. Cause:  ' + JSON.stringify(err));
});

setOutsideTouchable(deprecated)

setOutsideTouchable(touchable: boolean, callback: AsyncCallback<void>): void

Sets whether the area outside the subwindow is touchable. This API uses an asynchronous callback to return the result.

NOTE

This API cannot be used. This API is supported since API version 7 and deprecated since API version 9.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
touchable boolean Yes Whether the area outside the subwindow is touchable. The value true means the area outside the subwindow is touchable, and false means the opposite.
callback AsyncCallback<void> Yes Callback used to return the result.

Example

windowClass.setOutsideTouchable(true, (err) => {
    if (err.code) {
        console.error('Failed to set the area to be touchable. Cause: ' + JSON.stringify(err));
        return;
    }
    console.info('Succeeded in setting the area to be touchable.');
});

setOutsideTouchable(deprecated)

setOutsideTouchable(touchable: boolean): Promise<void>

Sets whether the area outside the subwindow is touchable. This API uses a promise to return the result.

NOTE

This API cannot be used. This API is supported since API version 7 and deprecated since API version 9.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
touchable boolean Yes Whether the area outside the subwindow is touchable. The value true means the area outside the subwindow is touchable, and false means the opposite.

Return value

Type Description
Promise<void> Promise that returns no value.

Example

let promise = windowClass.setOutsideTouchable(true);
promise.then(()=> {
    console.info('Succeeded in setting the area to be touchable.');
}).catch((err)=>{
    console.error('Failed to set the area to be touchable. Cause: ' + JSON.stringify(err));
});

setPrivacyMode(deprecated)

setPrivacyMode(isPrivacyMode: boolean, callback: AsyncCallback<void>): void

Sets whether this window is in privacy mode. This API uses an asynchronous callback to return the result. When in privacy mode, the window content cannot be captured or recorded.

NOTE

This API is supported since API version 7 and deprecated since API version 9. You are advised to use setWindowPrivacyMode() instead.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
isPrivacyMode boolean Yes Whether the window is in privacy mode. The value true means that the window is in privacy mode, and false means the opposite.
callback AsyncCallback<void> Yes Callback used to return the result.

Example

let isPrivacyMode = true;
windowClass.setPrivacyMode(isPrivacyMode, (err) => {
    if (err.code) {
        console.error('Failed to set the window to privacy mode. Cause:' + JSON.stringify(err));
        return;
    }
    console.info('Succeeded in setting the window to privacy mode.');
});

setPrivacyMode(deprecated)

setPrivacyMode(isPrivacyMode: boolean): Promise<void>

Sets whether this window is in privacy mode. This API uses a promise to return the result. When in privacy mode, the window content cannot be captured or recorded.

NOTE

This API is supported since API version 7 and deprecated since API version 9. You are advised to use setWindowPrivacyMode() instead.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
isPrivacyMode boolean Yes Whether the window is in privacy mode. The value true means that the window is in privacy mode, and false means the opposite.

Return value

Type Description
Promise<void> Promise that returns no value.

Example

let isPrivacyMode = true;
let promise = windowClass.setPrivacyMode(isPrivacyMode);
promise.then(()=> {
    console.info('Succeeded in setting the window to privacy mode.');
}).catch((err)=>{
    console.error('Failed to set the window to privacy mode. Cause: ' + JSON.stringify(err));
});

setTouchable(deprecated)

setTouchable(isTouchable: boolean, callback: AsyncCallback<void>): void

Sets whether this window is touchable. This API uses an asynchronous callback to return the result.

NOTE

This API is supported since API version 7 and deprecated since API version 9. You are advised to use setWindowTouchable() instead.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
isTouchable boolean Yes Whether the window is touchable. The value true means that the window is touchable, and false means the opposite.
callback AsyncCallback<void> Yes Callback used to return the result.

Example

let isTouchable = true;
windowClass.setTouchable(isTouchable, (err) => {
    if (err.code) {
        console.error('Failed to set the window to be touchable. Cause:' + JSON.stringify(err));
        return;
    }
    console.info('Succeeded in setting the window to be touchable.');
});

setTouchable(deprecated)

setTouchable(isTouchable: boolean): Promise<void>

Sets whether this window is touchable. This API uses a promise to return the result.

NOTE

This API is supported since API version 7 and deprecated since API version 9. You are advised to use setWindowTouchable() instead.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
isTouchable boolean Yes Whether the window is touchable. The value true means that the window is touchable, and false means the opposite.

Return value

Type Description
Promise<void> Promise that returns no value.

Example

let isTouchable = true;
let promise = windowClass.setTouchable(isTouchable);
promise.then(()=> {
    console.info('Succeeded in setting the window to be touchable.');
}).catch((err)=>{
    console.error('Failed to set the window to be touchable. Cause: ' + JSON.stringify(err));
});

WindowStageEventType9+

Describes the lifecycle of a window stage.

Model restriction: This API can be used only in the stage model.

System capability: SystemCapability.WindowManager.WindowManager.Core

Name Value Description
SHOWN 1 The window stage is running in the foreground.
ACTIVE 2 The window stage gains focus.
INACTIVE 3 The window stage loses focus.
HIDDEN 4 The window stage is running in the background.

WindowStage9+

Implements a window manager, which manages each basic window unit, that is, Window instance.

Before calling any of the following APIs, you must use onWindowStageCreate() to create a WindowStage instance.

getMainWindow9+

getMainWindow(callback: AsyncCallback<Window>): void

Obtains the main window of this window stage. This API uses an asynchronous callback to return the result.

Model restriction: This API can be used only in the stage model.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
callback AsyncCallback<Window> Yes Callback used to return the main window.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.
1300005 This window stage is abnormal.

Example

import UIAbility from '@ohos.app.ability.UIAbility';

class myAbility extends UIAbility {
    onWindowStageCreate(windowStage) {
        console.log('onWindowStageCreate');
        let windowClass = null;
        windowStage.getMainWindow((err, data) => {
            if (err.code) {
                console.error('Failed to obtain the main window. Cause: ' + JSON.stringify(err));
                return;
            }
            windowClass = data;
            console.info('Succeeded in obtaining the main window. Data: ' + JSON.stringify(data));
        });
    }
};

getMainWindow9+

getMainWindow(): Promise<Window>

Obtains the main window of this window stage. This API uses a promise to return the result.

Model restriction: This API can be used only in the stage model.

System capability: SystemCapability.WindowManager.WindowManager.Core

Return value

Type Description
Promise<Window> Promise used to return the main window.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.
1300005 This window stage is abnormal.

Example

import UIAbility from '@ohos.app.ability.UIAbility';

class myAbility extends UIAbility {
    onWindowStageCreate(windowStage) {
        console.log('onWindowStageCreate');
        let windowClass = null;
        let promise = windowStage.getMainWindow();
        promise.then((data) => {
        windowClass = data;
            console.info('Succeeded in obtaining the main window. Data: ' + JSON.stringify(data));
        }).catch((err) => {
            console.error('Failed to obtain the main window. Cause: ' + JSON.stringify(err));
        });
    }
};

getMainWindowSync9+

getMainWindowSync(): Window

Obtains the main window of this window stage.

Model restriction: This API can be used only in the stage model.

System capability: SystemCapability.WindowManager.WindowManager.Core

Return value

Type Description
Window return the main window.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.
1300005 This window stage is abnormal.

Example

import UIAbility from '@ohos.app.ability.UIAbility';

class myAbility extends UIAbility {
    onWindowStageCreate(windowStage) {
        console.log('onWindowStageCreate');
        try {
            let windowClass = windowStage.getMainWindowSync();
        } catch (exception) {
            console.error('Failed to obtain the main window. Cause: ' + JSON.stringify(exception));
        };
    }
};

createSubWindow9+

createSubWindow(name: string, callback: AsyncCallback<Window>): void

Creates a subwindow for this window stage. This API uses an asynchronous callback to return the result.

Model restriction: This API can be used only in the stage model.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
name string Yes Name of the subwindow.
callback AsyncCallback<Window> Yes Callback used to return the subwindow.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.
1300005 This window stage is abnormal.

Example

import UIAbility from '@ohos.app.ability.UIAbility';

class myAbility extends UIAbility {
    onWindowStageCreate(windowStage) {
        console.log('onWindowStageCreate');
        let windowClass = null;
        try {
            windowStage.createSubWindow('mySubWindow', (err, data) => {
                if (err.code) {
                    console.error('Failed to create the subwindow. Cause: ' + JSON.stringify(err));
                    return;
                }
                windowClass = data;
                console.info('Succeeded in creating the subwindow. Data: ' + JSON.stringify(data));
                windowClass.resetSize(500, 1000);
            });
        } catch (exception) {
            console.error('Failed to create the subwindow. Cause: ' + JSON.stringify(exception));
        };
    }
};

createSubWindow9+

createSubWindow(name: string): Promise<Window>

Creates a subwindow for this window stage. This API uses a promise to return the result.

Model restriction: This API can be used only in the stage model.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
name string Yes Name of the subwindow.

Return value

Type Description
Promise<Window> Promise used to return the subwindow.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.
1300005 This window stage is abnormal.

Example

import UIAbility from '@ohos.app.ability.UIAbility';

class myAbility extends UIAbility {
    onWindowStageCreate(windowStage) {
        console.log('onWindowStageCreate');
        let windowClass = null;
        try {
            let promise = windowStage.createSubWindow('mySubWindow');
            promise.then((data) => {
                windowClass = data;
                console.info('Succeeded in creating the subwindow. Data: ' + JSON.stringify(data));
            }).catch((err) => {
                console.error('Failed to create the subwindow. Cause: ' + JSON.stringify(err));
            });
        } catch (exception) {
            console.error('Failed to create the subwindow. Cause: ' + JSON.stringify(exception));
        };
    }
};

getSubWindow9+

getSubWindow(callback: AsyncCallback<Array<Window>>): void

Obtains all the subwindows of this window stage. This API uses an asynchronous callback to return the result.

Model restriction: This API can be used only in the stage model.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
callback AsyncCallback<Array<Window>> Yes Callback used to return all the subwindows.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300005 This window stage is abnormal.

Example

import UIAbility from '@ohos.app.ability.UIAbility';

class myAbility extends UIAbility {
    onWindowStageCreate(windowStage) {
        console.log('onWindowStageCreate');
        let windowClass = null;
        windowStage.getSubWindow((err, data) => {
            if (err.code) {
                console.error('Failed to obtain the subwindow. Cause: ' + JSON.stringify(err));
                return;
            }
            windowClass = data;
            console.info('Succeeded in obtaining the subwindow. Data: ' + JSON.stringify(data));
        });
    }
};

getSubWindow9+

getSubWindow(): Promise<Array<Window>>

Obtains all the subwindows of this window stage. This API uses a promise to return the result.

Model restriction: This API can be used only in the stage model.

System capability: SystemCapability.WindowManager.WindowManager.Core

Return value

Type Description
Promise<Array<Window>> Promise used to return all the subwindows.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300005 This window stage is abnormal.

Example

import UIAbility from '@ohos.app.ability.UIAbility';

class myAbility extends UIAbility {
    onWindowStageCreate(windowStage) {
        console.log('onWindowStageCreate');
        let windowClass = null;
        let promise = windowStage.getSubWindow();
        promise.then((data) => {
            windowClass = data;
            console.info('Succeeded in obtaining the subwindow. Data: ' + JSON.stringify(data));
        }).catch((err) => {
            console.error('Failed to obtain the subwindow. Cause: ' + JSON.stringify(err));
        })
    }
};

loadContent9+

loadContent(path: string, storage: LocalStorage, callback: AsyncCallback<void>): void

Loads content from a page associated with a local storage to the main window in this window stage. This API uses an asynchronous callback to return the result.

Model restriction: This API can be used only in the stage model.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
path string Yes Path of the page from which the content will be loaded.
storage LocalStorage Yes A storage unit, which provides storage for variable state properties and non-variable state properties of an application.
callback AsyncCallback<void> Yes Callback used to return the result.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.
1300005 This window stage is abnormal.

Example

import UIAbility from '@ohos.app.ability.UIAbility';

class myAbility extends UIAbility {
    storage : LocalStorage
    onWindowStageCreate(windowStage) {
        this.storage = new LocalStorage();
        this.storage.setOrCreate('storageSimpleProp',121);
        console.log('onWindowStageCreate');
        try {
            windowStage.loadContent('pages/page2',this.storage,(err) => {
                if (err.code) {
                    console.error('Failed to load the content. Cause:' + JSON.stringify(err));
                    return;
                }
                console.info('Succeeded in loading the content.');
            });
        } catch (exception) {
            console.error('Failed to load the content. Cause:' + JSON.stringify(exception));
        };
    }
};

loadContent9+

loadContent(path: string, storage?: LocalStorage): Promise<void>

Loads content from a page associated with a local storage to the main window in this window stage. This API uses a promise to return the result.

Model restriction: This API can be used only in the stage model.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
path string Yes Path of the page from which the content will be loaded.
storage LocalStorage No A storage unit, which provides storage for variable state properties and non-variable state properties of an application.

Return value

Type Description
Promise<void> Promise that returns no value.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.
1300005 This window stage is abnormal.

Example

import UIAbility from '@ohos.app.ability.UIAbility';

class myAbility extends UIAbility {
    storage : LocalStorage
    onWindowStageCreate(windowStage) {
        this.storage = new LocalStorage();
        this.storage.setOrCreate('storageSimpleProp',121);
        console.log('onWindowStageCreate');
        try {
            let promise = windowStage.loadContent('pages/page2',this.storage);
            promise.then(() => {
                console.info('Succeeded in loading the content.');
            }).catch((err) => {
                console.error('Failed to load the content. Cause:' + JSON.stringify(err));
            });
        } catch (exception) {
            console.error('Failed to load the content. Cause:' + JSON.stringify(exception));
        };
    }
};

loadContent9+

loadContent(path: string, callback: AsyncCallback<void>): void

Loads content from a page to this window stage. This API uses an asynchronous callback to return the result.

Model restriction: This API can be used only in the stage model.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
path string Yes Path of the page from which the content will be loaded.
callback AsyncCallback<void> Yes Callback used to return the result.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.
1300005 This window stage is abnormal.

Example

import UIAbility from '@ohos.app.ability.UIAbility';

class myAbility extends UIAbility {
    onWindowStageCreate(windowStage) {
        console.log('onWindowStageCreate');
        try {
            windowStage.loadContent('pages/page2', (err) => {
                if (err.code) {
                    console.error('Failed to load the content. Cause:' + JSON.stringify(err));
                    return;
                }
                console.info('Succeeded in loading the content.');
            });
        } catch (exception) {
            console.error('Failed to load the content. Cause:' + JSON.stringify(exception));
        };
    }
};

on('windowStageEvent')9+

on(eventType: 'windowStageEvent', callback: Callback<WindowStageEventType>): void

Enables listening for window stage lifecycle changes.

Model restriction: This API can be used only in the stage model.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
type string Yes Event type. The value is fixed at 'windowStageEvent', indicating the window stage lifecycle change event.
callback Callback<WindowStageEventType> Yes Callback used to return the window stage lifecycle state.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.
1300005 This window stage is abnormal.

Example

import UIAbility from '@ohos.app.ability.UIAbility';

class myAbility extends UIAbility {
    onWindowStageCreate(windowStage) {
        console.log('onWindowStageCreate');
        try {
            windowStage.on('windowStageEvent', (data) => {
                console.info('Succeeded in enabling the listener for window stage event changes. Data: ' +
                    JSON.stringify(data));
            });
        } catch (exception) {
            console.error('Failed to enable the listener for window stage event changes. Cause:' +
                JSON.stringify(exception));
        };
    }
};

off('windowStageEvent')9+

off(eventType: 'windowStageEvent', callback?: Callback<WindowStageEventType>): void

Disables listening for window stage lifecycle changes.

Model restriction: This API can be used only in the stage model.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
type string Yes Event type. The value is fixed at 'windowStageEvent', indicating the window stage lifecycle change event.
callback Callback<WindowStageEventType> No Callback used to return the window stage lifecycle state.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.
1300005 This window stage is abnormal.

Example

import UIAbility from '@ohos.app.ability.UIAbility';

class myAbility extends UIAbility {
    onWindowStageCreate(windowStage) {
        console.log('onWindowStageCreate');
        try {
            windowStage.off('windowStageEvent');
        } catch (exception) {
            console.error('Failed to disable the listener for window stage event changes. Cause:' +
                JSON.stringify(exception));
        };
    }
};

disableWindowDecor()9+

disableWindowDecor(): void

Disables window decorators.

Model restriction: This API can be used only in the stage model.

System API: This is a system API.

System capability: SystemCapability.WindowManager.WindowManager.Core

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.
1300005 This window stage is abnormal.

Example

import UIAbility from '@ohos.app.ability.UIAbility';

class myAbility extends UIAbility {
    onWindowStageCreate(windowStage) {
        console.log('disableWindowDecor');
        windowStage.disableWindowDecor();
    }
};

setShowOnLockScreen()9+

setShowOnLockScreen(showOnLockScreen: boolean): void

Sets whether to display the window of the application on the lock screen.

System API: This is a system API.

Model restriction: This API can be used only in the stage model.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
showOnLockScreen boolean Yes Whether to display the window on the lock screen. The value true means to display the window on the lock screen, and false means the opposite.

Error codes

For details about the error codes, see Window Error Codes.

ID Error Message
1300002 This window state is abnormal.
1300005 This window stage is abnormal.

Example

import UIAbility from '@ohos.app.ability.UIAbility';

class myAbility extends UIAbility {
    onWindowStageCreate(windowStage) {
        console.log('onWindowStageCreate');
        try {
            windowStage.setShowOnLockScreen(true);
        } catch (exception) {
            console.error('Failed to show on lockscreen. Cause:' + JSON.stringify(exception));
        };
    }
};

TransitionContext9+

Provides the context for the transition animation.

Attributes

System API: This is a system API.

System capability: SystemCapability.WindowManager.WindowManager.Core

Name Type Readable Writable Description
toWindow9+ Window Yes Yes Target window to display the animation.

completeTransition9+

completeTransition(isCompleted: boolean): void

Completes the transition. This API can be called only after animateTo() is executed.

System API: This is a system API.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
isCompleted boolean Yes Whether the transition is complete. The value true means that the transition is complete, and false means the opposite.

Example

let controller = windowClass.getTransitionController();
controller.animationForShown = (context : window.TransitionContext) => {
	let toWindow = context.toWindow;
 	animateTo({
    	duration: 1000, // Animation duration.
        tempo: 0.5, // Playback speed.
        curve: Curve.EaseInOut, // Animation curve.
        delay: 0, // Animation delay.
        iterations: 1, // Number of playback times.
        playMode: PlayMode.Normal // Animation playback mode.
      }, () => {
        let obj : window.TranslateOptions = {
          x : 100.0,
          y : 0.0,
          z : 0.0
        };
        toWindow.translate(obj);
        console.info('toWindow translate end');
      }
    );
    try {
        context.completeTransition(true)
    } catch (exception) {
        console.info('toWindow translate fail. Cause: ' + JSON.stringify(exception));
    }
    console.info('complete transition end');
};

TransitionController9+

Implements the transition animation controller.

animationForShown9+

animationForShown(context: TransitionContext): void

Customizes the animation for the scenario when the window is shown.

System API: This is a system API.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
context TransitionContext Yes Context of the transition animation.

Example

let controller = windowClass.getTransitionController();
controller.animationForShown = (context : window.TransitionContext) => {
	let toWindow = context.toWindow;
 	animateTo({
    	duration: 1000, // Animation duration.
        tempo: 0.5, // Playback speed.
        curve: Curve.EaseInOut, // Animation curve.
        delay: 0, // Animation delay.
        iterations: 1, // Number of playback times.
        playMode: PlayMode.Normal // Animation playback mode.
        onFinish: ()=> {
            context.completeTransition(true)
        }  
      }, () => {
        let obj : window.TranslateOptions = {
          x : 100.0,
          y : 0.0,
          z : 0.0
        };
        toWindow.translate(obj);
        console.info('toWindow translate end');
      }
    );
    console.info('complete transition end');
};

animationForHidden9+

animationForHidden(context: TransitionContext): void

Customizes the animation for the scenario when the window is hidden.

System API: This is a system API.

System capability: SystemCapability.WindowManager.WindowManager.Core

Parameters

Name Type Mandatory Description
context TransitionContext Yes Context of the transition animation.

Example

let controller = windowClass.getTransitionController();
controller.animationForHidden = (context : window.TransitionContext) => {
	let toWindow = context.toWindow;
 	animateTo({
    	duration: 1000, // Animation duration.
        tempo: 0.5, // Playback speed.
        curve: Curve.EaseInOut, // Animation curve.
        delay: 0, // Animation delay.
        iterations: 1, // Number of playback times.
        playMode: PlayMode.Normal // Animation playback mode.
        onFinish: ()=> {
            context.completeTransition(true)
        }  
      }, () => {
        let obj : window.TranslateOptions = {
          x : 100.0,
          y : 0.0,
          z : 0.0
        };
        toWindow.translate(obj);
        console.info('toWindow translate end');
      }
    )
    console.info('complete transition end');
};