mirror of
https://bitbucket.org/chromiumembedded/cef
synced 2025-06-05 21:39:12 +02:00
Update to Chromium revision ad468e8b (#292352).
- Building Chromium using SVN is no longer supported. - Remove CefDOMEvent and CefDOMEventListener (issue #933). - Remove CefRenderHandler::OnScrollOffsetChanged (http://crbug.com/404656). - Remove UR_FLAG_REPORT_LOAD_TIMING (https://codereview.chromium.org/451623002/). git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@1816 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
This commit is contained in:
@ -6,7 +6,6 @@
|
||||
#include "libcef/common/tracker.h"
|
||||
#include "libcef/renderer/browser_impl.h"
|
||||
#include "libcef/renderer/dom_document_impl.h"
|
||||
#include "libcef/renderer/dom_event_impl.h"
|
||||
#include "libcef/renderer/thread_util.h"
|
||||
#include "libcef/renderer/webkit_glue.h"
|
||||
|
||||
@ -16,7 +15,6 @@
|
||||
#include "third_party/WebKit/public/platform/WebString.h"
|
||||
#include "third_party/WebKit/public/web/WebDocument.h"
|
||||
#include "third_party/WebKit/public/web/WebDOMEvent.h"
|
||||
#include "third_party/WebKit/public/web/WebDOMEventListener.h"
|
||||
#include "third_party/WebKit/public/web/WebElement.h"
|
||||
#include "third_party/WebKit/public/web/WebFrame.h"
|
||||
#include "third_party/WebKit/public/web/WebFormControlElement.h"
|
||||
@ -26,7 +24,6 @@
|
||||
|
||||
using blink::WebDocument;
|
||||
using blink::WebDOMEvent;
|
||||
using blink::WebDOMEventListener;
|
||||
using blink::WebElement;
|
||||
using blink::WebFrame;
|
||||
using blink::WebFormControlElement;
|
||||
@ -35,55 +32,6 @@ using blink::WebNode;
|
||||
using blink::WebSelectElement;
|
||||
using blink::WebString;
|
||||
|
||||
namespace {
|
||||
|
||||
// Wrapper implementation for WebDOMEventListener.
|
||||
class CefDOMEventListenerWrapper : public WebDOMEventListener,
|
||||
public CefTrackNode {
|
||||
public:
|
||||
CefDOMEventListenerWrapper(CefBrowserImpl* browser, WebFrame* frame,
|
||||
CefRefPtr<CefDOMEventListener> listener)
|
||||
: browser_(browser),
|
||||
frame_(frame),
|
||||
listener_(listener) {
|
||||
// Cause this object to be deleted immediately before the frame is closed.
|
||||
browser->AddFrameObject(webkit_glue::GetIdentifier(frame), this);
|
||||
}
|
||||
virtual ~CefDOMEventListenerWrapper() {
|
||||
CEF_REQUIRE_RT();
|
||||
}
|
||||
|
||||
virtual void handleEvent(const WebDOMEvent& event) {
|
||||
CefRefPtr<CefDOMDocumentImpl> documentImpl;
|
||||
CefRefPtr<CefDOMEventImpl> eventImpl;
|
||||
|
||||
if (!event.isNull()) {
|
||||
// Create CefDOMDocumentImpl and CefDOMEventImpl objects that are valid
|
||||
// only for the scope of this method.
|
||||
const WebDocument& document = frame_->document();
|
||||
if (!document.isNull()) {
|
||||
documentImpl = new CefDOMDocumentImpl(browser_, frame_);
|
||||
eventImpl = new CefDOMEventImpl(documentImpl, event);
|
||||
}
|
||||
}
|
||||
|
||||
listener_->HandleEvent(eventImpl.get());
|
||||
|
||||
if (eventImpl.get())
|
||||
eventImpl->Detach();
|
||||
if (documentImpl.get())
|
||||
documentImpl->Detach();
|
||||
}
|
||||
|
||||
protected:
|
||||
CefBrowserImpl* browser_;
|
||||
WebFrame* frame_;
|
||||
CefRefPtr<CefDOMEventListener> listener_;
|
||||
};
|
||||
|
||||
} // namespace
|
||||
|
||||
|
||||
CefDOMNodeImpl::CefDOMNodeImpl(CefRefPtr<CefDOMDocumentImpl> document,
|
||||
const blink::WebNode& node)
|
||||
: document_(document),
|
||||
@ -331,18 +279,6 @@ CefRefPtr<CefDOMNode> CefDOMNodeImpl::GetLastChild() {
|
||||
return document_->GetOrCreateNode(node_.lastChild());
|
||||
}
|
||||
|
||||
void CefDOMNodeImpl::AddEventListener(const CefString& eventType,
|
||||
CefRefPtr<CefDOMEventListener> listener,
|
||||
bool useCapture) {
|
||||
if (!VerifyContext())
|
||||
return;
|
||||
|
||||
node_.addEventListener(base::string16(eventType),
|
||||
new CefDOMEventListenerWrapper(document_->GetBrowser(),
|
||||
document_->GetFrame(), listener),
|
||||
useCapture);
|
||||
}
|
||||
|
||||
CefString CefDOMNodeImpl::GetElementTagName() {
|
||||
CefString str;
|
||||
if (!VerifyContext())
|
||||
|
Reference in New Issue
Block a user