• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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 FRAMEWORKS_BRIDGE_DECLARATIVE_FRONTEND_ENGINE_JSI_NATIVEMODULE_ARKTS_NATIVE_RICH_EDITOR_BRIDGE_H
17 #define FRAMEWORKS_BRIDGE_DECLARATIVE_FRONTEND_ENGINE_JSI_NATIVEMODULE_ARKTS_NATIVE_RICH_EDITOR_BRIDGE_H
18 
19 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_api_bridge.h"
20 
21 namespace OHOS::Ace::NG {
22 class RichEditorBridge {
23 public:
24     static ArkUINativeModuleValue SetEnableDataDetector(ArkUIRuntimeCallInfo* runtimeCallInfo);
25     static ArkUINativeModuleValue ResetEnableDataDetector(ArkUIRuntimeCallInfo* runtimeCallInfo);
26     static ArkUINativeModuleValue SetDataDetectorConfig(ArkUIRuntimeCallInfo* runtimeCallInfo);
27     static ArkUINativeModuleValue ResetDataDetectorConfig(ArkUIRuntimeCallInfo* runtimeCallInfo);
28     static ArkUINativeModuleValue SetOnIMEInputComplete(ArkUIRuntimeCallInfo* runtimeCallInfo);
29     static ArkUINativeModuleValue ResetOnIMEInputComplete(ArkUIRuntimeCallInfo* runtimeCallInfo);
30 
31     static ArkUINativeModuleValue SetOnWillChange(ArkUIRuntimeCallInfo* runtimeCallInfo);
32     static ArkUINativeModuleValue ResetOnWillChange(ArkUIRuntimeCallInfo* runtimeCallInfo);
33     static ArkUINativeModuleValue SetOnDidChange(ArkUIRuntimeCallInfo* runtimeCallInfo);
34     static ArkUINativeModuleValue ResetOnDidChange(ArkUIRuntimeCallInfo* runtimeCallInfo);
35     static ArkUINativeModuleValue SetPlaceholder(ArkUIRuntimeCallInfo* runtimeCallInfo);
36     static ArkUINativeModuleValue ResetPlaceholder(ArkUIRuntimeCallInfo* runtimeCallInfo);
37     static ArkUINativeModuleValue SetAboutToDelete(ArkUIRuntimeCallInfo* runtimeCallInfo);
38     static ArkUINativeModuleValue ResetAboutToDelete(ArkUIRuntimeCallInfo* runtimeCallInfo);
39 
40     static ArkUINativeModuleValue SetCopyOptions(ArkUIRuntimeCallInfo* runtimeCallInfo);
41     static ArkUINativeModuleValue ResetCopyOptions(ArkUIRuntimeCallInfo* runtimeCallInfo);
42 
43     static ArkUINativeModuleValue SetOnSelectionChange(ArkUIRuntimeCallInfo* runtimeCallInfo);
44     static ArkUINativeModuleValue ResetOnSelectionChange(ArkUIRuntimeCallInfo* runtimeCallInfo);
45 
46     static ArkUINativeModuleValue SetCaretColor(ArkUIRuntimeCallInfo* runtimeCallInfo);
47     static ArkUINativeModuleValue ResetCaretColor(ArkUIRuntimeCallInfo* runtimeCallInfo);
48 
49     static ArkUINativeModuleValue SetOnSelect(ArkUIRuntimeCallInfo* runtimeCallInfo);
50     static ArkUINativeModuleValue ResetOnSelect(ArkUIRuntimeCallInfo* runtimeCallInfo);
51 
52     static ArkUINativeModuleValue SetOnSubmit(ArkUIRuntimeCallInfo* runtimeCallInfo);
53     static ArkUINativeModuleValue ResetOnSubmit(ArkUIRuntimeCallInfo* runtimeCallInfo);
54 
55     static ArkUINativeModuleValue SetAboutToIMEInput(ArkUIRuntimeCallInfo* runtimeCallInfo);
56     static ArkUINativeModuleValue ResetAboutToIMEInput(ArkUIRuntimeCallInfo* runtimeCallInfo);
57 
58     static ArkUINativeModuleValue SetOnReady(ArkUIRuntimeCallInfo* runtimeCallInfo);
59     static ArkUINativeModuleValue ResetOnReady(ArkUIRuntimeCallInfo* runtimeCallInfo);
60 
61     static ArkUINativeModuleValue SetOnDeleteComplete(ArkUIRuntimeCallInfo* runtimeCallInfo);
62     static ArkUINativeModuleValue ResetOnDeleteComplete(ArkUIRuntimeCallInfo* runtimeCallInfo);
63 
64     static ArkUINativeModuleValue SetOnEditingChange(ArkUIRuntimeCallInfo* runtimeCallInfo);
65     static ArkUINativeModuleValue ResetOnEditingChange(ArkUIRuntimeCallInfo* runtimeCallInfo);
66 
67     static ArkUINativeModuleValue SetSelectedBackgroundColor(ArkUIRuntimeCallInfo* runtimeCallInfo);
68     static ArkUINativeModuleValue ResetSelectedBackgroundColor(ArkUIRuntimeCallInfo* runtimeCallInfo);
69     static ArkUINativeModuleValue SetOnPaste(ArkUIRuntimeCallInfo* runtimeCallInfo);
70     static ArkUINativeModuleValue ResetOnPaste(ArkUIRuntimeCallInfo* runtimeCallInfo);
71 
72     static ArkUINativeModuleValue SetOnCut(ArkUIRuntimeCallInfo* runtimeCallInfo);
73     static ArkUINativeModuleValue ResetOnCut(ArkUIRuntimeCallInfo* runtimeCallInfo);
74 
75     static ArkUINativeModuleValue SetOnCopy(ArkUIRuntimeCallInfo* runtimeCallInfo);
76     static ArkUINativeModuleValue ResetOnCopy(ArkUIRuntimeCallInfo* runtimeCallInfo);
77 
78     static ArkUINativeModuleValue SetEnableKeyboardOnFocus(ArkUIRuntimeCallInfo* runtimeCallInfo);
79     static ArkUINativeModuleValue ResetEnableKeyboardOnFocus(ArkUIRuntimeCallInfo* runtimeCallInfo);
80 
81     static ArkUINativeModuleValue SetEnablePreviewText(ArkUIRuntimeCallInfo* runtimeCallInfo);
82     static ArkUINativeModuleValue ResetEnablePreviewText(ArkUIRuntimeCallInfo* runtimeCallInfo);
83 
84     static ArkUINativeModuleValue SetEditMenuOptions(ArkUIRuntimeCallInfo* runtimeCallInfo);
85     static ArkUINativeModuleValue ResetEditMenuOptions(ArkUIRuntimeCallInfo* runtimeCallInfo);
86 
87     static ArkUINativeModuleValue SetEnterKeyType(ArkUIRuntimeCallInfo* runtimeCallInfo);
88     static ArkUINativeModuleValue ResetEnterKeyType(ArkUIRuntimeCallInfo* runtimeCallInfo);
89 
90     static ArkUINativeModuleValue SetBarState(ArkUIRuntimeCallInfo *runtimeCallInfo);
91     static ArkUINativeModuleValue ResetBarState(ArkUIRuntimeCallInfo *runtimeCallInfo);
92 
93     static ArkUINativeModuleValue SetMaxLength(ArkUIRuntimeCallInfo *runtimeCallInfo);
94     static ArkUINativeModuleValue ResetMaxLength(ArkUIRuntimeCallInfo *runtimeCallInfo);
95 
96     static ArkUINativeModuleValue SetMaxLines(ArkUIRuntimeCallInfo *runtimeCallInfo);
97     static ArkUINativeModuleValue ResetMaxLines(ArkUIRuntimeCallInfo *runtimeCallInfo);
98 
99     static ArkUINativeModuleValue SetStopBackPress(ArkUIRuntimeCallInfo* runtimeCallInfo);
100     static ArkUINativeModuleValue ResetStopBackPress(ArkUIRuntimeCallInfo* runtimeCallInfo);
101 
102     static ArkUINativeModuleValue SetKeyboardAppearance(ArkUIRuntimeCallInfo* runtimeCallInfo);
103     static ArkUINativeModuleValue ResetKeyboardAppearance(ArkUIRuntimeCallInfo* runtimeCallInfo);
104 
105     static ArkUINativeModuleValue SetOnDidIMEInput(ArkUIRuntimeCallInfo* runtimeCallInfo);
106     static ArkUINativeModuleValue ResetOnDidIMEInput(ArkUIRuntimeCallInfo* runtimeCallInfo);
107 
108     static ArkUINativeModuleValue SetEnableHapticFeedback(ArkUIRuntimeCallInfo* runtimeCallInfo);
109     static ArkUINativeModuleValue ResetEnableHapticFeedback(ArkUIRuntimeCallInfo* runtimeCallInfo);
110 
111     static ArkUINativeModuleValue SetEnableAutoSpacing(ArkUIRuntimeCallInfo* runtimeCallInfo);
112     static ArkUINativeModuleValue ResetEnableAutoSpacing(ArkUIRuntimeCallInfo* runtimeCallInfo);
113 
114     static ArkUINativeModuleValue SetUndoStyle(ArkUIRuntimeCallInfo* runtimeCallInfo);
115     static ArkUINativeModuleValue ResetUndoStyle(ArkUIRuntimeCallInfo* runtimeCallInfo);
116 private:
117     static void ParseAIEntityColor(
118         ArkUIRuntimeCallInfo* runtimeCallInfo, struct ArkUITextDetectConfigStruct& arkUITextDetectConfig);
119 };
120 }
121 
122 #endif  // FRAMEWORKS_BRIDGE_DECLARATIVE_FRONTEND_ENGINE_JSI_NATIVEMODULE_ARKTS_NATIVE_RICH_EDITOR_H