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_LINUX_UTIL_H__ | 5 #ifndef BASE_LINUX_UTIL_H__ |
6 #define BASE_LINUX_UTIL_H__ | 6 #define BASE_LINUX_UTIL_H__ |
7 | 7 |
8 #include <stdint.h> | 8 #include <stdint.h> |
9 | 9 |
10 #include <string> | 10 #include <string> |
11 | 11 |
12 namespace base { | 12 namespace base { |
13 | 13 |
14 // Makes a copy of |pixels| with the ordering changed from BGRA to RGBA. | 14 // Makes a copy of |pixels| with the ordering changed from BGRA to RGBA. |
15 // The caller is responsible for free()ing the data. If |stride| is 0, | 15 // The caller is responsible for free()ing the data. If |stride| is 0, |
16 // it's assumed to be 4 * |width|. | 16 // it's assumed to be 4 * |width|. |
17 uint8_t* BGRAToRGBA(const uint8_t* pixels, int width, int height, int stride); | 17 uint8_t* BGRAToRGBA(const uint8_t* pixels, int width, int height, int stride); |
18 | 18 |
19 // Get the Linux Distro if we can, or return "Unknown", similar to | 19 // Get the Linux Distro if we can, or return "Unknown", similar to |
20 // GetWinVersion() in base/win_util.h. | 20 // GetWinVersion() in base/win_util.h. |
21 std::string GetLinuxDistro(); | 21 std::string GetLinuxDistro(); |
22 | 22 |
| 23 // These are used to derive mocks for unittests. |
| 24 class EnvironmentVariableGetter { |
| 25 public: |
| 26 virtual ~EnvironmentVariableGetter() {} |
| 27 // Gets an environment variable's value and stores it in |
| 28 // result. Returns false if the key is unset. |
| 29 virtual bool Getenv(const char* variable_name, std::string* result) = 0; |
| 30 |
| 31 // Create an instance of EnvironmentVariableGetter |
| 32 static EnvironmentVariableGetter* Create(); |
| 33 }; |
| 34 |
| 35 // Return true if we appear to be running under Gnome and should attempt to use |
| 36 // some prefrences from the desktop environment (eg proxy settings), |
| 37 // If someone adds support for other environments, this function could be |
| 38 // replaced with one that returns an enum so we an specify Gnome, KDE, etc. |
| 39 bool UseGnomeForSettings(EnvironmentVariableGetter* env_var_getter); |
| 40 |
23 } // namespace base | 41 } // namespace base |
24 | 42 |
25 #endif // BASE_LINUX_UTIL_H__ | 43 #endif // BASE_LINUX_UTIL_H__ |
OLD | NEW |