summaryrefslogtreecommitdiffstats
path: root/chrome/renderer/navigation_state.h
diff options
context:
space:
mode:
authordarin@chromium.org <darin@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-08-04 17:36:55 +0000
committerdarin@chromium.org <darin@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-08-04 17:36:55 +0000
commit7ccddb8cc40f885a50541c4f45afc4253ce3c065 (patch)
treea82976f8905298f6c320ff72331fd41697bc1aa5 /chrome/renderer/navigation_state.h
parentb881ade17222078ce4e0c4dc6cb296ac34ee7387 (diff)
downloadchromium_src-7ccddb8cc40f885a50541c4f45afc4253ce3c065.zip
chromium_src-7ccddb8cc40f885a50541c4f45afc4253ce3c065.tar.gz
chromium_src-7ccddb8cc40f885a50541c4f45afc4253ce3c065.tar.bz2
Move alternate 404 error page loading out of WebFrame and into RenderView.
This involved adding a new method on WebViewDelegate to allow the embedder to intercept data being loaded for a document. I also had to plumb a few more FrameLoaderClient notifications through WebViewDelegate. See DidReceiveResponse and DidFinishLoading. R=tony BUG=15648 TEST=covered by errorpage_uitest.cc Review URL: http://codereview.chromium.org/160578 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@22389 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/renderer/navigation_state.h')
-rw-r--r--chrome/renderer/navigation_state.h22
1 files changed, 21 insertions, 1 deletions
diff --git a/chrome/renderer/navigation_state.h b/chrome/renderer/navigation_state.h
index ec45808..ecb79fd 100644
--- a/chrome/renderer/navigation_state.h
+++ b/chrome/renderer/navigation_state.h
@@ -144,6 +144,23 @@ class NavigationState : public WebKit::WebDataSource::ExtraData {
security_info_ = security_info;
}
+ bool postpone_loading_data() const {
+ return postpone_loading_data_;
+ }
+ void set_postpone_loading_data(bool postpone_loading_data) {
+ postpone_loading_data_ = postpone_loading_data;
+ }
+
+ void clear_postponed_data() {
+ postponed_data_.clear();
+ }
+ void append_postponed_data(const char* data, size_t data_len) {
+ postponed_data_.append(data, data_len);
+ }
+ const std::string& postponed_data() const {
+ return postponed_data_;
+ }
+
private:
NavigationState(PageTransition::Type transition_type,
const base::Time& request_time,
@@ -154,7 +171,8 @@ class NavigationState : public WebKit::WebDataSource::ExtraData {
load_histograms_recorded_(false),
request_committed_(false),
is_content_initiated_(is_content_initiated),
- pending_page_id_(pending_page_id) {
+ pending_page_id_(pending_page_id),
+ postpone_loading_data_(false) {
}
PageTransition::Type transition_type_;
@@ -173,6 +191,8 @@ class NavigationState : public WebKit::WebDataSource::ExtraData {
scoped_ptr<webkit_glue::PasswordForm> password_form_data_;
scoped_ptr<webkit_glue::AltErrorPageResourceFetcher> alt_error_page_fetcher_;
std::string security_info_;
+ bool postpone_loading_data_;
+ std::string postponed_data_;
DISALLOW_COPY_AND_ASSIGN(NavigationState);
};