blob: b28171384a7d0d3695e3d863a18c30a9238e1b6d [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_PERFORMANCE_MANAGER_POLICIES_CANNOT_DISCARD_REASON_H_
#define CHROME_BROWSER_PERFORMANCE_MANAGER_POLICIES_CANNOT_DISCARD_REASON_H_
namespace performance_manager::policies {
// List of reasons not to discard a page.
enum class CannotDiscardReason {
kNotATab,
kAlreadyDiscarded,
kDiscardAttempted,
kNoMainFrame,
kVisible,
kAudible,
kRecentlyAudible,
kRecentlyVisible,
kPictureInPicture,
kPdf,
kNotWebOrInternal,
kInvalidURL,
kOptedOut,
kNotificationsEnabled,
kExtensionProtected,
kCapturingVideo,
kCapturingAudio,
kBeingMirrored,
kCapturingWindow,
kCapturingDisplay,
kConnectedToBluetooth,
kConnectedToUSB,
kActiveTab,
kPinnedTab,
kDevToolsOpen,
kBackgroundActivity,
kFormInteractions,
kUserEdits,
kGlicShared
};
const char* CannotDiscardReasonToString(CannotDiscardReason reason);
} // namespace performance_manager::policies
#endif // CHROME_BROWSER_PERFORMANCE_MANAGER_POLICIES_CANNOT_DISCARD_REASON_H_