diff options
author | viettrungluu@chromium.org <viettrungluu@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-12-18 22:56:08 +0000 |
---|---|---|
committer | viettrungluu@chromium.org <viettrungluu@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-12-18 22:56:08 +0000 |
commit | 2a7eb61d12a13bb4f0ca38dd855ca072d4fe5578 (patch) | |
tree | b5a94d854550b178196c3d9401a03bbcb5d9781f /chrome/browser/cocoa/tab_strip_view.mm | |
parent | d4b1bb01895a7c5798365fddbcb4996ea90cc38d (diff) | |
download | chromium_src-2a7eb61d12a13bb4f0ca38dd855ca072d4fe5578.zip chromium_src-2a7eb61d12a13bb4f0ca38dd855ca072d4fe5578.tar.gz chromium_src-2a7eb61d12a13bb4f0ca38dd855ca072d4fe5578.tar.bz2 |
Mac: implement DnD of URLs onto Omnibox.
(DnD of text coming in another patch.)
BUG=24631
TEST=Select a URL/link/file from somewhere (a link in a browser, a URL in text, a file from the desktop, etc.) and drag it to the Omnibox in a Chromium browser window; the contents of the Omnibox should be selected to indicate that a drop would replace its contents; dropping should navigate to the appropriate location.
Review URL: http://codereview.chromium.org/481012
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@34998 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/cocoa/tab_strip_view.mm')
-rw-r--r-- | chrome/browser/cocoa/tab_strip_view.mm | 17 |
1 files changed, 13 insertions, 4 deletions
diff --git a/chrome/browser/cocoa/tab_strip_view.mm b/chrome/browser/cocoa/tab_strip_view.mm index 3eeef0a..a5435e9 100644 --- a/chrome/browser/cocoa/tab_strip_view.mm +++ b/chrome/browser/cocoa/tab_strip_view.mm @@ -4,6 +4,8 @@ #import "chrome/browser/cocoa/tab_strip_view.h" +#import "chrome/browser/cocoa/browser_window_controller.h" +#import "chrome/browser/cocoa/tab_strip_controller.h" #include "base/logging.h" @implementation TabStripView @@ -136,22 +138,29 @@ lastMouseUp_ = (clickCount == 1) ? timestamp : -1000.0; } -// Required by |URLDropTargetHandler|. +// (URLDropTarget protocol) +- (id<URLDropTargetController>)urlDropController { + BrowserWindowController* windowController = [[self window] windowController]; + DCHECK([windowController isKindOfClass:[BrowserWindowController class]]); + return [windowController tabStripController]; +} + +// (URLDropTarget protocol) - (NSDragOperation)draggingEntered:(id<NSDraggingInfo>)sender { return [dropHandler_ draggingEntered:sender]; } -// Required by |URLDropTargetHandler|. +// (URLDropTarget protocol) - (NSDragOperation)draggingUpdated:(id<NSDraggingInfo>)sender { return [dropHandler_ draggingUpdated:sender]; } -// Required by |URLDropTargetHandler|. +// (URLDropTarget protocol) - (void)draggingExited:(id<NSDraggingInfo>)sender { return [dropHandler_ draggingExited:sender]; } -// Required by |URLDropTargetHandler|. +// (URLDropTarget protocol) - (BOOL)performDragOperation:(id<NSDraggingInfo>)sender { return [dropHandler_ performDragOperation:sender]; } |