WebKit:
authorandersca@apple.com <andersca@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sat, 10 May 2008 00:40:41 +0000 (00:40 +0000)
committerandersca@apple.com <andersca@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sat, 10 May 2008 00:40:41 +0000 (00:40 +0000)
commit0f8ecf1ef91ff02c1aaa2bfb79074c322b593d29
treeaab445a502a36c8d7d08678311649d931b2ec9f0
parent6fe5aac0fca5473cd506521e930c560dbb960c8c
WebKit:

2008-05-09  Anders Carlsson  <andersca@apple.com>

        Reviewed by Oliver.

        <rdar://problem/5774495> Make Unicode text input possible in Netscape-style plug-ins

        Add nptextinput.h as a public header.

        * WebKit.xcodeproj/project.pbxproj:

WebKit/mac:

2008-05-09  Anders Carlsson  <andersca@apple.com>

        Reviewed by Oliver.

        <rdar://problem/5774495> Make Unicode text input possible in Netscape-style plug-ins

        * Plugins/WebBaseNetscapePluginView.h:
        * Plugins/WebBaseNetscapePluginView.mm:
        (-[WebBaseNetscapePluginView start]):
        Get the plug-in text input vtable pointer.

        (-[WebBaseNetscapePluginView stop]):
        Set the plug-in text input vtable pointer to 0.

        (-[WebBaseNetscapePluginView inputContext]):
        Return 0 for Carbon plug-ins since we don't want Cocoa to handle text input for them.

        (-[WebBaseNetscapePluginView hasMarkedText]):
        (-[WebBaseNetscapePluginView insertText:]):
        (-[WebBaseNetscapePluginView markedRange]):
        (-[WebBaseNetscapePluginView selectedRange]):
        (-[WebBaseNetscapePluginView setMarkedText:selectedRange:]):
        (-[WebBaseNetscapePluginView unmarkText]):
        (-[WebBaseNetscapePluginView validAttributesForMarkedText]):
        (-[WebBaseNetscapePluginView attributedSubstringFromRange:]):
        (-[WebBaseNetscapePluginView characterIndexForPoint:]):
        (-[WebBaseNetscapePluginView doCommandBySelector:]):
        (-[WebBaseNetscapePluginView firstRectForCharacterRange:]):
        (-[WebBaseNetscapePluginView conversationIdentifier]):
        Implement NSTextInput and call into the plug-in text input vtable.

        (browserTextInputFuncs):
        New method which returns the browser input vtable.

        (-[WebBaseNetscapePluginView getVariable:value:]):
        Support getting the browser input vtable pointer.

        * Plugins/WebNetscapePluginEventHandlerCocoa.h:
        * Plugins/WebNetscapePluginEventHandlerCocoa.mm:
        (WebNetscapePluginEventHandlerCocoa::keyDown):
        (WebNetscapePluginEventHandlerCocoa::sendKeyEvent):
        If the plug-in returns 0 when a NPCocoaEventKeyDown is passed to NPP_HandleEvent,
        it means that the event should be passed on to the input manager.

        * Plugins/npapi.mm:
        (NPN_MarkedTextAbandoned):
        (NPN_MarkedTextSelectionChanged):
        Add implementations of browser input method methods.

        * Plugins/nptextinput.h: Added.
        Add file with new text input API.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33018 268f45cc-cd09-0410-ab3c-d52691b4dbfc
WebKit/ChangeLog
WebKit/WebKit.xcodeproj/project.pbxproj
WebKit/mac/ChangeLog
WebKit/mac/Plugins/WebBaseNetscapePluginView.h
WebKit/mac/Plugins/WebBaseNetscapePluginView.mm
WebKit/mac/Plugins/WebNetscapePluginEventHandlerCocoa.h
WebKit/mac/Plugins/WebNetscapePluginEventHandlerCocoa.mm
WebKit/mac/Plugins/npapi.mm
WebKit/mac/Plugins/nptextinput.h [new file with mode: 0644]