15821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Copyright (c) 2012 The Chromium Authors. All rights reserved. 25821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be 35821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// found in the LICENSE file. 45821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 55821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "chrome/common/chrome_constants.h" 65821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 72a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include "base/files/file_path.h" 85821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 95821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#define FPL FILE_PATH_LITERAL 105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#if defined(OS_MACOSX) 125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#define CHROMIUM_PRODUCT_STRING "Chromium" 135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#if defined(GOOGLE_CHROME_BUILD) 145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#define PRODUCT_STRING "Google Chrome" 155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#elif defined(CHROMIUM_BUILD) 165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#define PRODUCT_STRING "Chromium" 175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#else 185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#error Unknown branding 195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif 205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif // defined(OS_MACOSX) 215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)namespace chrome { 235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)const char kChromeVersionEnvVar[] = "CHROME_VERSION"; 255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// The following should not be used for UI strings; they are meant 275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// for system strings only. UI changes should be made in the GRD. 285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// 295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// There are four constants used to locate the executable name and path: 305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// 315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// kBrowserProcessExecutableName 325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// kHelperProcessExecutableName 335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// kBrowserProcessExecutablePath 345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// kHelperProcessExecutablePath 355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// 365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// In one condition, our tests will be built using the Chrome branding 375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// though we want to actually execute a Chromium branded application. 385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// This happens for the reference build on Mac. To support that case, 395821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// we also include a Chromium version of each of the four constants and 405821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// in the UITest class we support switching to that version when told to 415821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// do so. 425821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#if defined(OS_WIN) 442a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)const base::FilePath::CharType kBrowserProcessExecutableNameChromium[] = 455821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) FPL("chrome.exe"); 462a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)const base::FilePath::CharType kBrowserProcessExecutableName[] = 472a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) FPL("chrome.exe"); 482a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)const base::FilePath::CharType kHelperProcessExecutableNameChromium[] = 492a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) FPL("chrome.exe"); 502a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)const base::FilePath::CharType kHelperProcessExecutableName[] = 515821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) FPL("chrome.exe"); 525821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#elif defined(OS_MACOSX) 532a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)const base::FilePath::CharType kBrowserProcessExecutableNameChromium[] = 545821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) FPL(CHROMIUM_PRODUCT_STRING); 552a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)const base::FilePath::CharType kBrowserProcessExecutableName[] = 562a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) FPL(PRODUCT_STRING); 572a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)const base::FilePath::CharType kHelperProcessExecutableNameChromium[] = 585821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) FPL(CHROMIUM_PRODUCT_STRING " Helper"); 592a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)const base::FilePath::CharType kHelperProcessExecutableName[] = 605821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) FPL(PRODUCT_STRING " Helper"); 615821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#elif defined(OS_ANDROID) 625821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// NOTE: Keep it synced with the process names defined in AndroidManifest.xml. 632a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)const base::FilePath::CharType kBrowserProcessExecutableName[] = FPL("chrome"); 642a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)const base::FilePath::CharType kBrowserProcessExecutableNameChromium[] = 655821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) FPL(""); 662a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)const base::FilePath::CharType kHelperProcessExecutableName[] = 675821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) FPL("sandboxed_process"); 682a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)const base::FilePath::CharType kHelperProcessExecutableNameChromium[] = FPL(""); 695821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#elif defined(OS_POSIX) 702a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)const base::FilePath::CharType kBrowserProcessExecutableNameChromium[] = 715821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) FPL("chrome"); 722a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)const base::FilePath::CharType kBrowserProcessExecutableName[] = FPL("chrome"); 735821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Helper processes end up with a name of "exe" due to execing via 745821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// /proc/self/exe. See bug 22703. 752a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)const base::FilePath::CharType kHelperProcessExecutableNameChromium[] = 762a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) FPL("exe"); 772a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)const base::FilePath::CharType kHelperProcessExecutableName[] = FPL("exe"); 785821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif // OS_* 795821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 805821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#if defined(OS_WIN) 812a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)const base::FilePath::CharType kBrowserProcessExecutablePathChromium[] = 822a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) FPL("chrome.exe"); 832a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)const base::FilePath::CharType kBrowserProcessExecutablePath[] = 845821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) FPL("chrome.exe"); 852a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)const base::FilePath::CharType kHelperProcessExecutablePathChromium[] = 862a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) FPL("chrome.exe"); 872a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)const base::FilePath::CharType kHelperProcessExecutablePath[] = 885821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) FPL("chrome.exe"); 895821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#elif defined(OS_MACOSX) 902a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)const base::FilePath::CharType kBrowserProcessExecutablePathChromium[] = 915821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) FPL(CHROMIUM_PRODUCT_STRING ".app/Contents/MacOS/" CHROMIUM_PRODUCT_STRING); 922a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)const base::FilePath::CharType kBrowserProcessExecutablePath[] = 935821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) FPL(PRODUCT_STRING ".app/Contents/MacOS/" PRODUCT_STRING); 942a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)const base::FilePath::CharType kHelperProcessExecutablePathChromium[] = 955821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) FPL(CHROMIUM_PRODUCT_STRING " Helper.app/Contents/MacOS/" 965821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) CHROMIUM_PRODUCT_STRING " Helper"); 972a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)const base::FilePath::CharType kHelperProcessExecutablePath[] = 985821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) FPL(PRODUCT_STRING " Helper.app/Contents/MacOS/" PRODUCT_STRING " Helper"); 995821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#elif defined(OS_ANDROID) 1002a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)const base::FilePath::CharType kBrowserProcessExecutablePath[] = FPL("chrome"); 1012a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)const base::FilePath::CharType kHelperProcessExecutablePath[] = FPL("chrome"); 1022a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)const base::FilePath::CharType kBrowserProcessExecutablePathChromium[] = 1032a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) FPL("chrome"); 1042a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)const base::FilePath::CharType kHelperProcessExecutablePathChromium[] = 1055821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) FPL("chrome"); 1065821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#elif defined(OS_POSIX) 1072a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)const base::FilePath::CharType kBrowserProcessExecutablePathChromium[] = 1085821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) FPL("chrome"); 1092a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)const base::FilePath::CharType kBrowserProcessExecutablePath[] = FPL("chrome"); 1102a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)const base::FilePath::CharType kHelperProcessExecutablePathChromium[] = 1112a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) FPL("chrome"); 1122a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)const base::FilePath::CharType kHelperProcessExecutablePath[] = FPL("chrome"); 1135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif // OS_* 1145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 1155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#if defined(OS_MACOSX) 1162a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)const base::FilePath::CharType kFrameworkName[] = 1175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) FPL(PRODUCT_STRING " Framework.framework"); 1185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 1195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)const char* const kHelperFlavorSuffixes[] = { 1205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) FPL("EH"), // Executable heap 1215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) FPL("NP"), // No PIE 1225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) NULL 1235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)}; 1245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif // OS_MACOSX 1255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 1265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#if defined(OS_WIN) 1272a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)const base::FilePath::CharType kMetroDriverDll[] = FPL("metro_driver.dll"); 1285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)const wchar_t kStatusTrayWindowClass[] = L"Chrome_StatusTrayWindow"; 1295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif // defined(OS_WIN) 1305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 1315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)const wchar_t kCrashReportLog[] = L"Reported Crashes.txt"; 1325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)const wchar_t kTestingInterfaceDLL[] = L"testing_interface.dll"; 1335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)const char kInitialProfile[] = "Default"; 1345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)const char kMultiProfileDirPrefix[] = "Profile "; 1357dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdochconst base::FilePath::CharType kGuestProfileDir[] = FPL("Guest Profile"); 1365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)const wchar_t kBrowserResourcesDll[] = L"chrome.dll"; 1375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 1385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// filenames 1395821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#if defined(OS_ANDROID) 1402a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)const base::FilePath::CharType kAndroidCacheFilename[] = FPL("AndroidCache"); 1415821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif 1422a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)const base::FilePath::CharType kArchivedHistoryFilename[] = 1432a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) FPL("Archived History"); 1442a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)const base::FilePath::CharType kCacheDirname[] = FPL("Cache"); 1455f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)const base::FilePath::CharType kChannelIDFilename[] = FPL("Origin Bound Certs"); 1462a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)const base::FilePath::CharType kCookieFilename[] = FPL("Cookies"); 1472a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)const base::FilePath::CharType kCRLSetFilename[] = 1485821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) FPL("Certificate Revocation Lists"); 1492a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)const base::FilePath::CharType kCustomDictionaryFileName[] = 1505821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) FPL("Custom Dictionary.txt"); 1512a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)const base::FilePath::CharType kExtensionActivityLogFilename[] = 1522a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) FPL("Extension Activity"); 1532a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)const base::FilePath::CharType kExtensionsCookieFilename[] = 1542a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) FPL("Extension Cookies"); 1552a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)const base::FilePath::CharType kFaviconsFilename[] = FPL("Favicons"); 1562a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)const base::FilePath::CharType kFirstRunSentinel[] = FPL("First Run"); 1575d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)const base::FilePath::CharType kGCMStoreDirname[] = FPL("GCM Store"); 1582a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)const base::FilePath::CharType kHistoryFilename[] = FPL("History"); 1592a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)const base::FilePath::CharType kJumpListIconDirname[] = FPL("JumpListIcons"); 1602a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)const base::FilePath::CharType kLocalStateFilename[] = FPL("Local State"); 1612a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)const base::FilePath::CharType kLocalStorePoolName[] = FPL("LocalStorePool"); 1622a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)const base::FilePath::CharType kLoginDataFileName[] = FPL("Login Data"); 1632a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)const base::FilePath::CharType kMediaCacheDirname[] = FPL("Media Cache"); 1642a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)const base::FilePath::CharType kNewTabThumbnailsFilename[] = 1652a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) FPL("Top Thumbnails"); 1662a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)const base::FilePath::CharType kPreferencesFilename[] = FPL("Preferences"); 1676d86b77056ed63eb6871182f42a9fd5f07550f90Torne (Richard Coles)const base::FilePath::CharType kProtectedPreferencesFilenameDeprecated[] = 168c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch FPL("Protected Preferences"); 1692a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)const base::FilePath::CharType kReadmeFilename[] = FPL("README"); 1701320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucciconst base::FilePath::CharType kResetPromptMementoFilename[] = 1711320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci FPL("Reset Prompt Memento"); 1722a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)const base::FilePath::CharType kSafeBrowsingBaseFilename[] = 1732a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) FPL("Safe Browsing"); 1746d86b77056ed63eb6871182f42a9fd5f07550f90Torne (Richard Coles)const base::FilePath::CharType kSecurePreferencesFilename[] = 1756d86b77056ed63eb6871182f42a9fd5f07550f90Torne (Richard Coles) FPL("Secure Preferences"); 1762a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)const base::FilePath::CharType kServiceStateFileName[] = FPL("Service State"); 1772a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)const base::FilePath::CharType kShortcutsDatabaseName[] = FPL("Shortcuts"); 1782a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)const base::FilePath::CharType kSingletonCookieFilename[] = 1792a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) FPL("SingletonCookie"); 1802a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)const base::FilePath::CharType kSingletonLockFilename[] = FPL("SingletonLock"); 1812a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)const base::FilePath::CharType kSingletonSocketFilename[] = 1822a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) FPL("SingletonSocket"); 183116680a4aac90f2aa7413d9095a592090648e557Ben Murdochconst base::FilePath::CharType kSupervisedUserSettingsFilename[] = 184116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch FPL("Managed Mode Settings"); 1852a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)const base::FilePath::CharType kSyncCredentialsFilename[] = 1862a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) FPL("Sync Credentials"); 1872a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)const base::FilePath::CharType kThemePackFilename[] = FPL("Cached Theme.pak"); 1882a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)const base::FilePath::CharType kThumbnailsFilename[] = FPL("Thumbnails"); 1892a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)const base::FilePath::CharType kTopSitesFilename[] = FPL("Top Sites"); 1902a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)const base::FilePath::CharType kWebAppDirname[] = FPL("Web Applications"); 1915821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 1925821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// File name of the Pepper Flash plugin on different platforms. 1932a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)const base::FilePath::CharType kPepperFlashPluginFilename[] = 1945821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#if defined(OS_MACOSX) 1955821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) FPL("PepperFlashPlayer.plugin"); 1965821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#elif defined(OS_WIN) 1975821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) FPL("pepflashplayer.dll"); 1985821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#else // OS_LINUX, etc. 1995821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) FPL("libpepflashplayer.so"); 2005821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif 2015821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 2025821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// directory names 2035821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)const wchar_t kUserDataDirname[] = L"User Data"; 2045821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 2055821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// We don't enable record mode in the released product because users could 2065821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// potentially be tricked into running a product in record mode without 2075821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// knowing it. Enable in debug builds. Playback mode is allowed always, 2085821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// because it is useful for testing and not hazardous by itself. 2095821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#ifndef NDEBUG 2105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// const bool kRecordModeEnabled = true; 2115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#else 2125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// const bool kRecordModeEnabled = false; 2135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif 2145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 2155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)const bool kRecordModeEnabled = true; 2165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 217a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles)const int kJavaScriptMessageExpectedDelay = 1000; 2185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 2195f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)#if defined(OS_ANDROID) || defined(OS_IOS) 2205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)const bool kEnableTouchIcon = true; 2215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#else 2225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)const bool kEnableTouchIcon = false; 2235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif 2245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 2255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)const float kMaxShareOfExtensionProcesses = 0.30f; 2265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 227d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)// This is used by the PreRead experiment. 228d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)const char kPreReadEnvironmentVariable[] = "CHROME_PRE_READ_EXPERIMENT"; 229d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles) 2305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#if defined(OS_LINUX) 2312a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)const int kLowestRendererOomScore = 300; 2322a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)const int kHighestRendererOomScore = 1000; 2335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif 2345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 2355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#if defined(OS_WIN) 2365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)const wchar_t kMetroNavigationAndSearchMessage[] = 2375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) L"CHROME_METRO_NAV_SEARCH_REQUEST"; 2385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)const wchar_t kMetroGetCurrentTabInfoMessage[] = 2395821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) L"CHROME_METRO_GET_CURRENT_TAB_INFO"; 2405821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)const wchar_t kMetroRegistryPath[] = 2415821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) L"Software\\" PRODUCT_STRING_PATH L"\\Metro"; 2425821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)const wchar_t kLaunchModeValue[] = L"launch_mode"; 2433551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)// This is used by breakpad and the metrics reporting. 2443551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)const wchar_t kBrowserCrashDumpAttemptsRegistryPath[] = 2453551c9c881056c480085172ff9840cab31610854Torne (Richard Coles) L"Software\\" PRODUCT_STRING_PATH L"\\BrowserCrashDumpAttempts"; 246f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)const char kSafeModeEnvVar[] = "CHROME_SAFE_MODE"; 2475821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif 2485821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 24990dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)#if defined(OS_CHROMEOS) 25090dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)const char kProfileDirPrefix[] = "u-"; 251d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)const char kLegacyProfileDir[] = "user"; 252d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)const char kTestUserProfileDir[] = "test-user"; 25390dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)#endif 25490dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles) 255ba5b9a6411cb1792fd21f0a078d7a25cd1ceec16Ben Murdoch// This GUID is associated with any 'don't ask me again' settings that the 256ba5b9a6411cb1792fd21f0a078d7a25cd1ceec16Ben Murdoch// user can select for different file types. 257ba5b9a6411cb1792fd21f0a078d7a25cd1ceec16Ben Murdoch// {2676A9A2-D919-4FEE-9187-152100393AB2} 258ba5b9a6411cb1792fd21f0a078d7a25cd1ceec16Ben Murdochconst char kApplicationClientIDStringForAVScanning[] = 259ba5b9a6411cb1792fd21f0a078d7a25cd1ceec16Ben Murdoch "2676A9A2-D919-4FEE-9187-152100393AB2"; 260ba5b9a6411cb1792fd21f0a078d7a25cd1ceec16Ben Murdoch 2615d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)const size_t kMaxMetaTagAttributeLength = 2000; 2625d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) 2635821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)} // namespace chrome 2645821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 2655821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#undef FPL 266