#include "chrome/browser/ui/extensions/mv2_disabled_dialog_controller.h"
#include "base/barrier_closure.h"
#include "base/check_is_test.h"
#include "base/functional/bind.h"
#include "chrome/browser/extensions/extension_service.h"
#include "chrome/browser/extensions/manifest_v2_experiment_manager.h"
#include "chrome/browser/extensions/mv2_experiment_stage.h"
#include "chrome/browser/profiles/profile.h"
#include "chrome/browser/ui/browser.h"
#include "chrome/browser/ui/chrome_pages.h"
#include "chrome/browser/ui/extensions/extensions_dialogs.h"
#include "chrome/browser/ui/startup/startup_browser_creator.h"
#include "chrome/browser/ui/views/frame/browser_view.h"
#include "extensions/browser/extension_icon_placeholder.h"
#include "extensions/browser/extension_prefs.h"
#include "extensions/browser/extension_system.h"
#include "extensions/browser/image_loader.h"
#include "extensions/common/manifest_handlers/icons_handler.h"
#include "mojo/public/cpp/bindings/lib/string_serialization.h"
namespace extensions {
namespace {
constexpr PrefMap kMV2DeprecationDisabledDialogAcknowledgedPref = …;
bool IsExtensionAffected(const Extension& extension,
ExtensionPrefs* extension_prefs,
ManagementPolicy* policy) { … }
}
Mv2DisabledDialogController::Mv2DisabledDialogController(Browser* browser)
: … { … }
Mv2DisabledDialogController::~Mv2DisabledDialogController() = default;
void Mv2DisabledDialogController::TearDown() { … }
void Mv2DisabledDialogController::MaybeShowDisabledDialogForTesting() { … }
void Mv2DisabledDialogController::ComputeAffectedExtensions() { … }
void Mv2DisabledDialogController::OnExtensionIconLoaded(
const ExtensionId& extension_id,
const std::string& extension_name,
base::OnceClosure done_callback,
const gfx::Image& icon) { … }
void Mv2DisabledDialogController::MaybeShowDisabledDialog() { … }
void Mv2DisabledDialogController::OnRemoveSelected() { … }
void Mv2DisabledDialogController::OnManageSelected() { … }
void Mv2DisabledDialogController::UserAcknowledgedDialog() { … }
}