1885b47fbSopenharmony_ci/* 2885b47fbSopenharmony_ci * Copyright (C) 2022 Huawei Device Co., Ltd. 3885b47fbSopenharmony_ci * Licensed under the Apache License, Version 2.0 (the "License"); 4885b47fbSopenharmony_ci * you may not use this file except in compliance with the License. 5885b47fbSopenharmony_ci * You may obtain a copy of the License at 6885b47fbSopenharmony_ci * 7885b47fbSopenharmony_ci * http://www.apache.org/licenses/LICENSE-2.0 8885b47fbSopenharmony_ci * 9885b47fbSopenharmony_ci * Unless required by applicable law or agreed to in writing, software 10885b47fbSopenharmony_ci * distributed under the License is distributed on an "AS IS" BASIS, 11885b47fbSopenharmony_ci * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12885b47fbSopenharmony_ci * See the License for the specific language governing permissions and 13885b47fbSopenharmony_ci * limitations under the License. 14885b47fbSopenharmony_ci */ 15885b47fbSopenharmony_ci 16885b47fbSopenharmony_ci#include "accessibility_event_transmission.h" 17885b47fbSopenharmony_ci#include "hilog_wrapper.h" 18885b47fbSopenharmony_ci 19885b47fbSopenharmony_cinamespace OHOS { 20885b47fbSopenharmony_cinamespace Accessibility { 21885b47fbSopenharmony_cibool EventTransmission::OnKeyEvent(MMI::KeyEvent &event) 22885b47fbSopenharmony_ci{ 23885b47fbSopenharmony_ci HILOG_DEBUG(); 24885b47fbSopenharmony_ci 25885b47fbSopenharmony_ci auto next = GetNext(); 26885b47fbSopenharmony_ci if (next != nullptr) { 27885b47fbSopenharmony_ci return next->OnKeyEvent(event); 28885b47fbSopenharmony_ci } 29885b47fbSopenharmony_ci return false; 30885b47fbSopenharmony_ci} 31885b47fbSopenharmony_ci 32885b47fbSopenharmony_cibool EventTransmission::OnPointerEvent(MMI::PointerEvent &event) 33885b47fbSopenharmony_ci{ 34885b47fbSopenharmony_ci HILOG_DEBUG(); 35885b47fbSopenharmony_ci 36885b47fbSopenharmony_ci auto next = GetNext(); 37885b47fbSopenharmony_ci if (next != nullptr) { 38885b47fbSopenharmony_ci return next->OnPointerEvent(event); 39885b47fbSopenharmony_ci } 40885b47fbSopenharmony_ci return false; 41885b47fbSopenharmony_ci} 42885b47fbSopenharmony_ci 43885b47fbSopenharmony_civoid EventTransmission::OnMoveMouse(int32_t offsetX, int32_t offsetY) 44885b47fbSopenharmony_ci{ 45885b47fbSopenharmony_ci HILOG_DEBUG(); 46885b47fbSopenharmony_ci 47885b47fbSopenharmony_ci auto next = GetNext(); 48885b47fbSopenharmony_ci if (next != nullptr) { 49885b47fbSopenharmony_ci next->OnMoveMouse(offsetX, offsetY); 50885b47fbSopenharmony_ci } 51885b47fbSopenharmony_ci} 52885b47fbSopenharmony_ci 53885b47fbSopenharmony_civoid EventTransmission::SetNext(const sptr<EventTransmission> &next) 54885b47fbSopenharmony_ci{ 55885b47fbSopenharmony_ci HILOG_DEBUG(); 56885b47fbSopenharmony_ci 57885b47fbSopenharmony_ci next_ = next; 58885b47fbSopenharmony_ci} 59885b47fbSopenharmony_ci 60885b47fbSopenharmony_cisptr<EventTransmission> EventTransmission::GetNext() 61885b47fbSopenharmony_ci{ 62885b47fbSopenharmony_ci HILOG_DEBUG(); 63885b47fbSopenharmony_ci 64885b47fbSopenharmony_ci return next_; 65885b47fbSopenharmony_ci} 66885b47fbSopenharmony_ci 67885b47fbSopenharmony_civoid EventTransmission::DestroyEvents() 68885b47fbSopenharmony_ci{ 69885b47fbSopenharmony_ci HILOG_DEBUG(); 70885b47fbSopenharmony_ci 71885b47fbSopenharmony_ci auto next = GetNext(); 72885b47fbSopenharmony_ci if (next != nullptr) { 73885b47fbSopenharmony_ci next->DestroyEvents(); 74885b47fbSopenharmony_ci } 75885b47fbSopenharmony_ci} 76885b47fbSopenharmony_ci} // namespace Accessibility 77885b47fbSopenharmony_ci} // namespace OHOS 78