chromium/chrome/browser/ui/views/web_apps/web_app_identity_update_confirmation_view.h

// Copyright 2021 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#ifndef CHROME_BROWSER_UI_VIEWS_WEB_APPS_WEB_APP_IDENTITY_UPDATE_CONFIRMATION_VIEW_H_
#define CHROME_BROWSER_UI_VIEWS_WEB_APPS_WEB_APP_IDENTITY_UPDATE_CONFIRMATION_VIEW_H_

#include <string>

#include "base/memory/raw_ptr.h"
#include "base/memory/weak_ptr.h"
#include "chrome/browser/ui/browser_dialogs.h"
#include "chrome/browser/web_applications/web_app_callback_app_identity.h"
#include "chrome/browser/web_applications/web_app_install_manager.h"
#include "chrome/browser/web_applications/web_app_install_manager_observer.h"
#include "components/webapps/browser/uninstall_result_code.h"
#include "ui/base/metadata/metadata_header_macros.h"
#include "ui/views/metadata/view_factory.h"
#include "ui/views/window/dialog_delegate.h"

class Profile;
class SkBitmap;

// WebAppIdentityUpdateConfirmationView provides views for showing which parts
// of the app's identity changed so the user can make a determination whether to
// allow the update or uninstall it.
class WebAppIdentityUpdateConfirmationView
    : public views::DialogDelegateView,
      public web_app::WebAppInstallManagerObserver {};

BEGIN_VIEW_BUILDER(,
                   WebAppIdentityUpdateConfirmationView,
                   views::DialogDelegateView)
END_VIEW_BUILDER

DEFINE_VIEW_BUILDER()

#endif  // CHROME_BROWSER_UI_VIEWS_WEB_APPS_WEB_APP_IDENTITY_UPDATE_CONFIRMATION_VIEW_H_