summaryrefslogtreecommitdiffstats
path: root/chrome/renderer/render_view.h
diff options
context:
space:
mode:
authorsky@chromium.org <sky@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-11-05 16:31:31 +0000
committersky@chromium.org <sky@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-11-05 16:31:31 +0000
commit882daa9e07369d55b9e7647e0dd3b3316d3a74a4 (patch)
tree63bea18fc9b174b91728fe8fc86ea1cd6628c6f4 /chrome/renderer/render_view.h
parent6898bbedb15bfddf91ea125e3ffde4b1789d9bf3 (diff)
downloadchromium_src-882daa9e07369d55b9e7647e0dd3b3316d3a74a4.zip
chromium_src-882daa9e07369d55b9e7647e0dd3b3316d3a74a4.tar.gz
chromium_src-882daa9e07369d55b9e7647e0dd3b3316d3a74a4.tar.bz2
Makes it so that we sync changes in content state more often for selected tabs. This is necesitated by the fact that when closing a tab we don't grab the most recent content state, leaving session restore with slightly stale data. To really fix this requires sending a message on tab close and waiting for it, but that induces tab close jank, something we're not going to do.
BUG=17220 TEST=none Review URL: http://codereview.chromium.org/342100 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@31097 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/renderer/render_view.h')
-rw-r--r--chrome/renderer/render_view.h20
1 files changed, 10 insertions, 10 deletions
diff --git a/chrome/renderer/render_view.h b/chrome/renderer/render_view.h
index c6fb295..f162b99 100644
--- a/chrome/renderer/render_view.h
+++ b/chrome/renderer/render_view.h
@@ -392,11 +392,11 @@ class RenderView : public RenderWidget,
const std::string& css,
const std::string& id);
- int delay_seconds_for_form_state_sync() const {
- return delay_seconds_for_form_state_sync_;
- }
- void set_delay_seconds_for_form_state_sync(int delay_in_seconds) {
- delay_seconds_for_form_state_sync_ = delay_in_seconds;
+ // Whether content state (such as form state and scroll position) should be
+ // sent to the browser immediately. This is normally false, but set to true
+ // by some tests.
+ void set_send_content_state_immediately(bool value) {
+ send_content_state_immediately_ = value;
}
AudioMessageFilter* audio_message_filter() { return audio_message_filter_; }
@@ -735,6 +735,9 @@ class RenderView : public RenderWidget,
// If |url| is empty, show |fallback_url|.
void UpdateTargetURL(const GURL& url, const GURL& fallback_url);
+ // Starts nav_state_sync_timer_ if it isn't already running.
+ void StartNavStateSyncTimerIfNecessary();
+
// Bitwise-ORed set of extra bindings that have been enabled. See
// BindingsPolicy for details.
int enabled_bindings_;
@@ -897,11 +900,8 @@ class RenderView : public RenderWidget,
// True if the browser is showing the spelling panel for us.
bool spelling_panel_visible_;
- // Time in seconds of the delay between syncing page state such as form
- // elements and scroll position. This timeout allows us to avoid spamming the
- // browser process with every little thing that changes. This normally doesn't
- // change but is overridden by tests.
- int delay_seconds_for_form_state_sync_;
+ // See description above setter.
+ bool send_content_state_immediately_;
scoped_refptr<AudioMessageFilter> audio_message_filter_;