| Index: chrome/browser/web_applications/web_app_mac.mm
|
| diff --git a/chrome/browser/web_applications/web_app_mac.mm b/chrome/browser/web_applications/web_app_mac.mm
|
| index 7bfa3d339bf2b0d13df6506eaca7a9e4125ea944..b46170c3685b58b879ae910c3d5b45e1dfc422c8 100644
|
| --- a/chrome/browser/web_applications/web_app_mac.mm
|
| +++ b/chrome/browser/web_applications/web_app_mac.mm
|
| @@ -47,6 +47,8 @@
|
| #include "ui/base/resource/resource_bundle.h"
|
| #include "ui/gfx/image/image_family.h"
|
|
|
| +bool g_app_shims_allow_update_and_launch_in_tests = false;
|
| +
|
| namespace {
|
|
|
| // Launch Services Key to run as an agent app, which doesn't launch in the dock.
|
| @@ -564,7 +566,11 @@ size_t WebAppShortcutCreator::CreateShortcutsIn(
|
| return succeeded;
|
| }
|
|
|
| + // Remove the quarantine attribute from both the bundle and the executable.
|
| base::mac::RemoveQuarantineAttribute(dst_path.Append(app_name));
|
| + base::mac::RemoveQuarantineAttribute(
|
| + dst_path.Append(app_name)
|
| + .Append("Contents").Append("MacOS").Append("app_mode_loader"));
|
| ++succeeded;
|
| }
|
|
|
| @@ -863,8 +869,10 @@ base::FilePath GetAppInstallPath(const ShortcutInfo& shortcut_info) {
|
| }
|
|
|
| void MaybeLaunchShortcut(const ShortcutInfo& shortcut_info) {
|
| - if (AppShimsDisabledForTest())
|
| + if (AppShimsDisabledForTest() &&
|
| + !g_app_shims_allow_update_and_launch_in_tests) {
|
| return;
|
| + }
|
|
|
| content::BrowserThread::PostTask(
|
| content::BrowserThread::FILE, FROM_HERE,
|
| @@ -976,8 +984,10 @@ void UpdatePlatformShortcuts(
|
| const ShortcutInfo& shortcut_info,
|
| const extensions::FileHandlersInfo& file_handlers_info) {
|
| DCHECK(content::BrowserThread::CurrentlyOn(content::BrowserThread::FILE));
|
| - if (AppShimsDisabledForTest())
|
| + if (AppShimsDisabledForTest() &&
|
| + !g_app_shims_allow_update_and_launch_in_tests) {
|
| return;
|
| + }
|
|
|
| WebAppShortcutCreator shortcut_creator(
|
| app_data_path, shortcut_info, file_handlers_info);
|
|
|