Chromium Code Reviews| OLD | NEW |
|---|---|
| 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 WebRemoteFrame_h | 5 #ifndef WebRemoteFrame_h |
| 6 #define WebRemoteFrame_h | 6 #define WebRemoteFrame_h |
| 7 | 7 |
| 8 #include "public/web/WebFrame.h" | 8 #include "public/web/WebFrame.h" |
| 9 #include "public/web/WebSandboxFlags.h" | 9 #include "public/web/WebSandboxFlags.h" |
| 10 | 10 |
| 11 namespace blink { | 11 namespace blink { |
| 12 | 12 |
| 13 enum class WebTreeScopeType; | 13 enum class WebTreeScopeType; |
| 14 class WebFrameClient; | 14 class WebFrameClient; |
| 15 class WebRemoteFrameClient; | 15 class WebRemoteFrameClient; |
| 16 | 16 |
| 17 class WebRemoteFrame : public WebFrame { | 17 class WebRemoteFrame : public WebFrame { |
| 18 public: | 18 public: |
| 19 BLINK_EXPORT static WebRemoteFrame* create(WebTreeScopeType, WebRemoteFrameC lient*); | 19 BLINK_EXPORT static WebRemoteFrame* create(WebTreeScopeType, WebRemoteFrameC lient*); |
| 20 | 20 |
| 21 // Functions for the embedder replicate the frame tree between processes. | 21 // Functions for the embedder replicate the frame tree between processes. |
| 22 // TODO(dcheng): The embedder currently does not replicate local frames in | 22 // TODO(dcheng): The embedder currently does not replicate local frames in |
| 23 // insertion order, so the local child version takes a previous sibling to | 23 // insertion order, so the local child version takes a previous sibling to |
| 24 // ensure that it is inserted into the correct location in the list of | 24 // ensure that it is inserted into the correct location in the list of |
| 25 // children. | 25 // children. |
| 26 virtual WebLocalFrame* createLocalChild(WebTreeScopeType, const WebString& n ame, WebSandboxFlags, WebFrameClient*, WebFrame* previousSibling, const WebFrame OwnerProperties&) = 0; | 26 virtual WebLocalFrame* createLocalChild(WebTreeScopeType, const WebString& n ame, const WebString& uniqueName, WebSandboxFlags, WebFrameClient*, WebFrame* pr eviousSibling, const WebFrameOwnerProperties&) = 0; |
| 27 | 27 |
| 28 virtual WebRemoteFrame* createRemoteChild(WebTreeScopeType, const WebString& name, WebSandboxFlags, WebRemoteFrameClient*) = 0; | 28 virtual WebRemoteFrame* createRemoteChild(WebTreeScopeType, const WebString& name, const WebString& uniqueName, WebSandboxFlags, WebRemoteFrameClient*) = 0; |
| 29 | 29 |
| 30 // Transfer initial drawing parameters from a local frame. | 30 // Transfer initial drawing parameters from a local frame. |
| 31 virtual void initializeFromFrame(WebLocalFrame*) const = 0; | 31 virtual void initializeFromFrame(WebLocalFrame*) const = 0; |
| 32 | 32 |
| 33 // Set security origin replicated from another process. | 33 // Set security origin replicated from another process. |
| 34 virtual void setReplicatedOrigin(const WebSecurityOrigin&) const = 0; | 34 virtual void setReplicatedOrigin(const WebSecurityOrigin&) const = 0; |
| 35 | 35 |
| 36 // Set sandbox flags replicated from another process. | 36 // Set sandbox flags replicated from another process. |
| 37 virtual void setReplicatedSandboxFlags(WebSandboxFlags) const = 0; | 37 virtual void setReplicatedSandboxFlags(WebSandboxFlags) const = 0; |
| 38 | 38 |
| 39 // Set frame name replicated from another process. | 39 // Set frame name replicated from another process. |
|
alexmos
2016/02/10 00:46:46
nit: explain uniqueName in the comment.
Łukasz Anforowicz
2016/02/10 22:10:51
Done.
| |
| 40 virtual void setReplicatedName(const WebString&) const = 0; | 40 virtual void setReplicatedName(const WebString& name, const WebString& uniqu eName) const = 0; |
| 41 | 41 |
| 42 // Set frame enforcement of strict mixed content checking replicated from an other process. | 42 // Set frame enforcement of strict mixed content checking replicated from an other process. |
| 43 virtual void setReplicatedShouldEnforceStrictMixedContentChecking(bool) cons t = 0; | 43 virtual void setReplicatedShouldEnforceStrictMixedContentChecking(bool) cons t = 0; |
| 44 | 44 |
| 45 virtual void DispatchLoadEventForFrameOwner() const = 0; | 45 virtual void DispatchLoadEventForFrameOwner() const = 0; |
| 46 | 46 |
| 47 virtual void didStartLoading() = 0; | 47 virtual void didStartLoading() = 0; |
| 48 virtual void didStopLoading() = 0; | 48 virtual void didStopLoading() = 0; |
| 49 | 49 |
| 50 // Returns true if this frame should be ignored during hittesting. | 50 // Returns true if this frame should be ignored during hittesting. |
| 51 virtual bool isIgnoredForHitTest() const = 0; | 51 virtual bool isIgnoredForHitTest() const = 0; |
| 52 | 52 |
| 53 // Temporary method to allow embedders to get the script context of a | 53 // Temporary method to allow embedders to get the script context of a |
| 54 // remote frame. This should only be used by legacy code that has not yet | 54 // remote frame. This should only be used by legacy code that has not yet |
| 55 // migrated over to the new OOPI infrastructure. | 55 // migrated over to the new OOPI infrastructure. |
| 56 virtual v8::Local<v8::Context> deprecatedMainWorldScriptContext() const = 0; | 56 virtual v8::Local<v8::Context> deprecatedMainWorldScriptContext() const = 0; |
| 57 | 57 |
| 58 protected: | 58 protected: |
| 59 explicit WebRemoteFrame(WebTreeScopeType scope) : WebFrame(scope) { } | 59 explicit WebRemoteFrame(WebTreeScopeType scope) : WebFrame(scope) { } |
| 60 }; | 60 }; |
| 61 | 61 |
| 62 } // namespace blink | 62 } // namespace blink |
| 63 | 63 |
| 64 #endif // WebRemoteFrame_h | 64 #endif // WebRemoteFrame_h |
| OLD | NEW |