[Webkit-unassigned] [Bug 60161] [Qt] Virtual Keyboard is not hidden when you 'unfocus' from input field / QGraphicsWebview

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Mon Oct 31 09:13:43 PDT 2011


https://bugs.webkit.org/show_bug.cgi?id=60161


Bruno Abinader <bruno.de_oliveira at basyskom.de> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |bruno.de_oliveira at basyskom.
                   |                            |de




--- Comment #12 from Bruno Abinader <bruno.de_oliveira at basyskom.de>  2011-10-31 09:13:42 PST ---
Hi guys,

First of all, thanks for the reviews. I have been studying the SIP behavior all along different applications on Harmattan. On grob browser, for instance, the behavior is correct. On QML TextInput, you can actually disable the default behavior when setting "activeFocusOnPress" to false and implement a custom VKB call using openSoftwareInputPanel() and closeSoftwareInputPanel() methods. On all these cases, I've enabled maliit debugging mode (export MIC_ENABLE_DEBUG=true) and this is what I get:

    MInputContext got CloseSoftwareInputPanel event 
    MInputContext in virtual void MInputContext::reset() 
    MInputContext in virtual void MInputContext::setFocusWidget(QWidget*) QObject(0x0)

However, without this patch, here's what output on console when "unfocus" from the text input widget:

    MInputContext in virtual void MInputContext::update() 
    MInputContext in virtual void MInputContext::reset() 
    MInputContext in virtual void MInputContext::setFocusWidget(QWidget*) QObject(0x0)

So indeed there is no call for CloseSoftwareInputPanel event anywhere in QWebPage. I've looked at grob code and the IM behavior is based on the editFocusChanged(QRect) signal provided by QWKPage. There is no such signal on current QtWebKit version.

That said, please disconsider this patch. I'm now currently testing a small modification of mine on QWebPagePrivate::handleSoftwareInputPanel that might fix the issue without removing any code or adding more virtual functions. If that doesn't work, there's still an option to add an event filter on both
PageClient{QWidget,QGraphicsWidget}. I'm going to publish it here as soon as I have a working patch.

-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.



More information about the webkit-unassigned mailing list