diff --git a/window_scene/session/host/src/scene_session.cpp b/window_scene/session/host/src/scene_session.cpp index 0d75714bc61bf382e30cf76eb14f9d856b2821c9..51b34653ebd1d0e9ca540fb74921e0538d5068c0 100644 --- a/window_scene/session/host/src/scene_session.cpp +++ b/window_scene/session/host/src/scene_session.cpp @@ -2872,6 +2872,9 @@ WSError SceneSession::TransferPointerEventInner(const std::shared_ptrGetWindowMode() == WindowMode::WINDOW_MODE_FLOATING && IsDragAccessible()) || isDragAccessibleSystemWindow) { if ((systemConfig_.IsPcWindow() || IsFreeMultiWindowMode() || @@ -2879,7 +2882,6 @@ WSError SceneSession::TransferPointerEventInner(const std::shared_ptrConsumeDragEvent(pointerEvent, winRect_, property, systemConfig_)) { auto surfaceNode = GetSurfaceNode(); moveDragController_->UpdateGravityWhenDrag(pointerEvent, surfaceNode); - NotifyUpdateGravity(); PresentFoucusIfNeed(pointerEvent->GetPointerAction()); pointerEvent->MarkProcessed(); return WSError::WS_OK; @@ -3582,6 +3584,7 @@ void SceneSession::OnMoveDragCallback(SizeChangeReason reason) SetUIFirstSwitch(RSUIFirstSwitch::NONE); } else if (reason == SizeChangeReason::DRAG_START) { OnSessionEvent(SessionEvent::EVENT_DRAG_START); + NotifyUpdateGravity(); SetUIFirstSwitch(RSUIFirstSwitch::FORCE_DISABLE); } }