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 #include "config.h" | 5 #include "config.h" |
6 #include "public/web/WebFrame.h" | 6 #include "public/web/WebFrame.h" |
7 | 7 |
8 #include "core/frame/RemoteFrame.h" | 8 #include "core/frame/RemoteFrame.h" |
9 #include "core/html/HTMLFrameOwnerElement.h" | 9 #include "core/html/HTMLFrameOwnerElement.h" |
10 #include "platform/UserGestureIndicator.h" | 10 #include "platform/UserGestureIndicator.h" |
(...skipping 69 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
80 oldFrame->disconnectOwnerElement(); | 80 oldFrame->disconnectOwnerElement(); |
81 if (frame->isWebLocalFrame()) { | 81 if (frame->isWebLocalFrame()) { |
82 toWebLocalFrameImpl(frame)->initializeCoreFrame(oldFrame->host(), owner,
oldFrame->tree().name(), nullAtom); | 82 toWebLocalFrameImpl(frame)->initializeCoreFrame(oldFrame->host(), owner,
oldFrame->tree().name(), nullAtom); |
83 } else { | 83 } else { |
84 toWebRemoteFrameImpl(frame)->initializeCoreFrame(oldFrame->host(), owner
, oldFrame->tree().name()); | 84 toWebRemoteFrameImpl(frame)->initializeCoreFrame(oldFrame->host(), owner
, oldFrame->tree().name()); |
85 } | 85 } |
86 | 86 |
87 return true; | 87 return true; |
88 } | 88 } |
89 | 89 |
| 90 void WebFrame::detach() |
| 91 { |
| 92 toCoreFrame(this)->detach(); |
| 93 } |
| 94 |
90 WebFrame* WebFrame::opener() const | 95 WebFrame* WebFrame::opener() const |
91 { | 96 { |
92 return m_opener; | 97 return m_opener; |
93 } | 98 } |
94 | 99 |
95 void WebFrame::setOpener(WebFrame* opener) | 100 void WebFrame::setOpener(WebFrame* opener) |
96 { | 101 { |
97 if (m_opener) | 102 if (m_opener) |
98 m_opener->m_openedFrameTracker->remove(this); | 103 m_opener->m_openedFrameTracker->remove(this); |
99 if (opener) | 104 if (opener) |
(...skipping 131 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
231 visitor->trace(toWebLocalFrameImpl(child)); | 236 visitor->trace(toWebLocalFrameImpl(child)); |
232 else | 237 else |
233 visitor->trace(toWebRemoteFrameImpl(child)); | 238 visitor->trace(toWebRemoteFrameImpl(child)); |
234 | 239 |
235 child = child->nextSibling(); | 240 child = child->nextSibling(); |
236 } | 241 } |
237 #endif | 242 #endif |
238 } | 243 } |
239 | 244 |
240 } // namespace blink | 245 } // namespace blink |
OLD | NEW |