summaryrefslogtreecommitdiffstats
path: root/chrome/browser/instant
diff options
context:
space:
mode:
authorsky@chromium.org <sky@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-09-08 13:58:23 +0000
committersky@chromium.org <sky@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-09-08 13:58:23 +0000
commitb6ea339e66564ae68cc78e1ec1c99ef88bc157d0 (patch)
treedf8e79b7956414aad26c4aa5ec9c4ed5c03bd264 /chrome/browser/instant
parent9336ac3b22efce861456ff011230b03b907a37ab (diff)
downloadchromium_src-b6ea339e66564ae68cc78e1ec1c99ef88bc157d0.zip
chromium_src-b6ea339e66564ae68cc78e1ec1c99ef88bc157d0.tar.gz
chromium_src-b6ea339e66564ae68cc78e1ec1c99ef88bc157d0.tar.bz2
Makes it so that loads originating from instant never show auth
dialogs. This restriction is imposed by not being able to merge tab contents with a pending navigation (auth dialogs result in a pending navigation until the user authenticates). BUG=89439 TEST=with instant enabled try a page that loads an auth dialog, make sure you only see the dialog when you press enter. R=cbentzel@chromium.org,jam@chromium.org Review URL: http://codereview.chromium.org/7848007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@100142 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/instant')
-rw-r--r--chrome/browser/instant/instant_loader.cc11
-rw-r--r--chrome/browser/instant/instant_loader.h4
2 files changed, 10 insertions, 5 deletions
diff --git a/chrome/browser/instant/instant_loader.cc b/chrome/browser/instant/instant_loader.cc
index cb2d593..f1c06b6 100644
--- a/chrome/browser/instant/instant_loader.cc
+++ b/chrome/browser/instant/instant_loader.cc
@@ -58,12 +58,13 @@ const int kUpdateBoundsDelayMS = 1000;
// If this status code is seen instant is disabled for the specified host.
const int kHostBlacklistStatusCode = 403;
-// Header and value set for all loads.
-const char kPreviewHeader[] = "X-Purpose";
-const char kPreviewHeaderValue[] = "instant";
-
} // namespace
+// static
+const char* const InstantLoader::kInstantHeader = "X-Purpose";
+// static
+const char* const InstantLoader::kInstantHeaderValue = "instant";
+
// FrameLoadObserver is responsible for determining if the page supports
// instant after it has loaded.
class InstantLoader::FrameLoadObserver : public NotificationObserver {
@@ -416,7 +417,7 @@ void InstantLoader::TabContentsDelegateImpl::NavigationStateChanged(
void InstantLoader::TabContentsDelegateImpl::AddNavigationHeaders(
const GURL& url,
std::string* headers) {
- net::HttpUtil::AppendHeaderIfMissing(kPreviewHeader, kPreviewHeaderValue,
+ net::HttpUtil::AppendHeaderIfMissing(kInstantHeader, kInstantHeaderValue,
headers);
}
diff --git a/chrome/browser/instant/instant_loader.h b/chrome/browser/instant/instant_loader.h
index 515a5df..e95164d 100644
--- a/chrome/browser/instant/instant_loader.h
+++ b/chrome/browser/instant/instant_loader.h
@@ -37,6 +37,10 @@ class TemplateURL;
// loaded as is.
class InstantLoader : public NotificationObserver {
public:
+ // Header and value set on loads that originate from instant.
+ static const char* const kInstantHeader;
+ static const char* const kInstantHeaderValue;
+
InstantLoader(InstantLoaderDelegate* delegate, TemplateURLID id);
virtual ~InstantLoader();