summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJonatan Pålsson <jonatan.palsson@pelagicore.com>2014-01-23 08:24:11 +0100
committerJonatan Pålsson <jonatan.palsson@pelagicore.com>2014-01-27 17:12:15 +0100
commit533da96f3c657e07a338712c7c7926c624360301 (patch)
tree4f18008c07ebb7ff1f11f594c36664075eea5e23
parentcc15cc8b920cffc57ca521714fef620a590bcc8c (diff)
downloadbrowser-poc-533da96f3c657e07a338712c7c7926c624360301.tar.gz
Added support for user input via IUserInput
-rw-r--r--browser/browser.cpp3
-rw-r--r--browser/browserview.cpp10
-rw-r--r--browser/browserview.h1
3 files changed, 12 insertions, 2 deletions
diff --git a/browser/browser.cpp b/browser/browser.cpp
index e6d7bd4..04acdbf 100644
--- a/browser/browser.cpp
+++ b/browser/browser.cpp
@@ -79,8 +79,7 @@ void browser::setView(QString viewpath) {
void browser::inputText(QString input) {
qDebug() << __PRETTY_FUNCTION__ << input;
- wpw->webitem->setProperty("input", input);
- wpw->webitem->metaObject()->invokeMethod(wpw->webitem, "inputText");
+ wpw->webitem->inputText(input);
}
conn::brw::ERROR_IDS browser::destroyPageWindow(conn::brw::OBJECT_HANDLE a_hPageWindowHandle) {
diff --git a/browser/browserview.cpp b/browser/browserview.cpp
index 7fccc78..79bf3c9 100644
--- a/browser/browserview.cpp
+++ b/browser/browserview.cpp
@@ -1,5 +1,6 @@
#include <QDebug>
#include <QWebFrame>
+#include <QCoreApplication>
#include "browserview.h"
@@ -12,6 +13,8 @@ BrowserView::BrowserView()
this->load("http://www.bmw.com");
+ setWindowFlags(Qt::FramelessWindowHint);
+
connect(&m_webview, SIGNAL (loadStarted()), this, SIGNAL (pageLoadStarted ()));
connect(&m_webview, SIGNAL (loadFinished(bool)), this, SIGNAL (pageLoadFinished (bool)));
connect(&m_webview, SIGNAL (loadProgress(int)), this, SLOT (loadProgress(int)));
@@ -60,6 +63,13 @@ void BrowserView::scroll (BrowserView::ScrollDirection dir, BrowserView::ScrollT
stepSize*yMultiplier);
}
+void BrowserView::inputText (QString input)
+{
+ QInputMethodEvent event;
+ event.setCommitString(input);
+ QCoreApplication::sendEvent(m_webview.page(), &event);
+}
+
void BrowserView::resizeEvent (QResizeEvent *event) {
int w = event->size().width();
int h = event->size().height();
diff --git a/browser/browserview.h b/browser/browserview.h
index c0132a2..5dfbc24 100644
--- a/browser/browserview.h
+++ b/browser/browserview.h
@@ -32,6 +32,7 @@ public:
void pageReload() { m_webview.reload(); }
void pageStop() { m_webview.stop(); }
void scroll (BrowserView::ScrollDirection dir, BrowserView::ScrollType type);
+ void inputText (QString input);
signals:
void pageLoadStarted();