Changeset 80177 in webkit
- Timestamp:
- Mar 2, 2011 3:44:51 PM (13 years ago)
- Location:
- trunk/Source
- Files:
-
- 13 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebCore/ChangeLog
r80174 r80177 1 2011-03-02 Daniel Cheng <dcheng@chromium.org> 2 3 Revert frame-specific WebClipboard changes 4 https://bugs.webkit.org/show_bug.cgi?id=55617 5 6 This code is no longer needed since we've decided to use the original 7 approach to copy/paste drag/drop handling in ClipboardChromium. 8 9 No new tests because no functionality changes. 10 11 * platform/chromium/ChromiumDataObject.cpp: 12 (WebCore::ChromiumDataObject::createReadable): 13 * platform/chromium/ChromiumDataObject.h: 14 * platform/chromium/ClipboardChromium.cpp: 15 (WebCore::ClipboardChromium::create): 16 * platform/chromium/PlatformBridge.h: 17 * platform/chromium/ReadableDataObject.cpp: 18 (WebCore::ReadableDataObject::create): 19 (WebCore::ReadableDataObject::ReadableDataObject): 20 (WebCore::ReadableDataObject::getData): 21 (WebCore::ReadableDataObject::urlTitle): 22 (WebCore::ReadableDataObject::htmlBaseUrl): 23 (WebCore::ReadableDataObject::filenames): 24 (WebCore::ReadableDataObject::ensureTypeCacheInitialized): 25 * platform/chromium/ReadableDataObject.h: 26 1 27 2011-03-02 Tony Chang <tony@chromium.org> 2 28 -
trunk/Source/WebCore/platform/chromium/ChromiumDataObject.cpp
r77687 r80177 57 57 } 58 58 59 PassRefPtr<ChromiumDataObject> ChromiumDataObject::createReadable( const Frame* frame,Clipboard::ClipboardType clipboardType)60 { 61 return adoptRef(new ChromiumDataObject(ReadableDataObject::create( frame,clipboardType)));59 PassRefPtr<ChromiumDataObject> ChromiumDataObject::createReadable(Clipboard::ClipboardType clipboardType) 60 { 61 return adoptRef(new ChromiumDataObject(ReadableDataObject::create(clipboardType))); 62 62 } 63 63 -
trunk/Source/WebCore/platform/chromium/ChromiumDataObject.h
r77687 r80177 42 42 public: 43 43 static PassRefPtr<ChromiumDataObject> create(PassRefPtr<ChromiumDataObjectLegacy> data); 44 static PassRefPtr<ChromiumDataObject> createReadable( const Frame*,Clipboard::ClipboardType);44 static PassRefPtr<ChromiumDataObject> createReadable(Clipboard::ClipboardType); 45 45 static PassRefPtr<ChromiumDataObject> createWritable(Clipboard::ClipboardType); 46 46 -
trunk/Source/WebCore/platform/chromium/ClipboardChromium.cpp
r77687 r80177 92 92 policy == ClipboardWritable ? 93 93 ChromiumDataObject::createWritable(clipboardType) : 94 ChromiumDataObject::createReadable( frame,clipboardType);94 ChromiumDataObject::createReadable(clipboardType); 95 95 return adoptRef(new ClipboardChromium(clipboardType, dataObject, policy, frame)); 96 96 } -
trunk/Source/WebCore/platform/chromium/PlatformBridge.h
r78721 r80177 110 110 111 111 // Interface for handling copy and paste, drag and drop, and selection copy. 112 static HashSet<String> clipboardReadAvailableTypes( const Frame*,PasteboardPrivate::ClipboardBuffer, bool* containsFilenames);113 static bool clipboardReadData( const Frame*,PasteboardPrivate::ClipboardBuffer, const String& type, String& data, String& metadata);114 static Vector<String> clipboardReadFilenames( const Frame*,PasteboardPrivate::ClipboardBuffer);112 static HashSet<String> clipboardReadAvailableTypes(PasteboardPrivate::ClipboardBuffer, bool* containsFilenames); 113 static bool clipboardReadData(PasteboardPrivate::ClipboardBuffer, const String& type, String& data, String& metadata); 114 static Vector<String> clipboardReadFilenames(PasteboardPrivate::ClipboardBuffer); 115 115 116 116 // Cookies ------------------------------------------------------------ -
trunk/Source/WebCore/platform/chromium/ReadableDataObject.cpp
r77687 r80177 44 44 } 45 45 46 PassRefPtr<ReadableDataObject> ReadableDataObject::create( const Frame* frame,Clipboard::ClipboardType clipboardType)46 PassRefPtr<ReadableDataObject> ReadableDataObject::create(Clipboard::ClipboardType clipboardType) 47 47 { 48 return adoptRef(new ReadableDataObject( frame,clipboardType));48 return adoptRef(new ReadableDataObject(clipboardType)); 49 49 } 50 50 51 ReadableDataObject::ReadableDataObject(const Frame* frame, Clipboard::ClipboardType clipboardType) 52 : m_frame(frame) 53 , m_clipboardType(clipboardType) 51 ReadableDataObject::ReadableDataObject(Clipboard::ClipboardType clipboardType) 52 : m_clipboardType(clipboardType) 54 53 , m_containsFilenames(false) 55 54 , m_isTypeCacheInitialized(false) … … 95 94 } 96 95 succeeded = PlatformBridge::clipboardReadData( 97 m_frame,clipboardBuffer(m_clipboardType), type, data, ignoredMetadata);96 clipboardBuffer(m_clipboardType), type, data, ignoredMetadata); 98 97 return data; 99 98 } … … 104 103 String urlTitle; 105 104 PlatformBridge::clipboardReadData( 106 m_frame,clipboardBuffer(m_clipboardType), mimeTypeTextURIList, ignoredData, urlTitle);105 clipboardBuffer(m_clipboardType), mimeTypeTextURIList, ignoredData, urlTitle); 107 106 return urlTitle; 108 107 } … … 113 112 String htmlBaseUrl; 114 113 PlatformBridge::clipboardReadData( 115 m_frame,clipboardBuffer(m_clipboardType), mimeTypeTextHTML, ignoredData, htmlBaseUrl);114 clipboardBuffer(m_clipboardType), mimeTypeTextHTML, ignoredData, htmlBaseUrl); 116 115 return KURL(ParsedURLString, htmlBaseUrl); 117 116 } … … 125 124 Vector<String> ReadableDataObject::filenames() const 126 125 { 127 return PlatformBridge::clipboardReadFilenames( m_frame,clipboardBuffer(m_clipboardType));126 return PlatformBridge::clipboardReadFilenames(clipboardBuffer(m_clipboardType)); 128 127 } 129 128 … … 134 133 135 134 m_types = PlatformBridge::clipboardReadAvailableTypes( 136 m_frame,clipboardBuffer(m_clipboardType), &m_containsFilenames);135 clipboardBuffer(m_clipboardType), &m_containsFilenames); 137 136 m_isTypeCacheInitialized = true; 138 137 } -
trunk/Source/WebCore/platform/chromium/ReadableDataObject.h
r77687 r80177 45 45 class ReadableDataObject : public RefCounted<ReadableDataObject> { 46 46 public: 47 static PassRefPtr<ReadableDataObject> create( const Frame*,Clipboard::ClipboardType);47 static PassRefPtr<ReadableDataObject> create(Clipboard::ClipboardType); 48 48 49 49 bool hasData() const; … … 58 58 59 59 private: 60 explicit ReadableDataObject( const Frame*,Clipboard::ClipboardType);60 explicit ReadableDataObject(Clipboard::ClipboardType); 61 61 62 62 // This isn't always const... but most of the time it is. 63 63 void ensureTypeCacheInitialized() const; 64 65 // The owner frame. Used to send IPCs back to the correspdonging view via WebFrameClient.66 const Frame* m_frame;67 64 68 65 Clipboard::ClipboardType m_clipboardType; -
trunk/Source/WebKit/chromium/ChangeLog
r80174 r80177 1 2011-03-02 Daniel Cheng <dcheng@chromium.org> 2 3 Revert frame-specific WebClipboard changes 4 https://bugs.webkit.org/show_bug.cgi?id=55617 5 6 This code is no longer needed since we've decided to use the original 7 approach to copy/paste drag/drop handling in ClipboardChromium. 8 9 * public/WebFrameClient.h: 10 * src/PlatformBridge.cpp: 11 (WebCore::PlatformBridge::clipboardReadAvailableTypes): 12 (WebCore::PlatformBridge::clipboardReadData): 13 (WebCore::PlatformBridge::clipboardReadFilenames): 14 * src/WebFrameImpl.cpp: 15 (WebKit::WebFrameImpl::fromFrame): 16 * src/WebFrameImpl.h: 17 * src/WebViewImpl.cpp: 18 (WebKit::WebViewImpl::dragTargetDragEnterNew): 19 1 20 2011-03-02 Tony Chang <tony@chromium.org> 2 21 -
trunk/Source/WebKit/chromium/public/WebFrameClient.h
r77687 r80177 42 42 class WebApplicationCacheHost; 43 43 class WebApplicationCacheHostClient; 44 class WebClipboard;45 44 class WebCookieJar; 46 45 class WebDataSource; … … 90 89 virtual WebCookieJar* cookieJar(WebFrame*) { return 0; } 91 90 92 // A frame specific clipboard. May return null, in which case the caller93 // should assume there is no data in the clipboard.94 virtual WebClipboard* clipboard() { return 0; }95 96 91 97 92 // General notifications ----------------------------------------------- -
trunk/Source/WebKit/chromium/src/PlatformBridge.cpp
r78721 r80177 133 133 } 134 134 135 static WebClipboard* getClipboard(const Frame* frame)136 {137 WebFrameImpl* frameImpl = WebFrameImpl::fromFrame(frame);138 if (!frameImpl || !frameImpl->client())139 return 0;140 return frameImpl->client()->clipboard();141 }142 143 135 static WebCookieJar* getCookieJar(const Document* document) 144 136 { … … 226 218 227 219 HashSet<String> PlatformBridge::clipboardReadAvailableTypes( 228 const Frame* frame, 229 PasteboardPrivate::ClipboardBuffer buffer, 230 bool* containsFilenames) 231 { 232 WebClipboard* clipboard = getClipboard(frame); 233 if (!clipboard) 234 return HashSet<String>(); 235 236 WebVector<WebString> result = clipboard->readAvailableTypes( 220 PasteboardPrivate::ClipboardBuffer buffer, bool* containsFilenames) 221 { 222 WebVector<WebString> result = webKitClient()->clipboard()->readAvailableTypes( 237 223 static_cast<WebClipboard::Buffer>(buffer), containsFilenames); 238 224 HashSet<String> types; … … 242 228 } 243 229 244 bool PlatformBridge::clipboardReadData(const Frame* frame, 245 PasteboardPrivate::ClipboardBuffer buffer, 246 const String& type, 247 String& data, 248 String& metadata) 249 { 250 WebClipboard* clipboard = getClipboard(frame); 251 if (!clipboard) 252 return false; 253 230 bool PlatformBridge::clipboardReadData(PasteboardPrivate::ClipboardBuffer buffer, 231 const String& type, String& data, String& metadata) 232 { 254 233 WebString resultData; 255 234 WebString resultMetadata; 256 bool succeeded = clipboard->readData(235 bool succeeded = webKitClient()->clipboard()->readData( 257 236 static_cast<WebClipboard::Buffer>(buffer), type, &resultData, &resultMetadata); 258 237 if (succeeded) { … … 263 242 } 264 243 265 Vector<String> PlatformBridge::clipboardReadFilenames(const Frame* frame, 266 PasteboardPrivate::ClipboardBuffer buffer) 267 { 268 WebClipboard* clipboard = getClipboard(frame); 269 if (!clipboard) 270 return Vector<String>(); 271 272 WebVector<WebString> result = clipboard->readFilenames( 244 Vector<String> PlatformBridge::clipboardReadFilenames(PasteboardPrivate::ClipboardBuffer buffer) 245 { 246 WebVector<WebString> result = webKitClient()->clipboard()->readFilenames( 273 247 static_cast<WebClipboard::Buffer>(buffer)); 274 248 Vector<String> convertedResult; -
trunk/Source/WebKit/chromium/src/WebFrameImpl.cpp
r79793 r80177 1964 1964 } 1965 1965 1966 WebFrameImpl* WebFrameImpl::fromFrame( constFrame* frame)1966 WebFrameImpl* WebFrameImpl::fromFrame(Frame* frame) 1967 1967 { 1968 1968 if (!frame) -
trunk/Source/WebKit/chromium/src/WebFrameImpl.h
r79793 r80177 212 212 void createFrameView(); 213 213 214 static WebFrameImpl* fromFrame( const WebCore::Frame*);214 static WebFrameImpl* fromFrame(WebCore::Frame* frame); 215 215 static WebFrameImpl* fromFrameOwnerElement(WebCore::Element* element); 216 216 -
trunk/Source/WebKit/chromium/src/WebViewImpl.cpp
r79703 r80177 1780 1780 ASSERT(!m_currentDragData.get()); 1781 1781 1782 m_currentDragData = ChromiumDataObject::createReadable( m_page->mainFrame(),Clipboard::DragAndDrop);1782 m_currentDragData = ChromiumDataObject::createReadable(Clipboard::DragAndDrop); 1783 1783 m_dragIdentity = identity; 1784 1784 m_operationsAllowed = operationsAllowed;
Note: See TracChangeset
for help on using the changeset viewer.