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

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

Issue 2129413002: Use output_all_resource_defines=false in some chrome/ grd files. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: rebase Created 4 years, 5 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
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/shell_integration_linux.h" 5 #include "chrome/browser/shell_integration_linux.h"
6 6
7 #include <fcntl.h> 7 #include <fcntl.h>
8 #include <stddef.h> 8 #include <stddef.h>
9 9
10 #include <memory> 10 #include <memory>
(...skipping 232 matching lines...) Expand 10 before | Expand all | Expand 10 after
243 DefaultWebClientState IsDefaultProtocolClient(const std::string& protocol) { 243 DefaultWebClientState IsDefaultProtocolClient(const std::string& protocol) {
244 return GetIsDefaultWebClient(protocol); 244 return GetIsDefaultWebClient(protocol);
245 } 245 }
246 246
247 } // namespace shell_integration 247 } // namespace shell_integration
248 248
249 namespace shell_integration_linux { 249 namespace shell_integration_linux {
250 250
251 namespace { 251 namespace {
252 252
253 #if defined(ENABLE_APP_LIST)
253 // The Categories for the App Launcher desktop shortcut. Should be the same as 254 // The Categories for the App Launcher desktop shortcut. Should be the same as
254 // the Chrome desktop shortcut, so they are in the same sub-menu. 255 // the Chrome desktop shortcut, so they are in the same sub-menu.
255 const char kAppListCategories[] = "Network;WebBrowser;"; 256 const char kAppListCategories[] = "Network;WebBrowser;";
257 #endif
256 258
257 std::string CreateShortcutIcon(const gfx::ImageFamily& icon_images, 259 std::string CreateShortcutIcon(const gfx::ImageFamily& icon_images,
258 const base::FilePath& shortcut_filename) { 260 const base::FilePath& shortcut_filename) {
259 if (icon_images.empty()) 261 if (icon_images.empty())
260 return std::string(); 262 return std::string();
261 263
262 // TODO(phajdan.jr): Report errors from this function, possibly as infobars. 264 // TODO(phajdan.jr): Report errors from this function, possibly as infobars.
263 base::ScopedTempDir temp_dir; 265 base::ScopedTempDir temp_dir;
264 if (!temp_dir.CreateUniqueTempDir()) 266 if (!temp_dir.CreateUniqueTempDir())
265 return std::string(); 267 return std::string();
(...skipping 207 matching lines...) Expand 10 before | Expand all | Expand 10 after
473 return quoted_path; 475 return quoted_path;
474 } 476 }
475 477
476 const char kDesktopEntry[] = "Desktop Entry"; 478 const char kDesktopEntry[] = "Desktop Entry";
477 479
478 const char kXdgOpenShebang[] = "#!/usr/bin/env xdg-open"; 480 const char kXdgOpenShebang[] = "#!/usr/bin/env xdg-open";
479 #endif 481 #endif
480 482
481 const char kDirectoryFilename[] = "chrome-apps.directory"; 483 const char kDirectoryFilename[] = "chrome-apps.directory";
482 484
485 #if defined(ENABLE_APP_LIST)
483 #if defined(GOOGLE_CHROME_BUILD) 486 #if defined(GOOGLE_CHROME_BUILD)
484 const char kAppListDesktopName[] = "chrome-app-list"; 487 const char kAppListDesktopName[] = "chrome-app-list";
485 #else // CHROMIUM_BUILD 488 #else // CHROMIUM_BUILD
486 const char kAppListDesktopName[] = "chromium-app-list"; 489 const char kAppListDesktopName[] = "chromium-app-list";
487 #endif 490 #endif
491 #endif
488 492
489 // Get the value of NoDisplay from the [Desktop Entry] section of a .desktop 493 // Get the value of NoDisplay from the [Desktop Entry] section of a .desktop
490 // file, given in |shortcut_contents|. If the key is not found, returns false. 494 // file, given in |shortcut_contents|. If the key is not found, returns false.
491 bool GetNoDisplayFromDesktopFile(const std::string& shortcut_contents) { 495 bool GetNoDisplayFromDesktopFile(const std::string& shortcut_contents) {
492 #if defined(USE_GLIB) 496 #if defined(USE_GLIB)
493 // An empty file causes a crash with glib <= 2.32, so special case here. 497 // An empty file causes a crash with glib <= 2.32, so special case here.
494 if (shortcut_contents.empty()) 498 if (shortcut_contents.empty())
495 return false; 499 return false;
496 500
497 GKeyFile* key_file = g_key_file_new(); 501 GKeyFile* key_file = g_key_file_new();
(...skipping 467 matching lines...) Expand 10 before | Expand all | Expand 10 after
965 "", 969 "",
966 creation_locations.applications_menu_location == 970 creation_locations.applications_menu_location ==
967 web_app::APP_MENU_LOCATION_HIDDEN); 971 web_app::APP_MENU_LOCATION_HIDDEN);
968 success = CreateShortcutInApplicationsMenu( 972 success = CreateShortcutInApplicationsMenu(
969 shortcut_filename, contents, directory_filename, directory_contents) && 973 shortcut_filename, contents, directory_filename, directory_contents) &&
970 success; 974 success;
971 975
972 return success; 976 return success;
973 } 977 }
974 978
979 #if defined(ENABLE_APP_LIST)
975 bool CreateAppListDesktopShortcut( 980 bool CreateAppListDesktopShortcut(
976 const std::string& wm_class, 981 const std::string& wm_class,
977 const std::string& title) { 982 const std::string& title) {
978 DCHECK_CURRENTLY_ON(BrowserThread::FILE); 983 DCHECK_CURRENTLY_ON(BrowserThread::FILE);
979 984
980 base::FilePath desktop_name(kAppListDesktopName); 985 base::FilePath desktop_name(kAppListDesktopName);
981 base::FilePath shortcut_filename = desktop_name.AddExtension("desktop"); 986 base::FilePath shortcut_filename = desktop_name.AddExtension("desktop");
982 987
983 // We do not want duplicate shortcuts. Delete any that already exist and 988 // We do not want duplicate shortcuts. Delete any that already exist and
984 // replace them. 989 // replace them.
(...skipping 19 matching lines...) Expand all
1004 GetDesktopFileContentsForCommand(command_line, 1009 GetDesktopFileContentsForCommand(command_line,
1005 wm_class, 1010 wm_class,
1006 GURL(), 1011 GURL(),
1007 base::UTF8ToUTF16(title), 1012 base::UTF8ToUTF16(title),
1008 icon_name, 1013 icon_name,
1009 kAppListCategories, 1014 kAppListCategories,
1010 false); 1015 false);
1011 return CreateShortcutInApplicationsMenu( 1016 return CreateShortcutInApplicationsMenu(
1012 shortcut_filename, contents, base::FilePath(), ""); 1017 shortcut_filename, contents, base::FilePath(), "");
1013 } 1018 }
1019 #endif
1014 1020
1015 void DeleteDesktopShortcuts(const base::FilePath& profile_path, 1021 void DeleteDesktopShortcuts(const base::FilePath& profile_path,
1016 const std::string& extension_id) { 1022 const std::string& extension_id) {
1017 DCHECK_CURRENTLY_ON(BrowserThread::FILE); 1023 DCHECK_CURRENTLY_ON(BrowserThread::FILE);
1018 1024
1019 base::FilePath shortcut_filename = GetExtensionShortcutFilename( 1025 base::FilePath shortcut_filename = GetExtensionShortcutFilename(
1020 profile_path, extension_id); 1026 profile_path, extension_id);
1021 DCHECK(!shortcut_filename.empty()); 1027 DCHECK(!shortcut_filename.empty());
1022 1028
1023 DeleteShortcutOnDesktop(shortcut_filename); 1029 DeleteShortcutOnDesktop(shortcut_filename);
(...skipping 24 matching lines...) Expand all
1048 base::FilePath applications_menu = GetDataWriteLocation(env.get()); 1054 base::FilePath applications_menu = GetDataWriteLocation(env.get());
1049 applications_menu = applications_menu.AppendASCII("applications"); 1055 applications_menu = applications_menu.AppendASCII("applications");
1050 std::vector<base::FilePath> shortcut_filenames_app_menu = 1056 std::vector<base::FilePath> shortcut_filenames_app_menu =
1051 GetExistingProfileShortcutFilenames(profile_path, applications_menu); 1057 GetExistingProfileShortcutFilenames(profile_path, applications_menu);
1052 for (const auto& menu : shortcut_filenames_app_menu) { 1058 for (const auto& menu : shortcut_filenames_app_menu) {
1053 DeleteShortcutInApplicationsMenu(menu, base::FilePath(kDirectoryFilename)); 1059 DeleteShortcutInApplicationsMenu(menu, base::FilePath(kDirectoryFilename));
1054 } 1060 }
1055 } 1061 }
1056 1062
1057 } // namespace shell_integration_linux 1063 } // namespace shell_integration_linux
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698