WebCore:
authorcblu <cblu@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sat, 12 Jun 2004 01:04:58 +0000 (01:04 +0000)
committercblu <cblu@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sat, 12 Jun 2004 01:04:58 +0000 (01:04 +0000)
commit5363ac5f4f0cee67bf9726d7a355041d13a07e69
tree99996f58cb88cc369d71cbf96bdb89112e8eb865
parent09cdccecb57fe4df6c4d4500b3970dcd3c9789d4
WebCore:

Support for WebKit drag & drop API.

        Reviewed by trey.

        * kwq/WebCoreBridge.h:
        * kwq/WebCoreBridge.mm:
        (-[WebCoreBridge _positionForPoint:]): new
        (-[WebCoreBridge moveDragCaretToPoint:]): call _positionForPoint
        (-[WebCoreBridge editableDOMRangeForPoint:]): new

WebKit:

Implemented the remainder of the drag & drop API.

        Reviewed by trey.

        * Misc.subproj/WebNSPasteboardExtras.h:
        * Misc.subproj/WebNSPasteboardExtras.m:
        (-[NSPasteboard _web_declareAndWriteDragImage:URL:title:archive:source:]): new
        * Misc.subproj/WebNSViewExtras.h:
        * Misc.subproj/WebNSViewExtras.m:
        (-[NSView _web_dragImage:rect:event:pasteboard:source:]): simplified, this method now just creates a drag image and starts the drag
        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge allowDHTMLDrag:UADrag:]): now calls _delegateDragSourceActionMask on WebHTMLView to interact with the delegate
        * WebView.subproj/WebDefaultUIDelegate.m:
        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView _startDraggingImage:at:operation:event:sourceIsDHTML:DHTMLWroteData:]): call new delegate method, cleaned-up a little
        (-[WebHTMLView draggingUpdatedWithDraggingInfo:actionMask:]): call drag caret methods on WebView instead of WebBridge so WebView can make sure only 1 HTML view has a drag cursor
        (-[WebHTMLView draggingCancelledWithDraggingInfo:]): ditto
        (-[WebHTMLView concludeDragForDraggingInfo:actionMask:]): ditto
        (-[WebHTMLView _delegateDragSourceActionMask]): new, gets drag source action mask from delegate
        * WebView.subproj/WebHTMLViewInternal.h:
        * WebView.subproj/WebImageView.h:
        * WebView.subproj/WebImageView.m:
        (-[WebImageView mouseDown:]): get the drag source action mask from the delegate
        (-[WebImageView mouseDragged:]): inform the delegate of the drag
        * WebView.subproj/WebView.m:
        (-[WebViewPrivate dealloc]): assert that dragCursorBridge is nil
        (-[WebView _close]): release dragCursorBridge
        (-[WebView _bridgeAtPoint:]): new
        (-[WebView editableDOMRangeForPoint:]): new API
        (-[WebView moveDragCaretToPoint:]): new API
        (-[WebView removeDragCaret]): new API
        (-[WebView _frameViewAtWindowPoint:]): moved so this can be called internally
        * WebView.subproj/WebViewInternal.h:
        * WebView.subproj/WebViewPrivate.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@6820 268f45cc-cd09-0410-ab3c-d52691b4dbfc
17 files changed:
WebCore/ChangeLog-2005-08-23
WebCore/kwq/WebCoreBridge.h
WebCore/kwq/WebCoreBridge.mm
WebKit/ChangeLog
WebKit/Misc.subproj/WebNSPasteboardExtras.h
WebKit/Misc.subproj/WebNSPasteboardExtras.m
WebKit/Misc.subproj/WebNSViewExtras.h
WebKit/Misc.subproj/WebNSViewExtras.m
WebKit/WebCoreSupport.subproj/WebBridge.m
WebKit/WebView.subproj/WebDefaultUIDelegate.m
WebKit/WebView.subproj/WebHTMLView.m
WebKit/WebView.subproj/WebHTMLViewInternal.h
WebKit/WebView.subproj/WebImageView.h
WebKit/WebView.subproj/WebImageView.m
WebKit/WebView.subproj/WebView.m
WebKit/WebView.subproj/WebViewInternal.h
WebKit/WebView.subproj/WebViewPrivate.h