// Copyright 2022 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_PUBLIC_BROWSER_PRESENTATION_OBSERVER_H_ #define CONTENT_PUBLIC_BROWSER_PRESENTATION_OBSERVER_H_ #include "base/observer_list_types.h" #include "content/common/content_export.h" namespace content { struct PresentationRequest; // Observes changes to presentations associated with a WebContents. class CONTENT_EXPORT PresentationObserver : public base::CheckedObserver { public: // Called whenever presentations are added or removed. virtual void OnPresentationsChanged(bool has_presentation) {} // `presentation_request` is a nullptr if the default PresentationRequest // has been removed. virtual void OnDefaultPresentationChanged( const content::PresentationRequest* presentation_request) {} }; } // namespace content #endif // CONTENT_PUBLIC_BROWSER_PRESENTATION_OBSERVER_H_