#include "chrome/browser/apps/platform_apps/platform_app_launch.h"
#include "build/build_config.h"
#include "chrome/browser/apps/app_service/app_launch_params.h"
#include "chrome/browser/apps/app_service/launch_utils.h"
#include "chrome/browser/extensions/launch_util.h"
#include "chrome/browser/profiles/profile.h"
#include "chrome/browser/ui/extensions/application_launch.h"
#include "chrome/common/extensions/extension_constants.h"
#include "chrome/common/extensions/extension_metrics.h"
#include "components/services/app_service/public/cpp/app_launch_util.h"
#include "content/public/browser/web_contents.h"
#include "extensions/browser/extension_prefs.h"
#include "extensions/browser/extension_registry.h"
#include "extensions/common/constants.h"
#include "extensions/common/extension.h"
#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX)
#include "chrome/browser/ui/browser.h"
#include "chrome/browser/ui/browser_navigator.h"
#include "chrome/browser/ui/browser_window.h"
#include "chrome/browser/web_applications/extension_status_utils.h"
#include "chrome/common/webui_url_constants.h"
#endif
namespace apps {
namespace {
bool GetAppLaunchContainer(Profile* profile,
const std::string& app_id,
const extensions::Extension** out_app,
apps::LaunchContainer* out_launch_container) { … }
const extensions::Extension* GetPlatformApp(Profile* profile,
const std::string& app_id) { … }
void RecordCmdLineAppHistogram(extensions::Manifest::Type app_type) { … }
}
bool OpenExtensionApplicationWindow(Profile* profile,
const std::string& app_id,
const base::CommandLine& command_line,
const base::FilePath& current_directory) { … }
content::WebContents* OpenExtensionApplicationTab(Profile* profile,
const std::string& app_id) { … }
#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX)
bool OpenDeprecatedApplicationPrompt(Profile* profile,
const std::string& app_id) { … }
#endif
bool OpenExtensionApplicationWithReenablePrompt(
Profile* profile,
const std::string& app_id,
const base::CommandLine& command_line,
const base::FilePath& current_directory) { … }
content::WebContents* OpenExtensionAppShortcutWindow(Profile* profile,
const GURL& url) { … }
void RecordExtensionAppLaunchOnTabRestored(Profile* profile, const GURL& url) { … }
}