#include "chrome/browser/ui/views/create_application_shortcut_view.h"
#include <utility>
#include "base/functional/bind.h"
#include "base/functional/callback_helpers.h"
#include "build/build_config.h"
#include "chrome/browser/profiles/profile.h"
#include "chrome/browser/ui/views/chrome_layout_provider.h"
#include "chrome/browser/web_applications/extensions/web_app_extension_shortcut.h"
#include "chrome/browser/web_applications/os_integration/os_integration_manager.h"
#include "chrome/browser/web_applications/os_integration/os_integration_sub_manager.h"
#include "chrome/browser/web_applications/os_integration/web_app_shortcut.h"
#include "chrome/browser/web_applications/web_app_command_scheduler.h"
#include "chrome/browser/web_applications/web_app_provider.h"
#include "chrome/common/pref_names.h"
#include "chrome/grit/generated_resources.h"
#include "components/constrained_window/constrained_window_views.h"
#include "components/prefs/pref_service.h"
#include "extensions/common/extension.h"
#include "ui/base/l10n/l10n_util.h"
#include "ui/base/metadata/metadata_impl_macros.h"
#include "ui/base/mojom/dialog_button.mojom.h"
#include "ui/base/mojom/ui_base_types.mojom-shared.h"
#include "ui/views/controls/button/checkbox.h"
#include "ui/views/controls/label.h"
#include "ui/views/layout/box_layout.h"
#if BUILDFLAG(IS_WIN)
#include "base/win/shortcut.h"
#include "chrome/installer/util/taskbar_util.h"
#endif
namespace chrome {
void ShowCreateChromeAppShortcutsDialog(
gfx::NativeWindow parent_window,
Profile* profile,
const extensions::Extension* app,
base::OnceCallback<void(bool)> close_callback) { … }
void ShowCreateChromeAppShortcutsDialog(
gfx::NativeWindow parent_window,
Profile* profile,
const std::string& web_app_id,
base::OnceCallback<void(bool)> close_callback) { … }
}
CreateChromeApplicationShortcutView::CreateChromeApplicationShortcutView(
Profile* profile,
const extensions::Extension* app,
base::OnceCallback<void(bool)> close_callback)
: … { … }
CreateChromeApplicationShortcutView::CreateChromeApplicationShortcutView(
Profile* profile,
const std::string& web_app_id,
base::OnceCallback<void(bool)> close_callback)
: … { … }
CreateChromeApplicationShortcutView::CreateChromeApplicationShortcutView(
Profile* profile,
bool is_extension,
base::OnceCallback<void(bool)> close_callback)
: … { … }
CreateChromeApplicationShortcutView::~CreateChromeApplicationShortcutView() { … }
void CreateChromeApplicationShortcutView::InitControls() { … }
gfx::Size CreateChromeApplicationShortcutView::CalculatePreferredSize(
const views::SizeBounds& available_size) const { … }
bool CreateChromeApplicationShortcutView::IsDialogButtonEnabled(
ui::mojom::DialogButton button) const { … }
std::u16string CreateChromeApplicationShortcutView::GetWindowTitle() const { … }
void CreateChromeApplicationShortcutView::OnDialogAccepted() { … }
std::unique_ptr<views::Checkbox>
CreateChromeApplicationShortcutView::AddCheckbox(const std::u16string& text,
const std::string& pref_path) { … }
void CreateChromeApplicationShortcutView::CheckboxPressed(
std::string pref_path,
views::Checkbox* checkbox) { … }
void CreateChromeApplicationShortcutView::OnAppInfoLoaded(
std::unique_ptr<web_app::ShortcutInfo> shortcut_info) { … }
BEGIN_METADATA(…)