Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(112)

Side by Side Diff: chrome/browser/file_select_helper.cc

Issue 13165005: Move FileEnumerator to its own file, do some refactoring. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: merge, fixes Created 7 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
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 #include "chrome/browser/file_select_helper.h" 5 #include "chrome/browser/file_select_helper.h"
6 6
7 #include <string> 7 #include <string>
8 8
9 #include "base/bind.h" 9 #include "base/bind.h"
10 #include "base/file_util.h" 10 #include "base/file_util.h"
11 #include "base/files/file_enumerator.h"
11 #include "base/platform_file.h" 12 #include "base/platform_file.h"
12 #include "base/string_util.h" 13 #include "base/string_util.h"
13 #include "base/strings/string_split.h" 14 #include "base/strings/string_split.h"
14 #include "base/utf_string_conversions.h" 15 #include "base/utf_string_conversions.h"
15 #include "chrome/browser/platform_util.h" 16 #include "chrome/browser/platform_util.h"
16 #include "chrome/browser/profiles/profile.h" 17 #include "chrome/browser/profiles/profile.h"
17 #include "chrome/browser/ui/browser.h" 18 #include "chrome/browser/ui/browser.h"
18 #include "chrome/browser/ui/browser_list.h" 19 #include "chrome/browser/ui/browser_list.h"
19 #include "chrome/browser/ui/chrome_select_file_policy.h" 20 #include "chrome/browser/ui/chrome_select_file_policy.h"
20 #include "content/public/browser/browser_thread.h" 21 #include "content/public/browser/browser_thread.h"
(...skipping 191 matching lines...) Expand 10 before | Expand all | Expand 10 after
212 } 213 }
213 214
214 void FileSelectHelper::OnListFile( 215 void FileSelectHelper::OnListFile(
215 int id, 216 int id,
216 const net::DirectoryLister::DirectoryListerData& data) { 217 const net::DirectoryLister::DirectoryListerData& data) {
217 ActiveDirectoryEnumeration* entry = directory_enumerations_[id]; 218 ActiveDirectoryEnumeration* entry = directory_enumerations_[id];
218 219
219 // Directory upload returns directories via a "." file, so that 220 // Directory upload returns directories via a "." file, so that
220 // empty directories are included. This util call just checks 221 // empty directories are included. This util call just checks
221 // the flags in the structure; there's no file I/O going on. 222 // the flags in the structure; there's no file I/O going on.
222 if (file_util::FileEnumerator::IsDirectory(data.info)) 223 if (data.info.IsDirectory())
223 entry->results_.push_back(data.path.Append(FILE_PATH_LITERAL("."))); 224 entry->results_.push_back(data.path.Append(FILE_PATH_LITERAL(".")));
224 else 225 else
225 entry->results_.push_back(data.path); 226 entry->results_.push_back(data.path);
226 } 227 }
227 228
228 void FileSelectHelper::OnListDone(int id, int error) { 229 void FileSelectHelper::OnListDone(int id, int error) {
229 // This entry needs to be cleaned up when this function is done. 230 // This entry needs to be cleaned up when this function is done.
230 scoped_ptr<ActiveDirectoryEnumeration> entry(directory_enumerations_[id]); 231 scoped_ptr<ActiveDirectoryEnumeration> entry(directory_enumerations_[id]);
231 directory_enumerations_.erase(id); 232 directory_enumerations_.erase(id);
232 if (!entry->rvh_) 233 if (!entry->rvh_)
(...skipping 261 matching lines...) Expand 10 before | Expand all | Expand 10 after
494 // A 1 character accept type will always be invalid (either a "." in the case 495 // A 1 character accept type will always be invalid (either a "." in the case
495 // of an extension or a "/" in the case of a MIME type). 496 // of an extension or a "/" in the case of a MIME type).
496 std::string unused; 497 std::string unused;
497 if (accept_type.length() <= 1 || 498 if (accept_type.length() <= 1 ||
498 StringToLowerASCII(accept_type) != accept_type || 499 StringToLowerASCII(accept_type) != accept_type ||
499 TrimWhitespaceASCII(accept_type, TRIM_ALL, &unused) != TRIM_NONE) { 500 TrimWhitespaceASCII(accept_type, TRIM_ALL, &unused) != TRIM_NONE) {
500 return false; 501 return false;
501 } 502 }
502 return true; 503 return true;
503 } 504 }
OLDNEW
« no previous file with comments | « chrome/browser/extensions/sandboxed_unpacker_unittest.cc ('k') | chrome/browser/history/expire_history_backend.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698