diff options
author | pinkerton@chromium.org <pinkerton@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-03-03 20:23:04 +0000 |
---|---|---|
committer | pinkerton@chromium.org <pinkerton@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-03-03 20:23:04 +0000 |
commit | 409993dec55a874e0659acf421a87070d450a262 (patch) | |
tree | 56569522458c403b04829d1ef803d5f93a888b2d /chrome/common/chrome_paths_mac.mm | |
parent | 32c147158f76e19aa22efa2a7b14d3f0e1e23a02 (diff) | |
download | chromium_src-409993dec55a874e0659acf421a87070d450a262.zip chromium_src-409993dec55a874e0659acf421a87070d450a262.tar.gz chromium_src-409993dec55a874e0659acf421a87070d450a262.tar.bz2 |
Implement some chrome path getters for Mac OS and un-comment their uses in the download manager. Move chrome_paths_mac from a .cc to a .mm to allow Cocoa.
Review URL: http://codereview.chromium.org/39041
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@10820 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/common/chrome_paths_mac.mm')
-rw-r--r-- | chrome/common/chrome_paths_mac.mm | 61 |
1 files changed, 61 insertions, 0 deletions
diff --git a/chrome/common/chrome_paths_mac.mm b/chrome/common/chrome_paths_mac.mm new file mode 100644 index 0000000..1e00bf9 --- /dev/null +++ b/chrome/common/chrome_paths_mac.mm @@ -0,0 +1,61 @@ +// Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#import "chrome/common/chrome_paths_internal.h" + +#import <Cocoa/Cocoa.h> + +#import "base/base_paths.h" +#import "base/file_path.h" +#import "base/logging.h" +#import "base/path_service.h" + +namespace chrome { + +bool GetDefaultUserDataDirectory(FilePath* result) { + if (!PathService::Get(base::DIR_LOCAL_APP_DATA, result)) + return false; + return true; +} + +bool GetUserDocumentsDirectory(FilePath* result) { + bool success = false; + NSArray* docArray = + NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, + NSUserDomainMask, + YES); + if ([docArray count] && result) { + *result = FilePath([[docArray objectAtIndex:0] fileSystemRepresentation]); + success = true; + } + return success; +} + +bool GetUserDownloadsDirectory(FilePath* result) { + bool success = false; + NSArray* docArray = + NSSearchPathForDirectoriesInDomains(NSDownloadsDirectory, + NSUserDomainMask, + YES); + if ([docArray count] && result) { + *result = FilePath([[docArray objectAtIndex:0] fileSystemRepresentation]); + success = true; + } + return success; +} + +bool GetUserDesktop(FilePath* result) { + bool success = false; + NSArray* docArray = + NSSearchPathForDirectoriesInDomains(NSDesktopDirectory, + NSUserDomainMask, + YES); + if ([docArray count] && result) { + *result = FilePath([[docArray objectAtIndex:0] fileSystemRepresentation]); + success = true; + } + return success; +} + +} // namespace chrome |