OLD | NEW |
1 // Copyright (c) 2009 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2009 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 #ifndef BASE_MIME_UTIL_H_ | 5 #ifndef BASE_MIME_UTIL_H_ |
6 #define BASE_MIME_UTIL_H_ | 6 #define BASE_MIME_UTIL_H_ |
7 | 7 |
8 #include <string> | 8 #include <string> |
9 | 9 |
10 class FilePath; | 10 class FilePath; |
11 | 11 |
12 namespace mime_util { | 12 namespace mime_util { |
13 | 13 |
14 // Gets the mime type for a file based on its filename. The file path does not | 14 // Gets the mime type for a file based on its filename. The file path does not |
15 // have to exist. Please note because it doesn't touch the disk, this does not | 15 // have to exist. Please note because it doesn't touch the disk, this does not |
16 // work for directories. | 16 // work for directories. |
17 // If the mime type is unknown, this will return application/octet-stream. | 17 // If the mime type is unknown, this will return application/octet-stream. |
18 std::string GetFileMimeType(const FilePath& filepath); | 18 std::string GetFileMimeType(const FilePath& filepath); |
19 | 19 |
20 // Get the mime type for a byte vector. | 20 // Get the mime type for a byte vector. |
21 std::string GetDataMimeType(const std::string& data); | 21 std::string GetDataMimeType(const std::string& data); |
22 | 22 |
| 23 #if defined(OS_LINUX) |
| 24 // This detects the current GTK theme by calling gtk_settings_get_default(). |
| 25 // It should only be executed on the UI thread and must be called before |
| 26 // GetMimeIcon(). |
| 27 void DetectGtkTheme(); |
| 28 #endif |
| 29 |
23 // Gets the file name for an icon given the mime type and icon pixel size. | 30 // Gets the file name for an icon given the mime type and icon pixel size. |
24 // Where an icon is a square image of |size| x |size|. | 31 // Where an icon is a square image of |size| x |size|. |
25 // This will try to find the closest matching icon. If that's not available, | 32 // This will try to find the closest matching icon. If that's not available, |
26 // then a generic icon, and finally an empty FilePath if all else fails. | 33 // then a generic icon, and finally an empty FilePath if all else fails. |
27 FilePath GetMimeIcon(const std::string& mime_type, size_t size); | 34 FilePath GetMimeIcon(const std::string& mime_type, size_t size); |
28 | 35 |
29 } // namespace mime_util | 36 } // namespace mime_util |
30 | 37 |
31 #endif // BASE_MIME_UTIL_H_ | 38 #endif // BASE_MIME_UTIL_H_ |
OLD | NEW |