Index: ash/accelerators/accelerator_table.h |
diff --git a/ash/accelerators/accelerator_table.h b/ash/accelerators/accelerator_table.h |
index 1d478a0f8a9b3e8b073c6626d09f7b0385b960d5..0a01641f4815669c0603203b577f139d49cdc7b0 100644 |
--- a/ash/accelerators/accelerator_table.h |
+++ b/ash/accelerators/accelerator_table.h |
@@ -153,10 +153,44 @@ struct AcceleratorData { |
AcceleratorAction action; |
}; |
+// Gathers the needed data to handle deprecated accelerators. |
+struct DeprecatedAcceleratorData { |
+ // The old deprecated accelerator. |
+ AcceleratorData deprecated_accelerator; |
+ |
+ // The name of the UMA histogram that will be used to measure the deprecated |
+ // v.s. new accelerator usage. |
+ const char* uma_histogram_name; |
+ |
+ // The ID of the localized notification message to show to users informing |
+ // them about the deprecation. |
+ int notification_message_id; |
+ |
+ // Specifies whether the deprecated accelerator is still enabled to do its |
+ // associated action. |
+ bool deprecated_enabled; |
+}; |
+ |
+// The ID of the MessageCenter notifications of deprecated accelerators. |
+const char kDeprecatedAcceleratorNotificationId[] = "deprecated_accelerator"; |
+ |
+// This will be used for the UMA stats to measure the how many users are using |
+// the old v.s. new accelerators. |
+enum DeprecatedAcceleratorUsage { |
+ DEPRECATED_USED = 0, // The deprecated accelerator is used. |
+ NEW_USED, // The new accelerator is used. |
+ DEPRECATED_USAGE_COUNT, // Maximum value of this enum for histogram use. |
+}; |
+ |
// Accelerators handled by AcceleratorController. |
ASH_EXPORT extern const AcceleratorData kAcceleratorData[]; |
ASH_EXPORT extern const size_t kAcceleratorDataLength; |
+// The list of the deprecated accelerators along with their new replacing ones |
+// and how to handle them. |
+ASH_EXPORT extern const DeprecatedAcceleratorData kDeprecatedAccelerators[]; |
+ASH_EXPORT extern const size_t kDeprecatedAcceleratorsLength; |
+ |
// Debug accelerators. Debug accelerators are only enabled when the "Debugging |
// keyboard shortcuts" flag (--ash-debug-shortcuts) is enabled. Debug actions |
// are always run (similar to reserved actions). |