blob: 8484aa9a107725ce84016874ac7e24638e0ead23 [file] [log] [blame]
// Copyright 2014 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef EXTENSIONS_BROWSER_UNINSTALL_REASON_H_
#define EXTENSIONS_BROWSER_UNINSTALL_REASON_H_
namespace extensions {
// Do not remove/reorder these, as they are used in uninstall ping data and we
// depend on their values being stable.
enum UninstallReason {
UNINSTALL_REASON_FOR_TESTING, // Used for testing code only
UNINSTALL_REASON_USER_INITIATED, // User performed some UI gesture
UNINSTALL_REASON_EXTENSION_DISABLED, // Extension disabled due to error
UNINSTALL_REASON_STORAGE_THRESHOLD_EXCEEDED,
UNINSTALL_REASON_INSTALL_CANCELED,
UNINSTALL_REASON_MANAGEMENT_API,
UNINSTALL_REASON_SYNC,
UNINSTALL_REASON_ORPHANED_THEME,
UNINSTALL_REASON_ORPHANED_EPHEMERAL_EXTENSION,
// The entries below imply bypassing checking user has permission to
// uninstall the corresponding extension id.
UNINSTALL_REASON_ORPHANED_EXTERNAL_EXTENSION,
UNINSTALL_REASON_ORPHANED_SHARED_MODULE,
UNINSTALL_REASON_INTERNAL_MANAGEMENT, // Internal extensions (see usages)
UNINSTALL_REASON_REINSTALL,
UNINSTALL_REASON_COMPONENT_REMOVED,
UNINSTALL_REASON_MAX, // Should always be the last value
};
// The source of an uninstall. Do *NOT* adjust the order of these, as they are
// used in UMA.
enum UninstallSource {
UNINSTALL_SOURCE_FOR_TESTING,
UNINSTALL_SOURCE_TOOLBAR_CONTEXT_MENU,
UNINSTALL_SOURCE_PERMISSIONS_INCREASE,
UNINSTALL_SOURCE_STORAGE_THRESHOLD_EXCEEDED,
UNINSTALL_SOURCE_APP_LIST,
UNINSTALL_SOURCE_APP_INFO_DIALOG,
UNINSTALL_SOURCE_CHROME_APPS_PAGE,
UNINSTALL_SOURCE_CHROME_EXTENSIONS_PAGE,
UNINSTALL_SOURCE_EXTENSION,
NUM_UNINSTALL_SOURCES,
};
} // namespace extensions
#endif // EXTENSIONS_BROWSER_UNINSTALL_REASON_H_