@ohos.window (Window) (System API)
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: 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.
This topic describes only system APIs provided by the module. For details about its public APIs, see @ohos.window (Window).
Modules to Import
import window from '@ohos.window';
WindowType7+
Enumerates the window types.
System capability: SystemCapability.WindowManager.WindowManager.Core
Name | Value | Description |
---|---|---|
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_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_SCREENSHOT9+ | 17 | Screenshot window. Model restriction: This API can be used only in the stage model. System API: This is a system API. |
TYPE_SYSTEM_TOAST11+ | 18 | Toast displayed at the top. Model restriction: This API can be used only in the stage model. System API: This is a system API. |
TYPE_DIVIDER11+ | 19 | Divider. Model restriction: This API can be used only in the stage model. System API: This is a system API. |
TYPE_GLOBAL_SEARCH11+ | 20 | Window used for global search. Model restriction: This API can be used only in the stage model. System API: This is a system API. |
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. |
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 code 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. The value must be an integer. |
regionTint | Array<SystemBarRegionTint> | Yes | No | All system bar information that has been changed. |
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 value is a floating point number, and the default value is 1.0. |
y | number | No | Yes | Scale factor along the y-axis. The value is a floating point number, and the default value is 1.0. |
pivotX | number | No | Yes | X coordinate of the scale center. The value is a floating point number in the range [0.0, 1.0], and the default value is 0.5. |
pivotY | number | No | Yes | Y coordinate of the scale center. The value is a floating point number in the range [0.0, 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 value is a floating point number, and the default value is 0.0. |
y | number | No | Yes | Rotation angle around the y-axis. The value is a floating point number, and the default value is 0.0. |
z | number | No | Yes | Rotation angle around the z-axis. The value is a floating point number, and the default value is 0.0. |
pivotX | number | No | Yes | X coordinate of the rotation center. The value is a floating point number in the range [0.0, 1.0], and the default value is 0.5. |
pivotY | number | No | Yes | Y coordinate of the rotation center. The value is a floating point number in the range [0.0, 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 value is a floating point number, the default value is 0.0, and the unit is px. |
y | number | No | Yes | Distance to translate along the y-axis. The value is a floating point number, the default value is 0.0, and the unit is px. |
z | number | No | Yes | Distance to translate along the z-axis. The value is a floating point number, the default value is 0.0, and the unit is px. |
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. The value must be an integer. |
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'
import { BusinessError } from '@ohos.base';
let displayClass: display.Display | null = null;
try {
displayClass = display.getDefaultDisplaySync();
try {
window.minimizeAll(displayClass.id, (err: BusinessError) => {
const errCode: number = err.code;
if (errCode) {
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. The value must be an integer. |
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'
import { BusinessError } from '@ohos.base';
let displayClass: display.Display | null = null;
try {
displayClass = display.getDefaultDisplaySync();
try {
let promise = window.minimizeAll(displayClass.id);
promise.then(() => {
console.info('Succeeded in minimizing all windows.');
}).catch((err: BusinessError) => {
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
import { BusinessError } from '@ohos.base';
window.toggleShownStateForAllAppWindows((err: BusinessError) => {
const errCode: number = err.code;
if (errCode) {
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
import { BusinessError } from '@ohos.base';
let promise = window.toggleShownStateForAllAppWindows();
promise.then(() => {
console.info('Succeeded in toggling shown state for all app windows.');
}).catch((err: BusinessError) => {
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
import { BusinessError } from '@ohos.base';
try {
window.setWindowLayoutMode(window.WindowLayoutMode.WINDOW_LAYOUT_MODE_CASCADE, (err: BusinessError) => {
const errCode: number = err.code;
if (errCode) {
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
import { BusinessError } from '@ohos.base';
try {
let promise = window.setWindowLayoutMode(window.WindowLayoutMode.WINDOW_LAYOUT_MODE_CASCADE);
promise.then(() => {
console.info('Succeeded in setting window layout mode.');
}).catch((err: BusinessError) => {
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
Subscribes to the property change event 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
Unsubscribes from the property change event 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. If a value is passed in, the corresponding subscription is canceled. If no value is passed in, all subscriptions to the specified event are canceled. |
Example
try {
window.off('systemBarTintChange');
} catch (exception) {
console.error('Failed to disable the listener for systemBarTint changes. Cause: ' + JSON.stringify(exception));
}
window.on('gestureNavigationEnabledChange')10+
on(type: 'gestureNavigationEnabledChange', callback: Callback<boolean>): void
Subscribes to the gesture navigation status change event.
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 'gestureNavigationEnabledChange', indicating the gesture navigation status change event. |
callback | Callback<boolean> | Yes | Callback used to return the gesture navigation status. The value true means that the gesture navigation status is changed to enabled, and false means that the gesture navigation status is changed to disabled. |
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 {
window.on('gestureNavigationEnabledChange', (data) => {
console.info('Succeeded in enabling the listener for gesture navigation status changes. Data: ' + JSON.stringify(data));
});
} catch (exception) {
console.error('Failed to enable the listener for gesture navigation status changes. Cause: ' + JSON.stringify(exception));
}
window.off('gestureNavigationEnabledChange')10+
off(type: 'gestureNavigationEnabledChange', callback?: Callback<boolean>): void
Unsubscribes from the gesture navigation status change event.
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 'gestureNavigationEnabledChange', indicating the gesture navigation status change event. |
callback | Callback<boolean> | No | Callback function that has been used for the subscription. If a value is passed in, the corresponding subscription is canceled. If no value is passed in, all subscriptions to the specified event are canceled. |
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 {
window.off('gestureNavigationEnabledChange');
} catch (exception) {
console.error('Failed to disable the listener for gesture navigation status changes. Cause: ' + JSON.stringify(exception));
}
window.on('waterMarkFlagChange')10+
on(type: 'waterMarkFlagChange', callback: Callback<boolean>): void
Subscribes to the watermark status change event.
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 'waterMarkFlagChange', indicating the watermark status change event. |
callback | Callback<boolean> | Yes | Callback used to return the watermark status. The value true means that the watermark feature is enabled, and false means the opposite. |
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.on('waterMarkFlagChange', (data) => {
console.info('Succeeded in enabling the listener for watermark flag changes. Data: ' + JSON.stringify(data));
});
} catch (exception) {
console.error('Failed to enable the listener for watermark flag changes. Cause: ' + JSON.stringify(exception));
}
window.off('waterMarkFlagChange')10+
off(type: 'waterMarkFlagChange', callback?: Callback<boolean>): void
Unsubscribes from the watermark status change event.
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 'waterMarkFlagChange', indicating the watermark status change event. |
callback | Callback<boolean> | No | Callback function that has been used for the subscription. If a value is passed in, the corresponding subscription is canceled. If no value is passed in, all subscriptions to the specified event are canceled. |
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.off('waterMarkFlagChange');
} catch (exception) {
console.error('Failed to disable the listener for watermark flag changes. Cause: ' + JSON.stringify(exception));
}
window.setGestureNavigationEnabled10+
setGestureNavigationEnabled(enable: boolean, callback: AsyncCallback<void>): void
Enables or disables gesture navigation. 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 |
---|---|---|---|
enable | boolean | Yes | Whether to enable gesture navigation. The value true means to enable gesture navigation, 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
import { BusinessError } from '@ohos.base';
try {
window.setGestureNavigationEnabled(true, (err: BusinessError) => {
const errCode: number = err.code;
if (errCode) {
console.error('Failed to set gesture navigation enabled. Cause: ' + JSON.stringify(err));
return;
}
console.info('Succeeded in setting gesture navigation enabled.');
});
} catch (exception) {
console.error('Failed to set gesture navigation enabled. Cause: ' + JSON.stringify(exception));
}
window.setGestureNavigationEnabled10+
setGestureNavigationEnabled(enable: boolean): Promise<void>
Enables or disables gesture navigation. 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 |
---|---|---|---|
enable | boolean | Yes | Whether to enable gesture navigation. The value true means to enable gesture navigation, 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
import { BusinessError } from '@ohos.base';
try {
let promise = window.setGestureNavigationEnabled(true);
promise.then(() => {
console.info('Succeeded in setting gesture navigation enabled.');
}).catch((err: BusinessError) => {
console.error('Failed to set gesture navigation enabled. Cause: ' + JSON.stringify(err));
});
} catch (exception) {
console.error('Failed to set gesture navigation enabled. Cause: ' + JSON.stringify(exception));
}
window.setWaterMarkImage10+
setWaterMarkImage(pixelMap: image.PixelMap, enable: boolean, callback: AsyncCallback<void>): void
Sets the watermark image display status. 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 |
---|---|---|---|
pixelMap | image.PixelMap | Yes | Watermark image. |
enable | boolean | Yes | Whether to display the watermark image. The value true means to display the watermark image, 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 |
---|---|
1300003 | This window manager service works abnormally. |
Example
import image from '@ohos.multimedia.image';
import { BusinessError } from '@ohos.base';
let enable: boolean = true;
let color: ArrayBuffer = new ArrayBuffer(0);
let initializationOptions: image.InitializationOptions = {
size: {
height: 100,
width: 100
}
};
image.createPixelMap(color, initializationOptions).then((pixelMap: image.PixelMap) => {
console.info('Succeeded in creating pixelmap.');
try {
window.setWaterMarkImage(pixelMap, enable, (err: BusinessError) => {
const errCode: number = err.code;
if (errCode) {
console.error('Failed to show watermark image. Cause: ' + JSON.stringify(err));
return;
}
console.info('Succeeded in showing watermark image.');
});
} catch (exception) {
console.error('Failed to show watermark image. Cause: ' + JSON.stringify(exception));
}
}).catch((err: BusinessError) => {
console.error('Failed to create PixelMap. Cause: ' + JSON.stringify(err));
});
window.setWaterMarkImage10+
setWaterMarkImage(pixelMap: image.PixelMap, enable: boolean): Promise<void>
Sets the watermark image display status. 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 |
---|---|---|---|
pixelMap | image.PixelMap | Yes | Watermark image. |
enable | boolean | Yes | Whether to display the watermark image. The value true means to display the watermark image, 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 |
---|---|
1300003 | This window manager service works abnormally. |
Example
import image from '@ohos.multimedia.image';
import { BusinessError } from '@ohos.base';
let enable: boolean = true;
let color: ArrayBuffer = new ArrayBuffer(0);
let initializationOptions: image.InitializationOptions = {
size: {
height: 100,
width: 100
}
};
image.createPixelMap(color, initializationOptions).then((pixelMap: image.PixelMap) => {
console.info('Succeeded in creating pixelmap.');
try {
let promise = window.setWaterMarkImage(pixelMap, enable);
promise.then(() => {
console.info('Succeeded in showing watermark image.');
}).catch((err: BusinessError) => {
console.error('Failed to show watermark image. Cause: ' + JSON.stringify(err));
});
} catch (exception) {
console.error('Failed to show watermark image. Cause: ' + JSON.stringify(exception));
}
}).catch((err: BusinessError) => {
console.error('Failed to create PixelMap. Cause: ' + JSON.stringify(err));
});
Window
Represents a 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 (named windowClass in this example) 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
import { BusinessError } from '@ohos.base';
windowClass.hide((err: BusinessError) => {
const errCode: number = err.code;
if (errCode) {
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
import { BusinessError } from '@ohos.base';
let promise = windowClass.hide();
promise.then(() => {
console.info('Succeeded in hiding the window.');
}).catch((err: BusinessError) => {
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
import { BusinessError } from '@ohos.base';
windowClass.hideWithAnimation((err: BusinessError) => {
const errCode: number = err.code;
if (errCode) {
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
import { BusinessError } from '@ohos.base';
let promise = windowClass.hideWithAnimation();
promise.then(() => {
console.info('Succeeded in hiding the window with animation.');
}).catch((err: BusinessError) => {
console.error('Failed to hide the window with animation. 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
import { BusinessError } from '@ohos.base';
windowClass.showWithAnimation((err: BusinessError) => {
const errCode: number = err.code;
if (errCode) {
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
import { BusinessError } from '@ohos.base';
let promise = windowClass.showWithAnimation();
promise.then(() => {
console.info('Succeeded in showing the window with animation.');
}).catch((err: BusinessError) => {
console.error('Failed to show the window with animation. Cause: ' + JSON.stringify(err));
});
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
import { BusinessError } from '@ohos.base';
let mode = window.WindowMode.FULLSCREEN;
try {
windowClass.setWindowMode(mode, (err: BusinessError) => {
const errCode: number = err.code;
if (errCode) {
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
import { BusinessError } from '@ohos.base';
let mode = window.WindowMode.FULLSCREEN;
try {
let promise = windowClass.setWindowMode(mode);
promise.then(() => {
console.info('Succeeded in setting the window mode.');
}).catch((err: BusinessError) => {
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));
}
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';
import { BusinessError } from '@ohos.base';
class MyDeathRecipient {
onRemoteDied() {
console.log('server died');
}
}
class TestRemoteObject extends rpc.RemoteObject {
constructor(descriptor: string) {
super(descriptor);
}
addDeathRecipient(recipient: MyDeathRecipient, flags: number): boolean {
return true;
}
removeDeathRecipient(recipient: MyDeathRecipient, flags: number): boolean {
return true;
}
isObjectDead(): boolean {
return false;
}
}
let token: TestRemoteObject = new TestRemoteObject('testObject');
let windowClass: window.Window | undefined = undefined;
let config: window.Configuration = { name: "test", windowType: window.WindowType.TYPE_DIALOG, ctx: this.context };
try {
window.createWindow(config, (err: BusinessError, data) => {
let errCode: number = err.code;
if (errCode) {
console.error('Failed to create the window. Cause: ' + JSON.stringify(err));
return;
}
windowClass = data;
});
windowClass.bindDialogTarget(token, () => {
console.info('Dialog Window Need Destroy.');
}, (err: BusinessError) => {
let errCode: number = err.code;
if (errCode) {
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';
import { BusinessError } from '@ohos.base';
class MyDeathRecipient {
onRemoteDied() {
console.log('server died');
}
}
class TestRemoteObject extends rpc.RemoteObject {
constructor(descriptor: string) {
super(descriptor);
}
addDeathRecipient(recipient: MyDeathRecipient, flags: number): boolean {
return true;
}
removeDeathRecipient(recipient: MyDeathRecipient, flags: number): boolean {
return true;
}
isObjectDead(): boolean {
return false;
}
}
let token: TestRemoteObject = new TestRemoteObject('testObject');
let windowClass: window.Window | undefined = undefined;
let config: window.Configuration = {
name: "test",
windowType: window.WindowType.TYPE_DIALOG,
ctx: this.context
};
try {
window.createWindow(config, (err: BusinessError, data) => {
const errCode: number = err.code;
if (errCode) {
console.error('Failed to create the window. Cause: ' + JSON.stringify(err));
return;
}
windowClass = data;
});
let promise = windowClass.bindDialogTarget(token, () => {
console.info('Dialog Window Need Destroy.');
});
promise.then(() => {
console.info('Succeeded in binding dialog target.');
}).catch((err: BusinessError) => {
console.error('Failed to bind dialog target. Cause:' + JSON.stringify(err));
});
} catch (exception) {
console.error('Failed to bind dialog target. Cause:' + JSON.stringify(exception));
}
bindDialogTarget9+
bindDialogTarget(requestInfo: dialogRequest.RequestInfo, 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 |
---|---|---|---|
requestInfo | dialogRequest.RequestInfo | Yes | RequestInfo 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 ServiceExtensionAbility from '@ohos.app.ability.ServiceExtensionAbility';
import dialogRequest from '@ohos.app.ability.dialogRequest';
import Want from '@ohos.app.ability.Want';
import { BusinessError } from '@ohos.base';
export default class ServiceExtAbility extends ServiceExtensionAbility {
onRequest(want: Want, startId: number) {
console.info('onRequest');
let windowClass: window.Window | undefined = undefined;
let config: window.Configuration = {
name: "test", windowType: window.WindowType.TYPE_DIALOG, ctx: this.context
};
try {
window.createWindow(config, (err: BusinessError, data) => {
let errCode: number = err.code;
if (errCode) {
console.error('Failed to create the window. Cause: ' + JSON.stringify(err));
return;
}
windowClass = data;
});
let requestInfo = dialogRequest.getRequestInfo(want)
windowClass.bindDialogTarget(requestInfo, () => {
console.info('Dialog Window Need Destroy.');
}, (err: BusinessError) => {
let errCode: number = err.code;
if (errCode) {
console.error('Failed to bind dialog target. Cause:' + JSON.stringify(err));
return;
}
console.info('Succeeded in binding dialog target.');
});
} catch (err) {
console.error('Failed to bind dialog target. Cause:' + JSON.stringify(err))
}
}
}
bindDialogTarget9+
bindDialogTarget(requestInfo: dialogRequest.RequestInfo, 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 |
---|---|---|---|
requestInfo | dialogRequest.RequestInfo | Yes | RequestInfo 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 ServiceExtensionAbility from '@ohos.app.ability.ServiceExtensionAbility';
import dialogRequest from '@ohos.app.ability.dialogRequest';
import Want from '@ohos.app.ability.Want';
import { BusinessError } from '@ohos.base';
export default class ServiceExtAbility extends ServiceExtensionAbility {
onRequest(want: Want, startId: number) {
console.info('onRequest');
let windowClass: window.Window | undefined = undefined;
let config: window.Configuration = {
name: "test", windowType: window.WindowType.TYPE_DIALOG, ctx: this.context
};
try {
window.createWindow(config, (err: BusinessError, data) => {
const errCode: number = err.code;
if (errCode) {
console.error('Failed to create the window. Cause: ' + JSON.stringify(err));
return;
}
windowClass = data;
});
let requestInfo = dialogRequest.getRequestInfo(want)
let promise = windowClass.bindDialogTarget(requestInfo, () => {
console.info('Dialog Window Need Destroy.');
});
promise.then(() => {
console.info('Succeeded in binding dialog target.');
}).catch((err: BusinessError) => {
console.error('Failed to bind dialog target. Cause:' + JSON.stringify(err));
});
} catch (err) {
console.error('Failed to bind dialog target. Cause:' + JSON.stringify(err))
}
}
}
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: boolean = true;
try {
windowClass.setWakeUpScreen(wakeUp);
} catch (exception) {
console.error('Failed to wake up the screen. Cause: ' + JSON.stringify(exception));
}
setSnapshotSkip9+
setSnapshotSkip(isSkip: boolean): void
Sets whether to ignore this window during screen capturing or recording. This API is generally used in scenarios where screen capture or recording is disabled.
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: boolean = true;
try {
windowClass.setSnapshotSkip(isSkip);
} catch (exception) {
console.error('Failed to Skip. 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
import { BusinessError } from '@ohos.base';
let isForbidSplitMove: boolean = true;
try {
windowClass.setForbidSplitMove(isForbidSplitMove, (err: BusinessError) => {
const errCode: number = err.code;
if (errCode) {
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
import { BusinessError } from '@ohos.base';
let isForbidSplitMove: boolean = true;
try {
let promise = windowClass.setForbidSplitMove(isForbidSplitMove);
promise.then(() => {
console.info('Succeeded in forbidding window moving in split screen mode.');
}).catch((err: BusinessError) => {
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));
}
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. The value is a floating point number in the range [0.0, 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 px. |
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.
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 a floating point number greater than or equal to 0.0, in px. The value 0.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 a floating point number greater than or equal to 0.0, in px. The value 0.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 a floating point number greater than or equal to 0.0, in px. The value 0.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 px. The value is a floating point number. |
offsetY | number | No | Offset of the shadow along the y-axis, in px. The value is a floating point number. |
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 a floating point number greater than or equal to 0.0, in px. The value 0.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));
}
raiseToAppTop10+
raiseToAppTop(callback: AsyncCallback<void>): void
Raises the application subwindow to the top layer of the application. 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. |
1300009 | The parent window is invalid. |
Example
import { BusinessError } from '@ohos.base';
windowClass.raiseToAppTop((err: BusinessError) => {
const errCode: number = err.code;
if (errCode) {
console.error('Failed to raise the window to app top. Cause: ' + JSON.stringify(err));
return;
}
console.info('Succeeded in raising the window to app top.');
});
raiseToAppTop10+
raiseToAppTop(): Promise<void>
Raises the application subwindow to the top layer of the application. 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. |
1300009 | The parent window is invalid. |
Example
import { BusinessError } from '@ohos.base';
let promise = windowClass.raiseToAppTop();
promise.then(() => {
console.info('Succeeded in raising the window to app top.');
}).catch((err: BusinessError) => {
console.error('Failed to raise the window to app top. Cause: ' + JSON.stringify(err));
});
setWaterMarkFlag10+
setWaterMarkFlag(enable: boolean): Promise<void>
Adds or deletes the watermark flag for 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 |
---|---|---|---|
enable | boolean | Yes | Whether to add or delete the watermark flag to the window. The value true means to add the watermark flag and false means to delete the watermark flag. |
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. |
1300008 | The operation is on invalid display. |
Example
import { BusinessError } from '@ohos.base';
try {
let enable = true;
let promise = windowClass.setWaterMarkFlag(enable);
promise.then(() => {
console.info('Succeeded in setting water mark flag of window.');
}).catch((err: BusinessError) => {
console.error('Failed to set water mark flag of window. Cause:' + JSON.stringify(err));
});
} catch (exception) {
console.error('Failed to set water mark flag of window. Cause: ' + JSON.stringify(exception));
}
setWaterMarkFlag10+
setWaterMarkFlag(enable: boolean, callback: AsyncCallback<void>): void
Adds or deletes the watermark flag for 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 |
---|---|---|---|
enable | boolean | Yes | Whether to add or delete the flag. The value true means to add the flag and false means to delete the flag. |
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. |
1300008 | The operation is on invalid display. |
Example
import { BusinessError } from '@ohos.base';
try {
let enable: boolean = true;
windowClass.setWaterMarkFlag(enable, (err: BusinessError) => {
const errCode: number = err.code;
if (errCode) {
console.error('Failed to set water mark flag of window. Cause:' + JSON.stringify(err));
return;
}
console.info('Succeeded in setting water mark flag of window.');
});
} catch (exception) {
console.error('Failed to set water mark flag of window. Cause: ' + JSON.stringify(exception));
}
raiseAboveTarget10+
raiseAboveTarget(windowId: number, callback: AsyncCallback<void>): void
Raises a subwindow above a target subwindow. This API uses an asynchronous callback to return the result.
System API: This is a system API.
System capability: SystemCapability.Window.SessionManager
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
windowId | number | Yes | ID of the target subwindow, which is the value of properties.id in properties obtained through getWindowProperties. |
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. |
1300009 | The parent window is invalid. |
Example
// The windowClass must be obtained above the targetWindow.
let targetWindow: window.Window = windowClass;
let properties = targetWindow.getWindowProperties();
let targetId = properties.id;
windowClass.raiseAboveTarget(targetId, (err) => {
if (err.code) {
console.error('Failed to raise the subWindow to target subWindow top. Cause: ' + JSON.stringify(err));
return;
}
console.info('Succeeded in raising the subWindow to target subWindow top.');
});
raiseAboveTarget10+
raiseAboveTarget(windowId: number): Promise<void>
Raises a subwindow above a target subwindow. This API uses a promise to return the result.
System API: This is a system API.
System capability: SystemCapability.Window.SessionManager
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
windowId | number | Yes | ID of the target subwindow, which is the value of properties.id in properties obtained through getWindowProperties. |
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. |
1300009 | The parent window is invalid. |
Example
// The windowClass must be obtained above the targetWindow.
let targetWindow: window.Window = windowClass;
let properties = targetWindow.getWindowProperties();
let targetId = properties.id;
let promise = windowClass.raiseAboveTarget(targetId);
promise.then(()=> {
console.info('Succeeded in raising the subWindow to target subWindow top.');
}).catch((err)=>{
console.error('Failed to raise the subWindow to target subWindow top. Cause: ' + JSON.stringify(err));
});
setRaiseByClickEnabled10+
setRaiseByClickEnabled(enable: boolean, callback: AsyncCallback<void>): void
Sets whether to enable a subwindow to raise itself by click. This API uses an asynchronous callback to return the result.
Generally, when a user clicks a subwindow, the subwindow is displayed on the top. If the enable parameter is set to false, the subwindow is not displayed on the top when being clicked.
System API: This is a system API.
System capability: SystemCapability.Window.SessionManager
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
enable | boolean | Yes | Whether to enable a subwindow to raise itself by click. The value true means to enable the subwindow to raise itself by click, 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. |
1300004 | Unauthorized operation. |
1300009 | The parent window is invalid. |
Example
let enabled = false;
windowClass.setRaiseByClickEnabled(enabled, (err) => {
if (err.code) {
console.error('Failed to disable the raise-by-click function. Cause: ' + JSON.stringify(err));
return;
}
console.info('Succeeded in disabling the raise-by-click function.');
});
setRaiseByClickEnabled10+
setRaiseByClickEnabled(enable: boolean): Promise<void>
Sets whether to enable a subwindow to raise itself by click. This API uses a promise to return the result.
Generally, when a user clicks a subwindow, the subwindow is displayed on the top. If the enable parameter is set to false, the subwindow is not displayed on the top when being clicked.
System API: This is a system API.
System capability: SystemCapability.Window.SessionManager
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
enable | boolean | Yes | Whether to enable a subwindow to raise itself by click. The value true means to enable the subwindow to raise itself by click, 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. |
1300004 | Unauthorized operation. |
1300009 | The parent window is invalid. |
Example
let enabled = false;
let promise = windowClass.setRaiseByClickEnabled(enabled);
promise.then(()=> {
console.info('Succeeded in disabling the raise-by-click function.');
}).catch((err)=>{
console.error('Failed to disable the raise-by-click function. Cause: ' + JSON.stringify(err));
});
setResizeByDragEnabled10+
setResizeByDragEnabled(enable: boolean, callback: AsyncCallback<void>): void
Sets whether to enable the main window to resize itself by dragging. This API uses an asynchronous callback to return the result.
System API: This is a system API.
System capability: SystemCapability.Window.SessionManager
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
enable | boolean | Yes | Whether to enable the main window to resize itself by dragging. The value true means to enable the main window to resize itself by dragging, 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
import UIAbility from '@ohos.app.ability.UIAbility';
export default class EntryAbility extends UIAbility {
onWindowStageCreate(windowStage) {
// Load content for the main window.
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.');
});
// Obtain the main window.
let mainWindow: window.Window | undefined = undefined;
windowStage.getMainWindow((err, data) => {
if (err.code) {
console.error('Failed to obtain the main window. Cause: ' + JSON.stringify(err));
return;
}
mainWindow = data;
console.info('Succeeded in obtaining the main window. Data: ' + JSON.stringify(data));
let enabled = false;
// Call setResizeByDragEnabled.
mainWindow.setResizeByDragEnabled(enabled, (err) => {
if (err.code) {
console.error('Failed to set the function of disabling the resize by dragg window. Cause: ' + JSON.stringify(err));
return;
}
console.info('Succeeded in setting the function of disabling the resize by dragg window.');
});
})
}
};
setResizeByDragEnabled10+
setResizeByDragEnabled(enable: boolean): Promise<void>
Sets whether to enable the main window to resize itself by dragging. This API uses a promise to return the result.
System API: This is a system API.
System capability: SystemCapability.Window.SessionManager
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
enable | boolean | Yes | Whether to enable the main window to resize itself by dragging. The value true means to enable the main window to resize itself by dragging, 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
import UIAbility from '@ohos.app.ability.UIAbility';
export default class EntryAbility extends UIAbility {
onWindowStageCreate(windowStage) {
// Load content for the main window.
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.');
});
// Obtain the main window.
let mainWindow: window.Window | undefined = undefined;
windowStage.getMainWindow((err, data) => {
if (err.code) {
console.error('Failed to obtain the main window. Cause: ' + JSON.stringify(err));
return;
}
mainWindow = data;
console.info('Succeeded in obtaining the main window. Data: ' + JSON.stringify(data));
let enabled = false;
// Promise object of the setResizeByDragEnabled API.
let promise = mainWindow.setResizeByDragEnabled(enabled);
promise.then(()=> {
console.info('Succeeded in setting the function of disabling the resize by dragg window.');
}).catch((err)=>{
console.error('Failed to set the function of disabling the resize by dragg window. Cause: ' + JSON.stringify(err));
});
})
}
};
hideNonSystemFloatingWindows11+
hideNonSystemFloatingWindows(shouldHide: boolean, callback: AsyncCallback<void>): void
Sets whether to hide non-system floating windows. This API uses an asynchronous callback to return the result.
A non-system floating window is a floating window created by a non-system application. By default, the main window of a system application can be displayed together with a non-system floating window. This means that the main window may be blocked by an upper-layer non-system floating window. If the shouldHide parameter is set to true, all non-system floating windows are hidden, so that the main window will never be blocked by a non-system floating window.
System API: This is a system API.
System capability: SystemCapability.Window.SessionManager
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
shouldHide | boolean | Yes | Whether to hide non-system floating windows. The value true means to hide the floating windows, 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. |
1300004 | Unauthorized operation. |
Example
import UIAbility from '@ohos.app.ability.UIAbility';
import window from '@ohos.window';
export default class EntryAbility extends UIAbility {
onWindowStageCreate(windowStage: window.WindowStage) {
// Load the page corresponding to the main window.
windowStage.loadContent('pages/Index', (err) => {
if (err.code) {
console.error('Failed to load the content. Cause:' + JSON.stringify(err));
return;
}
console.info('Succeeded in loading the content.');
});
// Obtain the main window.
let mainWindow = null;
windowStage.getMainWindow((err, data) => {
if (err.code) {
console.error('Failed to obtain the main window. Cause: ' + JSON.stringify(err));
return;
}
mainWindow = data;
console.info('Succeeded in obtaining the main window. Data: ' + JSON.stringify(data));
let shouldHide = true;
// Call hideNonSystemFloatingWindows with the callback parameter.
mainWindow.hideNonSystemFloatingWindows(shouldHide, (err) => {
if (err.code) {
console.error('Failed to hide the non-system floating windows. Cause: ' + JSON.stringify(err));
return;
}
console.info('Succeeded in hiding the non-system floating windows.');
});
})
}
}
hideNonSystemFloatingWindows11+
hideNonSystemFloatingWindows(shouldHide: boolean): Promise<void>
Sets whether to hide non-system floating windows. This API uses an asynchronous callback to return the result.
A non-system floating window is a floating window created by a non-system application. By default, the main window of a system application can be displayed together with a non-system floating window. This means that the main window may be blocked by an upper-layer non-system floating window. If the shouldHide parameter is set to true, all non-system floating windows are hidden, so that the main window will never be blocked by a non-system floating window.
System API: This is a system API.
System capability: SystemCapability.Window.SessionManager
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
shouldHide | boolean | Yes | Whether to hide non-system floating windows. The value true means to hide the floating windows, 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. |
1300004 | Unauthorized operation. |
Example
import UIAbility from '@ohos.app.ability.UIAbility';
import window from '@ohos.window';
export default class EntryAbility extends UIAbility {
onWindowStageCreate(windowStage: window.WindowStage) {
// Load the page corresponding to the main window.
windowStage.loadContent('pages/Index', (err) => {
if (err.code) {
console.error('Failed to load the content. Cause:' + JSON.stringify(err));
return;
}
console.info('Succeeded in loading the content.');
});
// Obtain the main window.
let mainWindow = null;
windowStage.getMainWindow((err, data) => {
if (err.code) {
console.error('Failed to obtain the main window. Cause: ' + JSON.stringify(err));
return;
}
mainWindow = data;
console.info('Succeeded in obtaining the main window. Data: ' + JSON.stringify(data));
let shouldHide = true;
// Call hideNonSystemFloatingWindows to obtain a promise object.
let promise = mainWindow.hideNonSystemFloatingWindows(shouldHide);
promise.then(()=> {
console.info('Succeeded in hiding the non-system floating windows.');
}).catch((err)=>{
console.error('Failed to hide the non-system floating windows. Cause: ' + JSON.stringify(err));
});
})
}
}
setSingleFrameComposerEnabled11+
setSingleFrameComposerEnabled(enable: boolean): Promise<void>
Enables or disables the single-frame composer. This API uses a promise to return the result.
The single-frame composer is mainly used in scenarios that requires extremely low interaction latency. It reduces the screen display latency of the rendering node.
System API: This is a system API.
System capability: SystemCapability.Window.SessionManager
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
enable | boolean | Yes | Whether to enable the single-frame composer. The value true means to enable the single-frame composer, and false means to disable it. |
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
import { BusinessError } from '@ohos.base';
let enable = true;
let promise = windowClass.setSingleFrameComposerEnabled(enable);
promise.then(()=> {
console.info('Succeeded in enabling the single-frame-composer function.');
}).catch((err: BusinessError)=>{
console.error('Failed to enable the single-frame-composer function. code:${err.code}, message:${err.message}.');
});
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
import { BusinessError } from '@ohos.base';
let type = window.WindowType.TYPE_SYSTEM_ALERT;
windowClass.setWindowType(type, (err: BusinessError) => {
const errCode: number = err.code;
if (errCode) {
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
import { BusinessError } from '@ohos.base';
let type = window.WindowType.TYPE_SYSTEM_ALERT;
let promise = windowClass.setWindowType(type);
promise.then(() => {
console.info('Succeeded in setting the window type.');
}).catch((err: BusinessError) => {
console.error('Failed to set the window type. Cause: ' + JSON.stringify(err));
});
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.
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';
import window from '@ohos.window';
export default class EntryAbility extends UIAbility {
// ...
onWindowStageCreate(windowStage: window.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';
import window from '@ohos.window';
export default class EntryAbility extends UIAbility {
// ...
onWindowStageCreate(windowStage: window.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.
System API: This is a system API.
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
(context: window.TransitionContext) => {
let toWindow: window.Window = 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. Before calling any API, you must create a system window. For details, see the sample code.
System API: This is a system API.
Example
import { BusinessError } from '@ohos.base';
let windowClass: window.Window | undefined = undefined;
let config: window.Configuration = {
name: "systemTypeWindow",
windowType: window.WindowType.TYPE_PANEL, // Select a system window type as required.
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: BusinessError) => {
console.error('Failed to create the Window. Cause:' + JSON.stringify(err));
});
} catch (exception) {
console.error('Failed to create the window. Cause: ' + JSON.stringify(exception));
}
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
// xxx.ts
export class AnimationConfig {
private animationForShownCallFunc_: Function = undefined;
ShowWindowWithCustomAnimation(windowClass: window.Window, callback) {
if (!windowClass) {
console.error('windowClass is undefined');
return false;
}
this.animationForShownCallFunc_ = callback;
let controller: window.TransitionController = windowClass.getTransitionController();
controller.animationForShown = (context : window.TransitionContext)=> {
this.animationForShownCallFunc_(context);
};
windowClass.showWithAnimation(()=>{
console.info('Show with animation success');
})
}
}
// xxx.ets
let animationConfig = new AnimationConfig();
let systemTypeWindow = window.findWindow("systemTypeWindow"); // Obtain a system window.
try {
animationConfig?.ShowWindowWithCustomAnimation(systemTypeWindow, (context : window.TransitionContext)=>{
console.info('complete transition end');
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: () => {
console.info('onFinish in animation');
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 in animation');
});
console.info('complete transition end');
});
} catch (error) {
console.error('ShowWindowWithCustomAnimation err : ' + JSON.stringify(error));
}
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
// xxx.ts
export class AnimationConfig {
private animationForHiddenCallFunc_: Function = undefined;
HideWindowWithCustomAnimation(windowClass: window.Window, callback) {
if (!windowClass) {
console.error('windowClass is undefined');
return false;
}
this.animationForHiddenCallFunc_ = callback;
let controller: window.TransitionController = windowClass.getTransitionController();
controller.animationForHidden = (context : window.TransitionContext)=> {
this.animationForHiddenCallFunc_(context);
};
windowClass.hideWithAnimation(()=>{
console.info('hide with animation success');
})
}
}
// xxx.ets
let animationConfig = new AnimationConfig();
let systemTypeWindow = window.findWindow("systemTypeWindow"); // Obtain a system window.
try {
animationConfig?.HideWindowWithCustomAnimation(systemTypeWindow, (context : window.TransitionContext)=>{
console.info('complete transition end');
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: () => {
console.info('onFinish in animation');
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 in animation');
});
console.info('complete transition end');
});
} catch (error) {
console.error('HideWindowWithCustomAnimation err : ' + JSON.stringify(error));
}