| OLD | NEW |
| 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 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 #include "chrome/browser/ui/views/tab_contents/tab_contents_drag_win.h" | 5 #include "chrome/browser/ui/views/tab_contents/tab_contents_drag_win.h" |
| 6 | 6 |
| 7 #include <windows.h> | 7 #include <windows.h> |
| 8 | 8 |
| 9 #include <string> | 9 #include <string> |
| 10 | 10 |
| (...skipping 212 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 223 | 223 |
| 224 void TabContentsDragWin::PrepareDragForFileContents( | 224 void TabContentsDragWin::PrepareDragForFileContents( |
| 225 const WebDropData& drop_data, ui::OSExchangeData* data) { | 225 const WebDropData& drop_data, ui::OSExchangeData* data) { |
| 226 // Images without ALT text will only have a file extension so we need to | 226 // Images without ALT text will only have a file extension so we need to |
| 227 // synthesize one from the provided extension and URL. | 227 // synthesize one from the provided extension and URL. |
| 228 FilePath file_name(drop_data.file_description_filename); | 228 FilePath file_name(drop_data.file_description_filename); |
| 229 file_name = file_name.BaseName().RemoveExtension(); | 229 file_name = file_name.BaseName().RemoveExtension(); |
| 230 if (file_name.value().empty()) { | 230 if (file_name.value().empty()) { |
| 231 // Retrieve the name from the URL. | 231 // Retrieve the name from the URL. |
| 232 file_name = FilePath( | 232 file_name = FilePath( |
| 233 net::GetSuggestedFilename(drop_data.url, "", "", "", string16())); | 233 net::GetSuggestedFilename(drop_data.url, "", "", "", "", string16())); |
| 234 if (file_name.value().size() + drop_data.file_extension.size() + 1 > | 234 if (file_name.value().size() + drop_data.file_extension.size() + 1 > |
| 235 MAX_PATH) { | 235 MAX_PATH) { |
| 236 file_name = FilePath(file_name.value().substr( | 236 file_name = FilePath(file_name.value().substr( |
| 237 0, MAX_PATH - drop_data.file_extension.size() - 2)); | 237 0, MAX_PATH - drop_data.file_extension.size() - 2)); |
| 238 } | 238 } |
| 239 } | 239 } |
| 240 file_name = file_name.ReplaceExtension(drop_data.file_extension); | 240 file_name = file_name.ReplaceExtension(drop_data.file_extension); |
| 241 data->SetFileContents(file_name, drop_data.file_contents); | 241 data->SetFileContents(file_name, drop_data.file_contents); |
| 242 } | 242 } |
| 243 | 243 |
| (...skipping 113 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 357 | 357 |
| 358 void TabContentsDragWin::OnDataObjectDisposed() { | 358 void TabContentsDragWin::OnDataObjectDisposed() { |
| 359 DCHECK(drag_drop_thread_id_ == base::PlatformThread::CurrentId()); | 359 DCHECK(drag_drop_thread_id_ == base::PlatformThread::CurrentId()); |
| 360 | 360 |
| 361 // The drag-and-drop thread is only closed after OLE is done with | 361 // The drag-and-drop thread is only closed after OLE is done with |
| 362 // DataObjectImpl. | 362 // DataObjectImpl. |
| 363 BrowserThread::PostTask( | 363 BrowserThread::PostTask( |
| 364 BrowserThread::UI, FROM_HERE, | 364 BrowserThread::UI, FROM_HERE, |
| 365 NewRunnableMethod(this, &TabContentsDragWin::CloseThread)); | 365 NewRunnableMethod(this, &TabContentsDragWin::CloseThread)); |
| 366 } | 366 } |
| OLD | NEW |