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