blob: b61bad0b5f02af22ed02c6d0ac119c73dba09fae [file] [log] [blame]
scottmg276753cf2016-10-27 18:25:221// Copyright 2016 The Chromium Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#ifndef CONTENT_BROWSER_HOST_ZOOM_MAP_OBSERVER_H_
6#define CONTENT_BROWSER_HOST_ZOOM_MAP_OBSERVER_H_
7
8#include "content/common/host_zoom.mojom.h"
9#include "content/public/browser/web_contents_observer.h"
10
11namespace content {
12
13class RenderFrameHost;
14
15class HostZoomMapObserver : private WebContentsObserver {
16 public:
17 explicit HostZoomMapObserver(WebContents* web_contents);
18 ~HostZoomMapObserver() override;
19
20 private:
21 // WebContentsObserver implementation:
22 void ReadyToCommitNavigation(NavigationHandle* navigation_handle) override;
23 void RenderFrameCreated(RenderFrameHost* rfh) override;
blundelle7aa3292017-01-05 12:38:5524 void RenderFrameDeleted(RenderFrameHost* rfh) override;
scottmg276753cf2016-10-27 18:25:2225
blundelle7aa3292017-01-05 12:38:5526 std::map<RenderFrameHost*, mojom::HostZoomAssociatedPtr> host_zoom_ptrs_;
scottmg276753cf2016-10-27 18:25:2227};
28
29} // namespace content
30
31#endif // CONTENT_BROWSER_HOST_ZOOM_MAP_OBSERVER_H_