From e0bd650cb7f8c8fd3014541b4c49104906e0e139 Mon Sep 17 00:00:00 2001 From: Allan Sandfeld Jensen Date: Mon, 20 Jun 2016 17:14:35 +0200 Subject: Override short-cuts to common editor commands To ensure Chromium is given a chance to handle editor commands, we must override these short-cuts. On OS X we must also perform the action afterwards as these are not handled internally by the Blink Editor. The patch solves copy/paste in flash plugins and copy/paste on OS X when no application short-cuts have been defined. The handling of short-cut override events is based on how it was handled in Qt WebKit Task-number: QTBUG-54221 Change-Id: I748671c7bfa5662aae16c6a4b9bbe5e2bce1b907 Reviewed-by: Alexandru Croitor --- src/webengine/render_widget_host_view_qt_delegate_quick.cpp | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'src/webengine/render_widget_host_view_qt_delegate_quick.cpp') diff --git a/src/webengine/render_widget_host_view_qt_delegate_quick.cpp b/src/webengine/render_widget_host_view_qt_delegate_quick.cpp index cd8fc54b9..b10ca8bdb 100644 --- a/src/webengine/render_widget_host_view_qt_delegate_quick.cpp +++ b/src/webengine/render_widget_host_view_qt_delegate_quick.cpp @@ -207,6 +207,18 @@ void RenderWidgetHostViewQtDelegateQuick::inputMethodStateChanged(bool editorVis } +bool RenderWidgetHostViewQtDelegateQuick::event(QEvent *event) +{ + if (event->type() == QEvent::ShortcutOverride) { + if (editorActionForKeyEvent(static_cast(event)) != QQuickWebEngineView::NoWebAction) { + event->accept(); + return true; + } + } + + return QQuickItem::event(event); +} + void RenderWidgetHostViewQtDelegateQuick::focusInEvent(QFocusEvent *event) { m_client->forwardEvent(event); -- cgit v1.2.3