Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(460)

Side by Side Diff: third_party/WebKit/Source/core/frame/RemoteFrameView.h

Issue 2860903003: Propagate viewport intersection across OOPIFs at the correct time (Closed)
Patch Set: DCHECK removed. Created 3 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef RemoteFrameView_h 5 #ifndef RemoteFrameView_h
6 #define RemoteFrameView_h 6 #define RemoteFrameView_h
7 7
8 #include "core/frame/FrameOrPlugin.h" 8 #include "core/frame/FrameOrPlugin.h"
9 #include "core/frame/FrameView.h" 9 #include "core/frame/FrameView.h"
10 #include "platform/FrameViewBase.h" 10 #include "platform/FrameViewBase.h"
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after
43 void SetFrameRect(const IntRect&) override; 43 void SetFrameRect(const IntRect&) override;
44 const IntRect& FrameRect() const override { return frame_rect_; } 44 const IntRect& FrameRect() const override { return frame_rect_; }
45 IntPoint Location() const override { return frame_rect_.Location(); } 45 IntPoint Location() const override { return frame_rect_.Location(); }
46 void Paint(GraphicsContext&, const CullRect&) const override {} 46 void Paint(GraphicsContext&, const CullRect&) const override {}
47 void Hide() override; 47 void Hide() override;
48 void Show() override; 48 void Show() override;
49 void SetParentVisible(bool) override; 49 void SetParentVisible(bool) override;
50 50
51 IntRect ConvertFromContainingFrameViewBase(const IntRect&) const override; 51 IntRect ConvertFromContainingFrameViewBase(const IntRect&) const override;
52 52
53 void UpdateRemoteViewportIntersection();
54
53 DECLARE_VIRTUAL_TRACE(); 55 DECLARE_VIRTUAL_TRACE();
54 56
55 private: 57 private:
56 explicit RemoteFrameView(RemoteFrame*); 58 explicit RemoteFrameView(RemoteFrame*);
57 59
58 void UpdateRemoteViewportIntersection();
59
60 // The properties and handling of the cycle between RemoteFrame 60 // The properties and handling of the cycle between RemoteFrame
61 // and its RemoteFrameView corresponds to that between LocalFrame 61 // and its RemoteFrameView corresponds to that between LocalFrame
62 // and FrameView. Please see the FrameView::m_frame comment for 62 // and FrameView. Please see the FrameView::m_frame comment for
63 // details. 63 // details.
64 Member<RemoteFrame> remote_frame_; 64 Member<RemoteFrame> remote_frame_;
65 Member<FrameView> parent_; 65 Member<FrameView> parent_;
66 IntRect last_viewport_intersection_; 66 IntRect last_viewport_intersection_;
67 IntRect frame_rect_; 67 IntRect frame_rect_;
68 bool self_visible_; 68 bool self_visible_;
69 bool parent_visible_; 69 bool parent_visible_;
70 }; 70 };
71 71
72 DEFINE_TYPE_CASTS(RemoteFrameView, 72 DEFINE_TYPE_CASTS(RemoteFrameView,
73 FrameViewBase, 73 FrameViewBase,
74 frameViewBase, 74 frameViewBase,
75 frameViewBase->IsRemoteFrameView(), 75 frameViewBase->IsRemoteFrameView(),
76 frameViewBase.IsRemoteFrameView()); 76 frameViewBase.IsRemoteFrameView());
77 77
78 } // namespace blink 78 } // namespace blink
79 79
80 #endif // RemoteFrameView_h 80 #endif // RemoteFrameView_h
OLDNEW
« no previous file with comments | « third_party/WebKit/Source/core/frame/FrameView.cpp ('k') | third_party/WebKit/Source/core/frame/RemoteFrameView.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698