Upstream version 11.40.271.0
[platform/framework/web/crosswalk.git] / src / third_party / WebKit / Source / web / RemoteFrameClientImpl.h
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
3 // found in the LICENSE file.
4
5 #ifndef RemoteFrameClientImpl_h
6 #define RemoteFrameClientImpl_h
7
8 #include "core/frame/RemoteFrameClient.h"
9
10 namespace blink {
11 class WebRemoteFrameImpl;
12
13 class RemoteFrameClientImpl : public RemoteFrameClient {
14 public:
15     explicit RemoteFrameClientImpl(WebRemoteFrameImpl*);
16
17     // FrameClient overrides:
18     virtual void detached() override;
19
20     virtual Frame* opener() const override;
21     virtual void setOpener(Frame*) override;
22
23     virtual Frame* parent() const override;
24     virtual Frame* top() const override;
25     virtual Frame* previousSibling() const override;
26     virtual Frame* nextSibling() const override;
27     virtual Frame* firstChild() const override;
28     virtual Frame* lastChild() const override;
29
30     virtual bool willCheckAndDispatchMessageEvent(SecurityOrigin*, MessageEvent*, LocalFrame*) const override;
31
32     // RemoteFrameClient overrides:
33     virtual void navigate(const ResourceRequest&, bool shouldReplaceCurrentEntry) override;
34     virtual void forwardInputEvent(Event*) override;
35
36     WebRemoteFrameImpl* webFrame() const { return m_webFrame; }
37
38 private:
39     WebRemoteFrameImpl* m_webFrame;
40 };
41
42 } // namespace blink
43
44 #endif // RemoteFrameClientImpl_h