gtk:
authoroliver <oliver@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sat, 1 Sep 2007 23:04:59 +0000 (23:04 +0000)
committeroliver <oliver@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sat, 1 Sep 2007 23:04:59 +0000 (23:04 +0000)
commitd90d419eddf75bd8f674c93b83339d0729b5252e
tree60ff6060dd294ad494ee5321045861f88db715c5
parentfa6ef0a3b8896c08920fdbfcb8506142058eae16
gtk:

        Reviewed by Sam.

        <rdar://problem/5344848> IME is incorrectly used for key events when on non-editable regions

        EditorClient::setInputMethodState stub

        * WebCoreSupport/EditorClientGtk.cpp:
        (WebKit::EditorClient::setInputMethodState):
        * WebCoreSupport/EditorClientGtk.h:

WebCore:

        Reviewed by Sam.

        <rdar://problem/5344848> IME is incorrectly used for key events when on non-editable regions

        Adding a new EditorClient method so it is possible to inform WebKit of focus changes.
        Also added new virtual method Node::shouldUseInputMethod to allow us to trivially check
        whether an input method should be used when processing input for the currently focused
        Node.

        * bridge/EditorClient.h:
        * dom/Node.cpp:
        (WebCore::Node::shouldUseInputMethod):
        * dom/Node.h:
        * html/HTMLInputElement.cpp:
        (WebCore::HTMLInputElement::shouldUseInputMethod):
        * html/HTMLInputElement.h:
        * html/HTMLTextAreaElement.cpp:
        (WebCore::HTMLTextAreaElement::shouldUseInputMethod):
        * html/HTMLTextAreaElement.h:
        * page/FocusController.cpp:
        (WebCore::FocusController::setFocusedNode):
        * platform/graphics/svg/SVGImageEmptyClients.h:
        (WebCore::SVGEmptyEditorClient::setInputMethodState):

WebKit:

        Reviewed by Sam.

        <rdar://problem/5344848> IME is incorrectly used for key events when on non-editable regions

        EditorClient::setInputMethodState stub

        * WebCoreSupport/WebEditorClient.h:
        * WebCoreSupport/WebEditorClient.mm:
        (WebEditorClient::setInputMethodState):

WebKitQt:

        Reviewed by Sam.

        <rdar://problem/5344848> IME is incorrectly used for key events when on non-editable regions

        EditorClient::setInputMethodState stub

        * WebCoreSupport/EditorClientQt.cpp:
        (WebCore::EditorClientQt::setInputMethodState):
        * WebCoreSupport/EditorClientQt.h:

win:

        Reviewed by Sam.

        <rdar://problem/5344848> IME is incorrectly used for key events when on non-editable regions

        When focusing a password field or a non-editable element we disassociate any IME that may have
        been active, and reassociate should a non-password editable element is focused.

        This makes password input with an IME active simpler, and brings our IME behaviour in line with
        IE.

        * WebEditorClient.cpp:
        (WebEditorClient::setInputMethodState):
        * WebEditorClient.h:
        * WebView.cpp:
        (IMMDict::IMMDict):
        (WebView::setInputMethodState):
        * WebView.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@25345 268f45cc-cd09-0410-ab3c-d52691b4dbfc
24 files changed:
WebCore/ChangeLog
WebCore/bridge/EditorClient.h
WebCore/dom/Node.cpp
WebCore/dom/Node.h
WebCore/html/HTMLInputElement.cpp
WebCore/html/HTMLInputElement.h
WebCore/html/HTMLTextAreaElement.cpp
WebCore/html/HTMLTextAreaElement.h
WebCore/page/FocusController.cpp
WebCore/platform/graphics/svg/SVGImageEmptyClients.h
WebKit/ChangeLog
WebKit/WebCoreSupport/WebEditorClient.h
WebKit/WebCoreSupport/WebEditorClient.mm
WebKit/gtk/ChangeLog
WebKit/gtk/WebCoreSupport/EditorClientGtk.cpp
WebKit/gtk/WebCoreSupport/EditorClientGtk.h
WebKit/win/ChangeLog
WebKit/win/WebEditorClient.cpp
WebKit/win/WebEditorClient.h
WebKit/win/WebView.cpp
WebKit/win/WebView.h
WebKitQt/ChangeLog
WebKitQt/WebCoreSupport/EditorClientQt.cpp
WebKitQt/WebCoreSupport/EditorClientQt.h