1 /* 2 * Copyright (c) 2024 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_FUNCTION_JS_SHOULD_BUILT_IN_RECOGNIZER_PARALLEL_WITH_FUNCTION_H 17 #define FRAMEWORKS_BRIDGE_DECLARATIVE_FRONTEND_ENGINE_FUNCTION_JS_SHOULD_BUILT_IN_RECOGNIZER_PARALLEL_WITH_FUNCTION_H 18 19 #include "frameworks/bridge/declarative_frontend/engine/functions/js_gesture_recognizer.h" 20 21 namespace OHOS::Ace::Framework { 22 class JsShouldBuiltInRecognizerParallelWithFunction : public JsFunction { 23 DECLARE_ACE_TYPE(JsShouldBuiltInRecognizerParallelWithFunction, JsFunction); 24 25 public: JsShouldBuiltInRecognizerParallelWithFunction(const JSRef<JSFunc> & jsFunction)26 explicit JsShouldBuiltInRecognizerParallelWithFunction(const JSRef<JSFunc>& jsFunction) 27 : JsFunction(JSRef<JSObject>(), jsFunction) 28 {} 29 30 ~JsShouldBuiltInRecognizerParallelWithFunction() override = default; 31 Execute()32 void Execute() 33 { 34 ExecuteJS(); 35 } 36 37 RefPtr<NG::NGGestureRecognizer> Execute( 38 const RefPtr<NG::NGGestureRecognizer>& current, const std::vector<RefPtr<NG::NGGestureRecognizer>>& others); 39 static JSRef<JSObject> CreateRecognizerObject(const RefPtr<NG::NGGestureRecognizer>& target); 40 }; 41 } // namespace OHOS::Ace::Framework 42 43 #endif // FRAMEWORKS_BRIDGE_DECLARATIVE_FRONTEND_ENGINE_FUNCTION_JS_SHOULD_BUILT_IN_RECOGNIZER_PARALLEL_WITH_FUNCTION_H 44