| 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 "web/OpenedFrameTracker.h" | 11 #include "web/OpenedFrameTracker.h" |
| 11 #include "web/WebLocalFrameImpl.h" | 12 #include "web/WebLocalFrameImpl.h" |
| 12 #include "web/WebRemoteFrameImpl.h" | 13 #include "web/WebRemoteFrameImpl.h" |
| 13 #include <algorithm> | 14 #include <algorithm> |
| 14 | 15 |
| 15 namespace blink { | 16 namespace blink { |
| 16 | 17 |
| 17 Frame* toCoreFrame(const WebFrame* frame) | 18 Frame* toCoreFrame(const WebFrame* frame) |
| 18 { | 19 { |
| 19 if (!frame) | 20 if (!frame) |
| (...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 68 Frame* oldFrame = toCoreFrame(this); | 69 Frame* oldFrame = toCoreFrame(this); |
| 69 FrameOwner* owner = oldFrame->owner(); | 70 FrameOwner* owner = oldFrame->owner(); |
| 70 oldFrame->disconnectOwnerElement(); | 71 oldFrame->disconnectOwnerElement(); |
| 71 if (frame->isWebLocalFrame()) { | 72 if (frame->isWebLocalFrame()) { |
| 72 toWebLocalFrameImpl(frame)->initializeCoreFrame(oldFrame->host(), owner,
oldFrame->tree().name(), nullAtom); | 73 toWebLocalFrameImpl(frame)->initializeCoreFrame(oldFrame->host(), owner,
oldFrame->tree().name(), nullAtom); |
| 73 } else { | 74 } else { |
| 74 toWebRemoteFrameImpl(frame)->initializeCoreFrame(oldFrame->host(), owner
, oldFrame->tree().name()); | 75 toWebRemoteFrameImpl(frame)->initializeCoreFrame(oldFrame->host(), owner
, oldFrame->tree().name()); |
| 75 } | 76 } |
| 76 } | 77 } |
| 77 | 78 |
| 79 v8::Handle<v8::Value> WebFrame::executeScriptAndReturnValueForTests(const WebScr
iptSource& source) |
| 80 { |
| 81 // FIXME: This fake UserGestureIndicator is required for a bunch of browser |
| 82 // tests to pass. We should update the tests to simulate input and get rid |
| 83 // of this. |
| 84 // http://code.google.com/p/chromium/issues/detail?id=86397 |
| 85 UserGestureIndicator gestureIndicator(DefinitelyProcessingNewUserGesture); |
| 86 return executeScriptAndReturnValue(source); |
| 87 } |
| 88 |
| 78 WebFrame* WebFrame::opener() const | 89 WebFrame* WebFrame::opener() const |
| 79 { | 90 { |
| 80 return m_opener; | 91 return m_opener; |
| 81 } | 92 } |
| 82 | 93 |
| 83 void WebFrame::setOpener(WebFrame* opener) | 94 void WebFrame::setOpener(WebFrame* opener) |
| 84 { | 95 { |
| 85 if (m_opener) | 96 if (m_opener) |
| 86 m_opener->m_openedFrameTracker->remove(this); | 97 m_opener->m_openedFrameTracker->remove(this); |
| 87 if (opener) | 98 if (opener) |
| (...skipping 115 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 203 , m_openedFrameTracker(new OpenedFrameTracker) | 214 , m_openedFrameTracker(new OpenedFrameTracker) |
| 204 { | 215 { |
| 205 } | 216 } |
| 206 | 217 |
| 207 WebFrame::~WebFrame() | 218 WebFrame::~WebFrame() |
| 208 { | 219 { |
| 209 m_openedFrameTracker.reset(0); | 220 m_openedFrameTracker.reset(0); |
| 210 } | 221 } |
| 211 | 222 |
| 212 } // namespace blink | 223 } // namespace blink |
| OLD | NEW |