// Copyright 2023 The Chromium Authors // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #ifndef CONTENT_BROWSER_RENDERER_HOST_NAVIGATION_TRANSITIONS_NAVIGATION_ENTRY_SCREENSHOT_MANAGER_H_ #define CONTENT_BROWSER_RENDERER_HOST_NAVIGATION_TRANSITIONS_NAVIGATION_ENTRY_SCREENSHOT_MANAGER_H_ #include "base/containers/lru_cache.h" #include "base/gtest_prod_util.h" #include "base/memory/memory_pressure_listener.h" #include "base/memory/safe_ref.h" #include "base/time/time.h" #include "base/timer/timer.h" #include "content/common/content_export.h" namespace content { class NavigationEntryScreenshotCacheEvictor; // This class manages the metadata for all `NavigationEntryScreenshot`s captured // for the backward and forward navigation entries per `FrameTree`. The // screenshots are used to present users with previews of the previous pages // when the users initiate back/forward-navigations. This class is owned by a // `BrowserContext`. All primary `FrameTree`s sharing the same `BrowserContext` // share the same manager. The manager should only be accessed by the // `NavigationEntryScreenshotCache` and tests. class CONTENT_EXPORT NavigationEntryScreenshotManager { … }; } // namespace content #endif // CONTENT_BROWSER_RENDERER_HOST_NAVIGATION_TRANSITIONS_NAVIGATION_ENTRY_SCREENSHOT_MANAGER_H_