blob: af2e4f6a168a1664fff753840eb77774271f0bb5 [file] [log] [blame]
// Copyright 2024 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef CHROME_BROWSER_UI_TOASTS_API_TOAST_ID_H_
#define CHROME_BROWSER_UI_TOASTS_API_TOAST_ID_H_
#include <string>
// Each toast is supposed to have its own unique toast id and corresponding
// string name. New additions to ToastId enum should also be added to
// tools/metrics/histograms/metadata/toasts/enums.xml and toasts that
// adds an action/close button should add an entry to
// tools/metrics/actions/actions.xml.
// These values are persisted to logs. Entries should not be renumbered and
// numeric values should never be reused.
// LINT.IfChange(ToastId)
enum class ToastId {
kLinkCopied = 0,
kMinValue = kLinkCopied,
kImageCopied = 1,
kLinkToHighlightCopied = 2,
kAddedToReadingList = 3,
// kLensOverlay = 4,
kNonMilestoneUpdate = 5,
kAddedToComparisonTable = 6,
kClearBrowsingData = 7,
kPlusAddressOverride = 8,
kSyncEsbOn = 9,
kSyncEsbOnWithoutActionButton = 10,
kSyncEsbOff = 11,
kTabGroupSyncTabRemoved = 12,
kTabGroupSyncUserJoined = 13,
kTabGroupSyncRemovedFromGroup = 14,
kVideoFrameCopied = 15,
kClosePinnedTab = 16,
kMaxValue = kClosePinnedTab
};
// LINT.ThenChange(/tools/metrics/histograms/metadata/toasts/enums.xml:ToastId)
// Returns the string equivalent name persisted to logs for `toast_id`.
// New additions should also be added to
// tools/metrics/histograms/metadata/toasts/histograms.xml
std::string GetToastName(ToastId toast_id);
#endif // CHROME_BROWSER_UI_TOASTS_API_TOAST_ID_H_