summaryrefslogtreecommitdiffstats
path: root/chrome/browser/session_service.cc
Commit message (Collapse)AuthorAgeFilesLines
* Changes session restore to account for apps and popups. If you havesky@google.com2008-10-301-7/+55
| | | | | | | | | | | | | | | | | | | | | session restore enabled any time you transition from no tabbed browsers to a tabbed browser (in the same profile) we restore your last session, where the last session was any previously open tabbed browsers. For example, if you start Chrome from an installed app shortcut then create a new tabbed browser (by any means) we'll restore your last session. This gives the illustion that apps are running in their own process. I would love to have test coverage of this, but I'm loathe to write anymore flakey UI tests. Need to revisit post 1.0. BUG=1883 TEST=thoroughly test session restore, especially with application shortcuts and popups. Review URL: http://codereview.chromium.org/8856 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@4202 0039d316-1c4b-4281-b951-d872f2087c98
* Add referrer to session restore.ericroman@google.com2008-10-281-21/+62
| | | | | | | | http://code.google.com/p/chromium/issues/detail?id=3774 Review URL: http://codereview.chromium.org/8649 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@4086 0039d316-1c4b-4281-b951-d872f2087c98
* Move Time, TimeDelta and TimeTicks into namespace base.dsh@google.com2008-10-271-0/+2
| | | | | | Review URL: http://codereview.chromium.org/7995 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@4022 0039d316-1c4b-4281-b951-d872f2087c98
* Wires up session restore so that it correctly deals with thesky@google.com2008-09-171-13/+77
| | | | | | | | | | | | navigation controller removing entries from the front of its list. BUG=1324021 TEST=covered by unit tests, but make sure you don't see problems with session restore. Review URL: http://codereview.chromium.org/2906 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@2310 0039d316-1c4b-4281-b951-d872f2087c98
* This is almost a complete rewrite of DidNavigate and the associated ↵brettw@google.com2008-09-141-2/+7
| | | | | | | | | | NavigationController logic. The approach is that the NavigationController should be responsible for the logic and memory management of navigation. Previously, half the logic and memory management lived in WebContents which made it very hard to figure out what was going on. I split out the various navigation types into separate functions, which then copy and update any existing NavigationEntry as necessary. Previously, WebContents would make a new one which would be manually populated with random fields (I think some were forgotten, too), and then the NavigationController may or may not commit it. Review URL: http://codereview.chromium.org/479 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@2201 0039d316-1c4b-4281-b951-d872f2087c98
* Changes session service to not persist NavigationEntries that havesky@google.com2008-09-111-7/+13
| | | | | | | | | | | POST data. This is a security problem as POST data can contain passwords in plain text. BUG=1361980 TEST=none git-svn-id: svn://svn.chromium.org/chrome/trunk/src@2063 0039d316-1c4b-4281-b951-d872f2087c98
* Cleanup navigation_entry.h. I made the accessors consistent and in Google ↵brettw@google.com2008-08-271-12/+11
| | | | | | style, and organized and commented all the entries. Hopefully it will be much easier to find things and deal with this class. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1449 0039d316-1c4b-4281-b951-d872f2087c98
* Use a more compact license header in source files.license.bot2008-08-241-28/+4
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1287 0039d316-1c4b-4281-b951-d872f2087c98
* Cleans up notifications for the NavigationController. There were severalbrettw@google.com2008-08-191-3/+3
| | | | | | | | | | | | notifications before and some of them were very unclear and misused (STATE_CHANGED). This one, and PRUNED were called unnecessarily in some cases as well. I replaced STATE_CHANGED and INDEX_CHANGED with ENTRY_COMMITTED which is more clear and covers (I think!) all the cases that the callers care about. I added a simple notification testing helper class, and used in the navigation controller unit tests to make sure we get the proper notifications. I had to change NotificationSource/Details to have a = and copy constructor so I can track them easily in my helper. I don't see why this would be bad. BUG=1325636,1321376,1325779 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1039 0039d316-1c4b-4281-b951-d872f2087c98
* git-svn-id: svn://svn.chromium.org/chrome/trunk/src@963 ↵brettw@google.com2008-08-151-3/+3
| | | | 0039d316-1c4b-4281-b951-d872f2087c98
* Cleans up notifications for the NavigationController. There were severalbrettw@google.com2008-08-151-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | notifications before and some of them were very unclear and misused (STATE_CHANGED). This one, and PRUNED were called unnecessarily in some cases as well. I replaced STATE_CHANGED and INDEX_CHANGED with ENTRY_COMMITTED which is more clear and covers (I think!) all the cases that the callers care about. I added a simple notification testing helper class, and used in the navigation controller unit tests to make sure we get the proper notifications. I had to change NotificationSource/Details to have a = and copy constructor so I can track them easily in my helper. I don't see why this would be bad. As part of this, I got very frustrated recompiling the world whenever navigation_types.h changed. So I removed this dependency from the notification service which everybody includes. Most of the changed files are adding notification_types.h in the .cc file where it's needed. BUG=1325636,1321376,1325779 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@956 0039d316-1c4b-4281-b951-d872f2087c98
* Large patch set (159 files total) to cleanup the includes.maruel@google.com2008-08-151-3/+3
| | | | | | | | | | - Slightly reduce the size of the generated .lib files ~3%. - Reduce the number of implicit and explicit atl and windows includes. hooray! - Help incremental build by reducing the number of unnecessary included files. - Split some template class in two, one base class for the common code and the specialization that inherits from the base class. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@937 0039d316-1c4b-4281-b951-d872f2087c98
* First, this removes the dependency of NavigationController on thebrettw@google.com2008-08-131-1/+58
| | | | | | | | | | | | | | | | | | | | | | SessionService. There were already some notifications that could be used to tell what's going on, and I filled out the rest. I moved some notifications from various places to the NavigationController. In ssl_blocking_page, I removed a notification because it also calls DidNavigateToEntry which does the notification (we got duplicate calls before). In browser.cc I removed the tab parented notification since this is already called by NavigationController::SetWindowID. I removed some obsolete notifications and associated structures, especially in history (like HOST_DELETED that was never issued). I renamed the window_map_ in the MetricsService becuase it was actually a map of controllers and Windows. This also reorders the navigation_types header file to try to bring some order to it. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@807 0039d316-1c4b-4281-b951-d872f2087c98
* Rename ChromeFrame->BrowserWindowbeng@google.com2008-07-301-3/+3
| | | | | | | | | Move static utility functions to FrameUtil class. B=1294302 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@102 0039d316-1c4b-4281-b951-d872f2087c98
* Add chrome to the repository.initial.commit2008-07-261-0/+1113
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15 0039d316-1c4b-4281-b951-d872f2087c98