#include "components/no_state_prefetch/renderer/no_state_prefetch_utils.h"
#include "base/memory/weak_ptr.h"
#include "components/no_state_prefetch/renderer/no_state_prefetch_helper.h"
#include "content/public/common/page_visibility_state.h"
#include "content/public/renderer/render_frame.h"
#include "media/mojo/mojom/media_player.mojom.h"
#include "mojo/public/cpp/bindings/generic_pending_receiver.h"
#include "third_party/blink/public/platform/browser_interface_broker_proxy.h"
#include "third_party/blink/public/web/web_local_frame.h"
#include "third_party/blink/public/web/web_view.h"
#include "third_party/blink/public/web/web_view_observer.h"
namespace prerender {
namespace {
const char kDeferredMediaLoadStateKey[] = …;
class DeferredMediaLoadState : public base::SupportsUserData::Data { … };
class MediaLoadDeferrer : public blink::WebViewObserver { … };
}
bool DeferMediaLoad(content::RenderFrame* render_frame,
bool has_played_media_before,
base::OnceClosure closure) { … }
void SetShouldDeferMediaLoad(content::RenderFrame* render_frame,
bool should_defer) { … }
}