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

Side by Side Diff: chrome/browser/web_applications/web_app_mac.h

Issue 265163006: [Mac] Rebuild app shims when they fail to dyload Chrome Framework. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Sync and rebase Created 6 years, 7 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 | Annotate | Revision Log
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 #ifndef CHROME_BROWSER_WEB_APPLICATIONS_WEB_APP_MAC_H_ 5 #ifndef CHROME_BROWSER_WEB_APPLICATIONS_WEB_APP_MAC_H_
6 #define CHROME_BROWSER_WEB_APPLICATIONS_WEB_APP_MAC_H_ 6 #define CHROME_BROWSER_WEB_APPLICATIONS_WEB_APP_MAC_H_
7 7
8 #include <string> 8 #include <string>
9 #include <vector> 9 #include <vector>
10 10
11 #include "base/basictypes.h" 11 #include "base/basictypes.h"
12 #include "base/files/file_path.h" 12 #include "base/files/file_path.h"
13 #include "base/gtest_prod_util.h" 13 #include "base/gtest_prod_util.h"
14 #include "chrome/browser/web_applications/web_app.h" 14 #include "chrome/browser/web_applications/web_app.h"
15 #include "chrome/common/extensions/file_handler_info.h" 15 #include "chrome/common/extensions/file_handler_info.h"
16 16
17 namespace base {
18 class CommandLine;
19 }
20
17 namespace web_app { 21 namespace web_app {
18 22
19 // Returns the full path of the .app shim that would be created by 23 // Returns the full path of the .app shim that would be created by
20 // web_app::CreateShortcuts(). 24 // web_app::CreateShortcuts().
21 base::FilePath GetAppInstallPath( 25 base::FilePath GetAppInstallPath(
22 const web_app::ShortcutInfo& shortcut_info); 26 const web_app::ShortcutInfo& shortcut_info);
23 27
24 // If necessary, launch the shortcut for an app. 28 // If necessary, launch the shortcut for an app.
25 void MaybeLaunchShortcut(const web_app::ShortcutInfo& shortcut_info); 29 void MaybeLaunchShortcut(const web_app::ShortcutInfo& shortcut_info);
26 30
31 // Rebuild the shortcut and relaunch it.
32 bool MaybeRebuildShortcut(const base::CommandLine& command_line);
33
27 // Creates a shortcut for a web application. The shortcut is a stub app 34 // Creates a shortcut for a web application. The shortcut is a stub app
28 // that simply loads the browser framework and runs the given app. 35 // that simply loads the browser framework and runs the given app.
29 class WebAppShortcutCreator { 36 class WebAppShortcutCreator {
30 public: 37 public:
31 // Creates a new shortcut based on information in |shortcut_info|. 38 // Creates a new shortcut based on information in |shortcut_info|.
32 // A copy of the shortcut is placed in |app_data_dir|. 39 // A copy of the shortcut is placed in |app_data_dir|.
33 // |chrome_bundle_id| is the CFBundleIdentifier of the Chrome browser bundle. 40 // |chrome_bundle_id| is the CFBundleIdentifier of the Chrome browser bundle.
34 WebAppShortcutCreator(const base::FilePath& app_data_dir, 41 WebAppShortcutCreator(const base::FilePath& app_data_dir,
35 const web_app::ShortcutInfo& shortcut_info, 42 const web_app::ShortcutInfo& shortcut_info,
36 const extensions::FileHandlersInfo& file_handlers_info); 43 const extensions::FileHandlersInfo& file_handlers_info);
(...skipping 68 matching lines...) Expand 10 before | Expand all | Expand 10 after
105 112
106 // The app's file handlers. 113 // The app's file handlers.
107 extensions::FileHandlersInfo file_handlers_info_; 114 extensions::FileHandlersInfo file_handlers_info_;
108 115
109 DISALLOW_COPY_AND_ASSIGN(WebAppShortcutCreator); 116 DISALLOW_COPY_AND_ASSIGN(WebAppShortcutCreator);
110 }; 117 };
111 118
112 } // namespace web_app 119 } // namespace web_app
113 120
114 #endif // CHROME_BROWSER_WEB_APPLICATIONS_WEB_APP_MAC_H_ 121 #endif // CHROME_BROWSER_WEB_APPLICATIONS_WEB_APP_MAC_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698