summaryrefslogtreecommitdiffstats
path: root/chrome/browser/history/history.h
diff options
context:
space:
mode:
authoryuzo@chromium.org <yuzo@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-07-01 04:51:47 +0000
committeryuzo@chromium.org <yuzo@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-07-01 04:51:47 +0000
commitbefd8d82ec47c02d6b17d9fa7b6c1f3bb703150f (patch)
treecdcbb4ced140ad2db3018c3fa74e14d5f1540d59 /chrome/browser/history/history.h
parentfeab536198e21e8f4777c3c8035a6ca6479f6912 (diff)
downloadchromium_src-befd8d82ec47c02d6b17d9fa7b6c1f3bb703150f.zip
chromium_src-befd8d82ec47c02d6b17d9fa7b6c1f3bb703150f.tar.gz
chromium_src-befd8d82ec47c02d6b17d9fa7b6c1f3bb703150f.tar.bz2
Fix: Certain redirections remove sites from the history
Currently, PageTransition::CHAIN_END flag is removed from a History database entry for a redirect source, even when the redirect is user initiated. This change prevents the flag removal for user-initiated redirects. TEST=Open http://www.google.com/ig and click on tabs multiple times. Without this change, only the last tab clicked appears in the History page (CTRL+H). With this change, all the tabs should appear. TESTED=gcl try, manually BUG=11355 Review URL: http://codereview.chromium.org/147145 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@19708 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/history/history.h')
-rw-r--r--chrome/browser/history/history.h12
1 files changed, 9 insertions, 3 deletions
diff --git a/chrome/browser/history/history.h b/chrome/browser/history/history.h
index 8ca8878..fcea84f 100644
--- a/chrome/browser/history/history.h
+++ b/chrome/browser/history/history.h
@@ -155,13 +155,18 @@ class HistoryService : public CancelableRequestProvider,
// one entry). If there are no redirects, this array may also be empty for
// the convenience of callers.
//
+ // 'did_replace_entry' is true when the navigation entry for this page has
+ // replaced the existing entry. A non-user initiated redirect causes such
+ // replacement.
+ //
// All "Add Page" functions will update the visited link database.
void AddPage(const GURL& url,
const void* id_scope,
int32 page_id,
const GURL& referrer,
PageTransition::Type transition,
- const RedirectList& redirects);
+ const RedirectList& redirects,
+ bool did_replace_entry);
// For adding pages to history with a specific time. This is for testing
// purposes. Call the previous one to use the current time.
@@ -171,12 +176,13 @@ class HistoryService : public CancelableRequestProvider,
int32 page_id,
const GURL& referrer,
PageTransition::Type transition,
- const RedirectList& redirects);
+ const RedirectList& redirects,
+ bool did_replace_entry);
// For adding pages to history where no tracking information can be done.
void AddPage(const GURL& url) {
AddPage(url, NULL, 0, GURL::EmptyGURL(), PageTransition::LINK,
- RedirectList());
+ RedirectList(), false);
}
// Sets the title for the given page. The page should be in history. If it