#include "chrome/browser/extensions/external_install_manager.h"
#include <string>
#include "base/check_op.h"
#include "base/containers/contains.h"
#include "base/metrics/histogram_macros.h"
#include "chrome/app/chrome_command_ids.h"
#include "chrome/browser/extensions/extension_management.h"
#include "chrome/browser/extensions/external_install_error.h"
#include "components/version_info/version_info.h"
#include "extensions/browser/extension_prefs.h"
#include "extensions/common/extension.h"
#include "extensions/common/extension_id.h"
#include "extensions/common/feature_switch.h"
#include "extensions/common/features/feature_channel.h"
#include "extensions/common/manifest.h"
#include "extensions/common/manifest_url_handlers.h"
namespace extensions {
namespace {
enum ExternalExtensionEvent { … };
const int kMaxExtensionAcknowledgePromptCount = …;
}
ExternalInstallManager::ExternalInstallManager(
content::BrowserContext* browser_context,
bool is_first_run)
: … { … }
ExternalInstallManager::~ExternalInstallManager() { … }
void ExternalInstallManager::Shutdown() { … }
bool ExternalInstallManager::IsPromptingEnabled() { … }
void ExternalInstallManager::AddExternalInstallError(const Extension* extension,
bool is_new_profile) { … }
void ExternalInstallManager::RemoveExternalInstallError(
const std::string& extension_id) { … }
void ExternalInstallManager::UpdateExternalExtensionAlert() { … }
void ExternalInstallManager::AcknowledgeExternalExtension(
const std::string& id) { … }
void ExternalInstallManager::DidChangeInstallAlertVisibility(
ExternalInstallError* external_install_error,
bool visible) { … }
std::vector<ExternalInstallError*>
ExternalInstallManager::GetErrorsForTesting() { … }
void ExternalInstallManager::ClearShownIdsForTesting() { … }
void ExternalInstallManager::OnExtensionLoaded(
content::BrowserContext* browser_context,
const Extension* extension) { … }
void ExternalInstallManager::OnExtensionInstalled(
content::BrowserContext* browser_context,
const Extension* extension,
bool is_update) { … }
void ExternalInstallManager::OnExtensionUninstalled(
content::BrowserContext* browser_context,
const Extension* extension,
extensions::UninstallReason reason) { … }
bool ExternalInstallManager::IsUnacknowledgedExternalExtension(
const Extension& extension) const { … }
}