Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(287)

Unified Diff: webkit/glue/webframe_impl.cc

Issue 200054: Hook up WebFrameClient, replacing many WebViewDelegate methods.... (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: '' Created 11 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « webkit/glue/webframe_impl.h ('k') | webkit/glue/webframeloaderclient_impl.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: webkit/glue/webframe_impl.cc
===================================================================
--- webkit/glue/webframe_impl.cc (revision 25715)
+++ webkit/glue/webframe_impl.cc (working copy)
@@ -147,6 +147,7 @@
#include "webkit/api/public/WebConsoleMessage.h"
#include "webkit/api/public/WebFindOptions.h"
#include "webkit/api/public/WebForm.h"
+#include "webkit/api/public/WebFrameClient.h"
#include "webkit/api/public/WebHistoryItem.h"
#include "webkit/api/public/WebRange.h"
#include "webkit/api/public/WebRect.h"
@@ -217,6 +218,7 @@
using WebKit::WebDataSourceImpl;
using WebKit::WebFindOptions;
using WebKit::WebFrame;
+using WebKit::WebFrameClient;
using WebKit::WebHistoryItem;
using WebKit::WebForm;
using WebKit::WebRange;
@@ -898,6 +900,10 @@
return frame()->domWindow()->pendingUnloadEventListeners();
}
+bool WebFrameImpl::isProcessingUserGesture() const {
+ return frame()->loader()->isProcessingUserGesture();
+}
+
void WebFrameImpl::replaceSelection(const WebString& wtext) {
String text = webkit_glue::WebStringToString(wtext);
RefPtr<DocumentFragment> fragment = createFragmentFromText(
@@ -1400,7 +1406,7 @@
total_matchcount_ += count;
// Update the UI with the latest findings.
- WebViewDelegate* webview_delegate = GetWebViewImpl()->GetDelegate();
+ WebViewDelegate* webview_delegate = GetWebViewImpl()->delegate();
DCHECK(webview_delegate);
if (webview_delegate)
webview_delegate->ReportFindInPageMatchCount(total_matchcount_, request_id,
@@ -1411,7 +1417,7 @@
int active_match_ordinal,
int request_id) {
// Update the UI with the latest selection rect.
- WebViewDelegate* webview_delegate = GetWebViewImpl()->GetDelegate();
+ WebViewDelegate* webview_delegate = GetWebViewImpl()->delegate();
DCHECK(webview_delegate);
if (webview_delegate) {
webview_delegate->ReportFindInPageSelection(
@@ -1452,9 +1458,10 @@
int WebFrameImpl::live_object_count_ = 0;
-WebFrameImpl::WebFrameImpl()
+WebFrameImpl::WebFrameImpl(WebFrameClient* client)
: ALLOW_THIS_IN_INITIALIZER_LIST(frame_loader_client_(this)),
ALLOW_THIS_IN_INITIALIZER_LIST(scope_matches_factory_(this)),
+ client_(client),
active_match_frame_(NULL),
active_match_index_(-1),
locating_active_rect_(false),
@@ -1494,7 +1501,7 @@
const FrameLoadRequest& request, HTMLFrameOwnerElement* owner_element) {
// TODO(darin): share code with initWithName()
- scoped_refptr<WebFrameImpl> webframe = new WebFrameImpl();
+ scoped_refptr<WebFrameImpl> webframe = new WebFrameImpl(client());
// Add an extra ref on behalf of the Frame/FrameLoader, which references the
// WebFrame via the FrameLoaderClient interface. See the comment at the top
@@ -1684,16 +1691,14 @@
}
void WebFrameImpl::DidFail(const ResourceError& error, bool was_provisional) {
- WebViewImpl* web_view = GetWebViewImpl();
- WebViewDelegate* delegate = web_view->delegate();
- if (delegate) {
- const WebURLError& web_error =
- webkit_glue::ResourceErrorToWebURLError(error);
- if (was_provisional) {
- delegate->DidFailProvisionalLoadWithError(web_view, web_error, this);
- } else {
- delegate->DidFailLoadWithError(web_view, web_error, this);
- }
+ if (!client_)
+ return;
+ const WebURLError& web_error =
+ webkit_glue::ResourceErrorToWebURLError(error);
+ if (was_provisional) {
+ client_->didFailProvisionalLoad(this, web_error);
+ } else {
+ client_->didFailLoad(this, web_error);
}
}
« no previous file with comments | « webkit/glue/webframe_impl.h ('k') | webkit/glue/webframeloaderclient_impl.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698