diff options
Diffstat (limited to 'browser/browserview.cpp')
-rw-r--r-- | browser/browserview.cpp | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/browser/browserview.cpp b/browser/browserview.cpp index 947efb0..af32053 100644 --- a/browser/browserview.cpp +++ b/browser/browserview.cpp @@ -103,9 +103,19 @@ void BrowserView::loadFinished(bool ok) m_webview.page()->mainFrame()->addToJavaScriptWindowObject("inputHandler", &m_inputHandler); m_webview.page()->mainFrame()->evaluateJavaScript( - "document.addEventListener('focus', function(e){" - " window.inputHandler.setCurrentFocus(e.target);" - "}, true);"); + "(function() {" + "var pocCurrentElement = null;" + "document.addEventListener('focus', function(e){" + " if (pocCurrentElement != e.target) {" + " window.inputHandler.setCurrentFocus(e.target);" + " pocCurrentElement = e.target;" + " }" + "}, true);" + "document.addEventListener('focusout', function(e){" + " pocCurrentElement = e.relatedTarget;" + "}, true);" + "})()" + ); m_webview.page()->mainFrame()->evaluateJavaScript( "document.addEventListener('scroll', function(){" |