Lines Matching defs:keyEvent
70 void KeySubscriberHandler::HandleKeyEvent(const std::shared_ptr<KeyEvent> keyEvent)
72 CHKPV(keyEvent);
73 if (OnSubscribeKeyEvent(keyEvent)) {
74 if (EventLogHelper::IsBetaVersion() && !keyEvent->HasFlag(InputEvent::EVENT_FLAG_PRIVACY_MODE)) {
75 MMI_HILOGD("Subscribe keyEvent filter success. keyCode:%{private}d", keyEvent->GetKeyCode());
77 MMI_HILOGD("Subscribe keyEvent filter success. keyCode:%{private}d", keyEvent->GetKeyCode());
79 BytraceAdapter::StartBytrace(keyEvent, BytraceAdapter::KEY_SUBSCRIBE_EVENT);
83 nextHandler_->HandleKeyEvent(keyEvent);
192 [this, subscriber](std::shared_ptr<KeyEvent> keyEvent) {
193 NotifySubscriber(keyEvent, subscriber);
335 [this, subscriber](std::shared_ptr<KeyEvent> keyEvent) {
336 NotifySubscriber(keyEvent, subscriber);
341 [this, subscriber](std::shared_ptr<KeyEvent> keyEvent) {
342 NotifySubscriber(keyEvent, subscriber);
410 bool KeySubscriberHandler::IsFunctionKey(const std::shared_ptr<KeyEvent> keyEvent)
413 if (keyEvent->GetKeyCode() == KeyEvent::KEYCODE_BRIGHTNESS_DOWN
414 || keyEvent->GetKeyCode() == KeyEvent::KEYCODE_BRIGHTNESS_UP) {
417 if (keyEvent->GetKeyCode() == KeyEvent::KEYCODE_VOLUME_UP
418 || keyEvent->GetKeyCode() == KeyEvent::KEYCODE_VOLUME_DOWN
419 || keyEvent->GetKeyCode() == KeyEvent::KEYCODE_VOLUME_MUTE) {
422 if (keyEvent->GetKeyCode() == KeyEvent::KEYCODE_MUTE
423 || keyEvent->GetKeyCode() == KeyEvent::KEYCODE_SWITCHVIDEOMODE
424 || keyEvent->GetKeyCode() == KeyEvent::KEYCODE_SEARCH
425 || keyEvent->GetKeyCode() == KeyEvent::KEYCODE_MEDIA_RECORD) {
431 bool KeySubscriberHandler::IsEnableCombineKey(const std::shared_ptr<KeyEvent> keyEvent)
433 CHKPF(keyEvent);
437 if (IsFunctionKey(keyEvent)) {
438 auto items = keyEvent->GetKeyItems();
441 if (keyEvent->GetKeyCode() == KeyEvent::KEYCODE_POWER) {
442 auto items = keyEvent->GetKeyItems();
448 if (keyEvent->GetKeyCode() == KeyEvent::KEYCODE_DPAD_RIGHT ||
449 keyEvent->GetKeyCode() == KeyEvent::KEYCODE_DPAD_LEFT) {
450 if (EventLogHelper::IsBetaVersion() && !keyEvent->HasFlag(InputEvent::EVENT_FLAG_PRIVACY_MODE)) {
451 MMI_HILOGD("Subscriber mulit swipe keycode is:%{public}d", keyEvent->GetKeyCode());
453 MMI_HILOGD("Subscriber mulit swipe keycode is:%{private}d", keyEvent->GetKeyCode());
455 return IsEnableCombineKeySwipe(keyEvent);
457 if (keyEvent->GetKeyCode() == KeyEvent::KEYCODE_L) {
458 for (const auto &item : keyEvent->GetKeyItems()) {
470 bool KeySubscriberHandler::IsEnableCombineKeySwipe(const std::shared_ptr<KeyEvent> keyEvent)
472 for (const auto &item : keyEvent->GetKeyItems()) {
483 void KeySubscriberHandler::PublishKeyPressCommonEvent(std::shared_ptr<KeyEvent> keyEvent)
487 want.SetParam("keyCode", keyEvent->GetKeyCode());
495 bool KeySubscriberHandler::HandleRingMute(std::shared_ptr<KeyEvent> keyEvent)
498 CHKPF(keyEvent);
499 if (keyEvent->GetKeyCode() != KeyEvent::KEYCODE_VOLUME_DOWN &&
500 keyEvent->GetKeyCode() != KeyEvent::KEYCODE_VOLUME_UP &&
501 keyEvent->GetKeyCode() != KeyEvent::KEYCODE_POWER) {
507 PublishKeyPressCommonEvent(keyEvent);
526 if (keyEvent->GetKeyCode() == KeyEvent::KEYCODE_POWER) {
531 if (keyEvent->GetKeyCode() != KeyEvent::KEYCODE_POWER) {
544 bool KeySubscriberHandler::OnSubscribeKeyEvent(std::shared_ptr<KeyEvent> keyEvent)
547 CHKPF(keyEvent);
548 if (HandleRingMute(keyEvent)) {
549 MMI_HILOGI("Mute Ring in subscribe keyEvent");
550 RemoveSubscriberTimer(keyEvent);
553 if (HandleCallEnded(keyEvent)) {
554 MMI_HILOGI("Call Ended in subscribe keyEvent");
557 if (!IsEnableCombineKey(keyEvent)) {
558 MMI_HILOGI("Combine key is taken over in subscribe keyEvent");
561 if (keyGestureMgr_.Intercept(keyEvent)) {
565 if (IsRepeatedKeyEvent(keyEvent)) {
569 keyEvent_ = KeyEvent::Clone(keyEvent);
570 int32_t keyAction = keyEvent->GetKeyAction();
571 if (EventLogHelper::IsBetaVersion() && !keyEvent->HasFlag(InputEvent::EVENT_FLAG_PRIVACY_MODE)) {
572 MMI_HILOGD("keyCode:%{private}d, keyAction:%{public}s", keyEvent->GetKeyCode(),
576 keyEvent->GetKeyCode(), KeyEvent::ActionToString(keyAction));
578 if (needSkipPowerKeyUp_ && keyEvent->GetKeyCode() == KeyEvent::KEYCODE_POWER
584 for (const auto &keyCode : keyEvent->GetPressedKeys()) {
585 if (EventLogHelper::IsBetaVersion() && !keyEvent->HasFlag(InputEvent::EVENT_FLAG_PRIVACY_MODE)) {
593 handled = HandleKeyDown(keyEvent);
596 handled = HandleKeyUp(keyEvent);
599 handled = HandleKeyCancel(keyEvent);
708 void KeySubscriberHandler::NotifyKeyDownSubscriber(const std::shared_ptr<KeyEvent> &keyEvent,
712 CHKPV(keyEvent);
716 NotifyKeyDownRightNow(keyEvent, subscribers, keyOption->IsRepeat(), handled);
718 NotifyKeyDownDelay(keyEvent, subscribers, handled);
721 void KeySubscriberHandler::NotifyKeyDownRightNow(const std::shared_ptr<KeyEvent> &keyEvent,
730 if (!isForegroundExits_ || keyEvent->GetKeyCode() == KeyEvent::KEYCODE_POWER ||
733 if (!isRepeat && keyEvent->GetKeyCode() == KeyRepeat->GetRepeatKeyCode()) {
738 NotifySubscriber(keyEvent, subscriber);
744 void KeySubscriberHandler::NotifyKeyDownDelay(const std::shared_ptr<KeyEvent> &keyEvent,
753 if (!isForegroundExits_ || keyEvent->GetKeyCode() == KeyEvent::KEYCODE_POWER ||
756 if (!AddTimer(subscriber, keyEvent)) {
765 void KeySubscriberHandler::NotifyKeyUpSubscriber(const std::shared_ptr<KeyEvent> &keyEvent,
775 HandleKeyUpWithDelay(keyEvent, subscriber);
781 void KeySubscriberHandler::NotifySubscriber(std::shared_ptr<KeyEvent> keyEvent,
785 CHKPV(keyEvent);
788 if (keyEvent->GetKeyCode() != KeyEvent::KEYCODE_POWER) {
795 if (keyEvent->GetKeyCode() == KeyEvent::KEYCODE_POWER) {
796 DfxHisysevent::ReportPowerInfo(keyEvent, OHOS::HiviewDFX::HiSysEvent::EventType::STATISTIC);
800 InputEventDataTransformation::KeyEventToNetPacket(keyEvent, pkt);
808 if (EventLogHelper::IsBetaVersion() && !keyEvent->HasFlag(InputEvent::EVENT_FLAG_PRIVACY_MODE)) {
810 subscriber->id_, keyEvent->GetKeyCode(), sess->GetPid());
813 subscriber->id_, keyEvent->GetKeyCode(), sess->GetPid());
827 const std::shared_ptr<KeyEvent> &keyEvent)
830 CHKPF(keyEvent);
846 if (!CloneKeyEvent(keyEvent)) {
905 MMI_HILOGE("Leave, subscriber->keyEvent is nullptr, subscribeId:%{public}d", subscriber->id_);
930 bool KeySubscriberHandler::HandleKeyDown(const std::shared_ptr<KeyEvent> &keyEvent)
933 CHKPF(keyEvent);
938 auto keyCode = keyEvent->GetKeyCode();
939 std::vector<int32_t> pressedKeys = keyEvent->GetPressedKeys();
963 NotifyKeyDownSubscriber(keyEvent, keyOption, subscribers, handled);
992 bool KeySubscriberHandler::HandleKeyUp(const std::shared_ptr<KeyEvent> &keyEvent)
995 if (KEY_SHORTCUT_MGR->HaveShortcutConsumed(keyEvent) || !KEY_SHORTCUT_MGR->IsCheckUpShortcut(keyEvent)) {
1000 auto keyCode = keyEvent->GetKeyCode();
1001 std::vector<int32_t> pressedKeys = keyEvent->GetPressedKeys();
1025 NotifyKeyUpSubscriber(keyEvent, subscribers, handled);
1028 std::optional<KeyEvent::KeyItem> keyItem = keyEvent->GetKeyItem();
1030 if (keyEvent->GetActionTime() - keyItem->GetDownTime() >= MS2US(duration)) {
1034 NotifyKeyUpSubscriber(keyEvent, subscribers, handled);
1040 bool KeySubscriberHandler::HandleKeyCancel(const std::shared_ptr<KeyEvent> &keyEvent)
1043 CHKPF(keyEvent);
1080 bool KeySubscriberHandler::CloneKeyEvent(std::shared_ptr<KeyEvent> keyEvent)
1082 CHKPF(keyEvent);
1085 keyEvent_ = KeyEvent::Clone(keyEvent);
1101 bool KeySubscriberHandler::IsRepeatedKeyEvent(std::shared_ptr<KeyEvent> keyEvent)
1103 CHKPF(keyEvent);
1108 if (keyEvent->GetKeyCode() != keyEvent_->GetKeyCode()) {
1112 if (keyEvent->GetKeyAction() != keyEvent_->GetKeyAction()) {
1116 if (keyEvent->GetKeyItems().size() != keyEvent_->GetKeyItems().size()) {
1120 for (const auto &item : keyEvent->GetKeyItems()) {
1149 void KeySubscriberHandler::HandleKeyUpWithDelay(std::shared_ptr<KeyEvent> keyEvent,
1154 NotifySubscriber(keyEvent, subscriber);
1156 if (!AddTimer(subscriber, keyEvent)) {
1250 bool KeySubscriberHandler::HandleCallEnded(std::shared_ptr<KeyEvent> keyEvent)
1253 CHKPF(keyEvent);
1258 if (keyEvent->GetKeyCode() != KeyEvent::KEYCODE_POWER ||
1259 keyEvent->GetKeyAction() != KeyEvent::KEY_ACTION_DOWN) {
1371 void KeySubscriberHandler::RemoveSubscriberTimer(std::shared_ptr<KeyEvent> keyEvent)
1374 CHKPV(keyEvent);
1375 auto keyCode = keyEvent->GetKeyCode();
1376 std::vector<int32_t> pressedKeys = keyEvent->GetPressedKeys();