OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #import "content/browser/web_contents/web_drag_source_mac.h" | 5 #import "content/browser/web_contents/web_drag_source_mac.h" |
6 | 6 |
7 #include <sys/param.h> | 7 #include <sys/param.h> |
8 | 8 |
9 #include "base/bind.h" | 9 #include "base/bind.h" |
10 #include "base/files/file_path.h" | 10 #include "base/files/file_path.h" |
(...skipping 129 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
140 contentsView_ = nil; | 140 contentsView_ = nil; |
141 } | 141 } |
142 | 142 |
143 - (NSDragOperation)draggingSourceOperationMaskForLocal:(BOOL)isLocal { | 143 - (NSDragOperation)draggingSourceOperationMaskForLocal:(BOOL)isLocal { |
144 return dragOperationMask_; | 144 return dragOperationMask_; |
145 } | 145 } |
146 | 146 |
147 - (void)lazyWriteToPasteboard:(NSPasteboard*)pboard forType:(NSString*)type { | 147 - (void)lazyWriteToPasteboard:(NSPasteboard*)pboard forType:(NSString*)type { |
148 // NSHTMLPboardType requires the character set to be declared. Otherwise, it | 148 // NSHTMLPboardType requires the character set to be declared. Otherwise, it |
149 // assumes US-ASCII. Awesome. | 149 // assumes US-ASCII. Awesome. |
150 const base::string16 kHtmlHeader = ASCIIToUTF16( | 150 const base::string16 kHtmlHeader = base::ASCIIToUTF16( |
151 "<meta http-equiv=\"Content-Type\" content=\"text/html;charset=UTF-8\">"); | 151 "<meta http-equiv=\"Content-Type\" content=\"text/html;charset=UTF-8\">"); |
152 | 152 |
153 // Be extra paranoid; avoid crashing. | 153 // Be extra paranoid; avoid crashing. |
154 if (!dropData_) { | 154 if (!dropData_) { |
155 NOTREACHED(); | 155 NOTREACHED(); |
156 return; | 156 return; |
157 } | 157 } |
158 | 158 |
159 // HTML. | 159 // HTML. |
160 if ([type isEqualToString:NSHTMLPboardType] || | 160 if ([type isEqualToString:NSHTMLPboardType] || |
(...skipping 229 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
390 base::FilePath fileName; | 390 base::FilePath fileName; |
391 if (content::ParseDownloadMetadata( | 391 if (content::ParseDownloadMetadata( |
392 dropData_->download_metadata, | 392 dropData_->download_metadata, |
393 &mimeType16, | 393 &mimeType16, |
394 &fileName, | 394 &fileName, |
395 &downloadURL_)) { | 395 &downloadURL_)) { |
396 // Generate the file name based on both mime type and proposed file | 396 // Generate the file name based on both mime type and proposed file |
397 // name. | 397 // name. |
398 std::string defaultName = | 398 std::string defaultName = |
399 content::GetContentClient()->browser()->GetDefaultDownloadName(); | 399 content::GetContentClient()->browser()->GetDefaultDownloadName(); |
400 mimeType = UTF16ToUTF8(mimeType16); | 400 mimeType = base::UTF16ToUTF8(mimeType16); |
401 downloadFileName_ = | 401 downloadFileName_ = |
402 net::GenerateFileName(downloadURL_, | 402 net::GenerateFileName(downloadURL_, |
403 std::string(), | 403 std::string(), |
404 std::string(), | 404 std::string(), |
405 fileName.value(), | 405 fileName.value(), |
406 mimeType, | 406 mimeType, |
407 defaultName); | 407 defaultName); |
408 } | 408 } |
409 } | 409 } |
410 | 410 |
(...skipping 69 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
480 - (NSImage*)dragImage { | 480 - (NSImage*)dragImage { |
481 if (dragImage_) | 481 if (dragImage_) |
482 return dragImage_; | 482 return dragImage_; |
483 | 483 |
484 // Default to returning a generic image. | 484 // Default to returning a generic image. |
485 return content::GetContentClient()->GetNativeImageNamed( | 485 return content::GetContentClient()->GetNativeImageNamed( |
486 IDR_DEFAULT_FAVICON).ToNSImage(); | 486 IDR_DEFAULT_FAVICON).ToNSImage(); |
487 } | 487 } |
488 | 488 |
489 @end // @implementation WebDragSource (Private) | 489 @end // @implementation WebDragSource (Private) |
OLD | NEW |