diff options
author | Allan Sandfeld Jensen <allan.jensen@digia.com> | 2014-06-18 14:18:28 +0200 |
---|---|---|
committer | Allan Sandfeld Jensen <allan.jensen@digia.com> | 2014-06-18 15:54:52 +0200 |
commit | 70c2f166453ed11c9e0b28614d48cf8702295c9e (patch) | |
tree | 58558a2845a84c419656079af25d060302d78d2e /src/core/render_widget_host_view_qt.cpp | |
parent | d98d99347079368fcd1fea5a1cb12ff68f1d0004 (diff) |
Fix keyboard scrolling
Arrow keys and page-up/page-down was not working. These are detected
on RayKeyDown events which both the Win and GTK versions sends instead
of KeyDown.
Also fixes a mistake in reading the length of the UTF16 text string that
was using sizeof on a pointer.
Change-Id: I441ef21c15430dafcaeda00d43eb9aec81cd88b8
Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
Diffstat (limited to 'src/core/render_widget_host_view_qt.cpp')
-rw-r--r-- | src/core/render_widget_host_view_qt.cpp | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/core/render_widget_host_view_qt.cpp b/src/core/render_widget_host_view_qt.cpp index 18eabd5c0..386783f88 100644 --- a/src/core/render_widget_host_view_qt.cpp +++ b/src/core/render_widget_host_view_qt.cpp @@ -885,7 +885,12 @@ void RenderWidgetHostViewQt::handleMouseEvent(QMouseEvent* event) void RenderWidgetHostViewQt::handleKeyEvent(QKeyEvent *ev) { - m_host->ForwardKeyboardEvent(WebEventFactory::toWebKeyboardEvent(ev)); + content::NativeWebKeyboardEvent webEvent = WebEventFactory::toWebKeyboardEvent(ev); + m_host->ForwardKeyboardEvent(webEvent); + if (webEvent.type == blink::WebInputEvent::RawKeyDown && !ev->text().isEmpty()) { + webEvent.type = blink::WebInputEvent::Char; + m_host->ForwardKeyboardEvent(webEvent); + } } void RenderWidgetHostViewQt::handleInputMethodEvent(QInputMethodEvent *ev) |