blob: 7c6e3b2ea156b8f257fb412715fafdc786f03dad [file] [log] [blame]
Avi Drissman60039d42022-09-13 21:49:051// Copyright 2014 The Chromium Authors
[email protected]e43c61f2014-07-20 21:46:342// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#ifndef EXTENSIONS_BROWSER_UNINSTALL_REASON_H_
6#define EXTENSIONS_BROWSER_UNINSTALL_REASON_H_
7
8namespace extensions {
9
asargent8380bd392016-03-21 23:47:3310// Do not remove/reorder these, as they are used in uninstall ping data and we
11// depend on their values being stable.
[email protected]e43c61f2014-07-20 21:46:3412enum UninstallReason {
13 UNINSTALL_REASON_FOR_TESTING, // Used for testing code only
14 UNINSTALL_REASON_USER_INITIATED, // User performed some UI gesture
15 UNINSTALL_REASON_EXTENSION_DISABLED, // Extension disabled due to error
16 UNINSTALL_REASON_STORAGE_THRESHOLD_EXCEEDED,
17 UNINSTALL_REASON_INSTALL_CANCELED,
18 UNINSTALL_REASON_MANAGEMENT_API,
19 UNINSTALL_REASON_SYNC,
20 UNINSTALL_REASON_ORPHANED_THEME,
21 UNINSTALL_REASON_ORPHANED_EPHEMERAL_EXTENSION,
22 // The entries below imply bypassing checking user has permission to
23 // uninstall the corresponding extension id.
24 UNINSTALL_REASON_ORPHANED_EXTERNAL_EXTENSION,
25 UNINSTALL_REASON_ORPHANED_SHARED_MODULE,
rdevlin.cronin5f6b69d2014-09-20 01:23:3526 UNINSTALL_REASON_INTERNAL_MANAGEMENT, // Internal extensions (see usages)
dtseng9fb3d5b2015-02-23 17:24:1727 UNINSTALL_REASON_REINSTALL,
28 UNINSTALL_REASON_COMPONENT_REMOVED,
Takumi Fujimoto43c8c00f2017-07-26 22:48:5629 UNINSTALL_REASON_MIGRATED, // Migrated to component extensions
asargent8380bd392016-03-21 23:47:3330
Bettina Dea7264a04b62018-04-06 04:27:4531 UNINSTALL_REASON_CHROME_WEBSTORE,
32
Dominick Ngca1fdde2019-01-07 21:44:2133 UNINSTALL_REASON_ARC, // Web app that was uninstalled via ARC
34
asargent8380bd392016-03-21 23:47:3335 UNINSTALL_REASON_MAX, // Should always be the last value
[email protected]e43c61f2014-07-20 21:46:3436};
37
Bettina Dea7264a04b62018-04-06 04:27:4538// The source of an uninstall. Do *NOT* reorder or delete any of the named
39// values, as they are used in UMA. Put all new values above
40// NUM_UNINSTALL_SOURCES.
rdevlin.cronine18eb8cd2015-07-16 16:31:2841enum UninstallSource {
42 UNINSTALL_SOURCE_FOR_TESTING,
43 UNINSTALL_SOURCE_TOOLBAR_CONTEXT_MENU,
44 UNINSTALL_SOURCE_PERMISSIONS_INCREASE,
45 UNINSTALL_SOURCE_STORAGE_THRESHOLD_EXCEEDED,
46 UNINSTALL_SOURCE_APP_LIST,
47 UNINSTALL_SOURCE_APP_INFO_DIALOG,
48 UNINSTALL_SOURCE_CHROME_APPS_PAGE,
49 UNINSTALL_SOURCE_CHROME_EXTENSIONS_PAGE,
50 UNINSTALL_SOURCE_EXTENSION,
Bettina Dea7264a04b62018-04-06 04:27:4551 UNINSTALL_SOURCE_CHROME_WEBSTORE,
Alan Cuttera0ec9e442018-08-27 01:18:0652 UNINSTALL_SOURCE_HOSTED_APP_MENU,
rdevlin.cronine18eb8cd2015-07-16 16:31:2853 NUM_UNINSTALL_SOURCES,
54};
55
limasdfd70dc5ae2014-09-13 00:02:2256} // namespace extensions
[email protected]e43c61f2014-07-20 21:46:3457
58#endif // EXTENSIONS_BROWSER_UNINSTALL_REASON_H_