1 /*
2  * Copyright (c) 2023 Huawei Device Co., Ltd.
3  * Licensed under the Apache License, Version 2.0 (the "License");
4  * you may not use this file except in compliance with the License.
5  * You may obtain a copy of the License at
6  *
7  *     http://www.apache.org/licenses/LICENSE-2.0
8  *
9  * Unless required by applicable law or agreed to in writing, software
10  * distributed under the License is distributed on an "AS IS" BASIS,
11  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12  * See the License for the specific language governing permissions and
13  * limitations under the License.
14  */
15 
16 #ifndef OHOS_ROSEN_WS_COMMON_INNER_H
17 #define OHOS_ROSEN_WS_COMMON_INNER_H
18 
19 #include <cfloat>
20 #include <cinttypes>
21 #include <unordered_set>
22 #include "ws_common.h"
23 
24 namespace OHOS {
25 namespace Rosen {
26 enum class WSPropertyChangeAction : uint32_t {
27     ACTION_UPDATE_RECT = 1,
28     ACTION_UPDATE_MODE = 1 << 1,
29     ACTION_UPDATE_FLAGS = 1 << 2,
30     ACTION_UPDATE_OTHER_PROPS = 1 << 3,
31     ACTION_UPDATE_FOCUSABLE = 1 << 4,
32     ACTION_UPDATE_TOUCHABLE = 1 << 5,
33     ACTION_UPDATE_CALLING_WINDOW = 1 << 6,
34     ACTION_UPDATE_ORIENTATION = 1 << 7,
35     ACTION_UPDATE_TURN_SCREEN_ON = 1 << 8,
36     ACTION_UPDATE_KEEP_SCREEN_ON = 1 << 9,
37     ACTION_UPDATE_SET_BRIGHTNESS = 1 << 10,
38     ACTION_UPDATE_MODE_SUPPORT_INFO = 1 << 11,
39     ACTION_UPDATE_TOUCH_HOT_AREA = 1 << 12,
40     ACTION_UPDATE_TRANSFORM_PROPERTY = 1 << 13,
41     ACTION_UPDATE_ANIMATION_FLAG = 1 << 14,
42     ACTION_UPDATE_PRIVACY_MODE = 1 << 15,
43     ACTION_UPDATE_ASPECT_RATIO = 1 << 16,
44     ACTION_UPDATE_MAXIMIZE_STATE = 1 << 17,
45     ACTION_UPDATE_DECOR_ENABLE = 1 << 18,
46     ACTION_UPDATE_WINDOW_LIMITS = 1 << 19,
47     ACTION_UPDATE_DRAGENABLED = 1 << 20,
48     ACTION_UPDATE_RAISEENABLED = 1 << 21,
49     ACTION_UPDATE_HIDE_NON_SYSTEM_FLOATING_WINDOWS = 1 << 22,
50     ACTION_UPDATE_SYSTEM_PRIVACY_MODE = 1 << 23,
51     ACTION_UPDATE_STATUS_PROPS = 1 << 24,
52     ACTION_UPDATE_NAVIGATION_PROPS = 1 << 25,
53     ACTION_UPDATE_NAVIGATION_INDICATOR_PROPS = 1 << 26,
54     ACTION_UPDATE_TEXTFIELD_AVOID_INFO = 1 << 27,
55     ACTION_UPDATE_WINDOW_MASK = 1 << 28,
56     ACTION_UPDATE_TOPMOST = 1 << 29,
57     ACTION_UPDATE_SNAPSHOT_SKIP = 1 << 30,
58     ACTION_UPDATE_MAIN_WINDOW_TOPMOST = 1 << 31,
59 };
60 
61 enum class AreaType : uint32_t {
62     UNDEFINED = 0,
63     LEFT = 1 << 0,
64     TOP = 1 << 1,
65     RIGHT = 1 << 2,
66     BOTTOM = 1 << 3,
67     LEFT_TOP = LEFT | TOP,
68     RIGHT_TOP = RIGHT | TOP,
69     RIGHT_BOTTOM = RIGHT | BOTTOM,
70     LEFT_BOTTOM = LEFT | BOTTOM,
71 };
72 }
73 }
74 #endif // OHOS_ROSEN_WS_COMMON_INNER_H