diff --git a/blink/renderer/core/frame/web_local_frame_impl.cc b/blink/renderer/core/frame/web_local_frame_impl.cc index 79f60f014396758cfbba2858c960cbb09b880817..417f264001b73282ad9845def47842e645018152 100644 --- a/blink/renderer/core/frame/web_local_frame_impl.cc +++ b/blink/renderer/core/frame/web_local_frame_impl.cc @@ -3147,6 +3147,14 @@ WebDevToolsAgentImpl* WebLocalFrameImpl::DevToolsAgentImpl() { } void WebLocalFrameImpl::WasHidden() { +#if defined(OHOS_CLIPBOARD) + const blink::WebRange& range = GetInputMethodController()->GetSelectionOffsets(); + if (!range.IsNull()) { + SelectRange(blink::WebRange(range.EndOffset(), 0), + blink::WebLocalFrame::kHideSelectionHandle, + mojom::blink::SelectionMenuBehavior::kHide); + } +#endif if (frame_) frame_->WasHidden(); }