// 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 CHROME_BROWSER_PICTURE_IN_PICTURE_PICTURE_IN_PICTURE_BOUNDS_CACHE_H_ #define CHROME_BROWSER_PICTURE_IN_PICTURE_PICTURE_IN_PICTURE_BOUNDS_CACHE_H_ #include "content/public/browser/web_contents_user_data.h" namespace content { class WebContents; } // namespace content namespace display { class Display; } // namespace display // Per-WebContents cache of the most recent bounds for a picture in picture // window. This is forgotten when the WebContents navigates to a new origin. // If the site requests the same content (not window) size, and if it's the same // origin, then we will try to provide the most recent window bounds from the // previous pip window. This allows the user to move / resize the pip window, // and have it stay there even if the site closes and re-opens it. // // None of this is stored permanently. class PictureInPictureBoundsCache : public content::WebContentsUserData<PictureInPictureBoundsCache> { … }; #endif // CHROME_BROWSER_PICTURE_IN_PICTURE_PICTURE_IN_PICTURE_BOUNDS_CACHE_H_