window-manager.md 2.5 KB
Newer Older
W
wusongqing 已提交
1 2 3 4
# Window Manager

## Introduction

W
wusongqing 已提交
5
The Window Manager subsystem provides basic capabilities of window and display management. It is the basis for UI display. The following figure shows the architecture of the Window Manager subsystem.
W
wusongqing 已提交
6

W
wusongqing 已提交
7
**Figure 1** Architecture of the Window Manager subsystem
W
wusongqing 已提交
8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27

![WindowManager-subsystem-architecture](./figures/WindowManager.png)

- **Window Manager Client**

    Provides window object abstraction and window management interfaces, and connects to the ability and UI framework.

- **Display Manager Client**

    Provides display information abstraction and display management interfaces.

- **Window Manager Server**

    Provides capabilities such as window layout, Z-order control, window tree structure, window dragging, and window snapshot, and offers the window layout and focus window for multimodal input.

- **Display Manager Server**

    Provides display information, screenshot, screen on/off, and brightness processing control, and processes the mapping between the display and screen.

## Directory Structure
W
wusongqing 已提交
28 29

```text
W
wusongqing 已提交
30 31 32 33 34 35 36 37 38 39 40 41 42 43 44
foundation/windowmanager/
├── dm                      # Stores Display Manager Client implementation code
├── dmserver                # Stores Display Manager Server implementation code
├── interfaces              # Stores external APIs
│   ├── innerkits           # Stores native APIs
│   └── kits                # Stores JS APIs and native APIs
├── resources               # Stores resource files used by the framework
├── sa_profile              # Stores system service configuration files
├── snapshot                # Stores implementation code of the screenshot command line tool
├── utils                   # Stores tools
├── wm                      # Stores Window Manager Client implementation code
├── wmserver                # Stores Window Manager Server implementation code
```

## Constraints
W
wusongqing 已提交
45

W
wusongqing 已提交
46
- Programming language version
W
wusongqing 已提交
47
  - C++ 11 or later
W
wusongqing 已提交
48 49 50 51 52 53 54

## Available APIs

- [Window](https://gitee.com/openharmony/docs/blob/master/en/application-dev/reference/apis/js-apis-window.md) 
- [Display](https://gitee.com/openharmony/docs/blob/master/en/application-dev/reference/apis/js-apis-display.md)

## Repositories Involved
W
wusongqing 已提交
55

Mr-YX's avatar
Mr-YX 已提交
56 57 58 59
- [graphic_standard](https://gitee.com/openharmony/graphic_standard)
- [ace_ace_engine](https://gitee.com/openharmony/ace_ace_engine)
- [aafwk_standard](https://gitee.com/openharmony/aafwk_standard)
- [multimodalinput_input](https://gitee.com/openharmony/multimodalinput_input)