summaryrefslogtreecommitdiffstats
path: root/chrome/browser/browser_shutdown.cc
Commit message (Collapse)AuthorAgeFilesLines
* Move ResourceBundle, DataPack to ui/baseben@chromium.org2011-01-201-1/+1
| | | | | | | | | | BUG=none TEST=none TBR=brettw Review URL: http://codereview.chromium.org/6263008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@72038 0039d316-1c4b-4281-b951-d872f2087c98
* chromeos: Notify window manager earlier about signout.derat@chromium.org2011-01-201-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | We were previously doing this pretty late in Chrome's shutdown process, which resulted in the closing of individual browser windows often being visible onscreen. This change makes us send the message before closing any windows (at least in the no-beforeunload-handlers-or-downloads case) and flushes the Xlib request queue to make sure that the message won't sit around until the next time that we process events. Note that there are still cases where beforeunload handlers aren't registered but we still won't close the window without warning and hence still show the flip through the windows. See RenderViewHost::sudden_termination_allowed_. BUG=chromium-os:9915 TEST=opened a bunch of windows and checked that we fade to black and hide the cursor immediately on ctrl-shift-q and wrench->sign out. also tested that we don't fade out until the dialog is closed with an affirmative response when http://goo.gl/gzMdN is open Review URL: http://codereview.chromium.org/6353001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@72014 0039d316-1c4b-4281-b951-d872f2087c98
* Move base/thread.h to base/threading, fix up callers to use the new location.brettw@chromium.org2011-01-011-2/+2
| | | | | | | | TEST=it compiles BUG=none Review URL: http://codereview.chromium.org/6028009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@70345 0039d316-1c4b-4281-b951-d872f2087c98
* chromeos: Notify window manager about signout.derat@chromium.org2010-12-291-0/+2
| | | | | | | | | | | | | | | | | This makes us send a message to the window manager when the user is logging out so the window manager can display a more graceful transition (currently, you can sometimes see the browser windows getting closed one by one). The power manager already sends a similar message to the window manager when we're shutting down. BUG=chromium-os:9915 TEST=built and tried it with an updated window manager. try bots pass too Review URL: http://codereview.chromium.org/6047005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@70270 0039d316-1c4b-4281-b951-d872f2087c98
* Migrate HostReferralList and StartupDNSPrefetchList from local_state to user ↵mirandac@chromium.org2010-12-161-1/+4
| | | | | | | | | | | | | preferences, in preparation for multi-profile. BUG=66717 TEST=none. Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=69320 Review URL: http://codereview.chromium.org/5800004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@69412 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 69320 - Migrate HostReferralList and StartupDNSPrefetchList from ↵mirandac@chromium.org2010-12-151-4/+1
| | | | | | | | | | | | | | local_state to user preferences, in preparation for multi-profile. BUG=66717 TEST=none. Review URL: http://codereview.chromium.org/5800004 TBR=mirandac@chromium.org Review URL: http://codereview.chromium.org/5921003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@69327 0039d316-1c4b-4281-b951-d872f2087c98
* Migrate HostReferralList and StartupDNSPrefetchList from local_state to user ↵mirandac@chromium.org2010-12-151-1/+4
| | | | | | | | | | | preferences, in preparation for multi-profile. BUG=66717 TEST=none. Review URL: http://codereview.chromium.org/5800004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@69320 0039d316-1c4b-4281-b951-d872f2087c98
* Upon WrenchMenu SignOut on ChromeOS, respect onbeforeunload/onunload ↵achuith@chromium.org2010-12-151-0/+8
| | | | | | | | | | | | | handlers, and ongoing downloads. Check if beforeunload/unload handlers and ongoing downloads exist. If they do not, signal ChromeOS to halt immediately, otherwise, shutdown the browser gracefully before shutting down ChromeOS. BUG=chromium-os:8328,chromium-os:8178 TEST=Go to achuithz600/achuith/test/onunload.html, open wrench menu and sign out. A popup should appear and cancel the signout. Go to achuithz600/achuith/large_files/, download the file, and during the download, ctrl-shift-q. A popup should appear to cancel the signout. If you choose not to cancel, the system should restart without Chrome crashing. If you choose to cancel, ChromeOS should halt the signout process. Review URL: http://codereview.chromium.org/4833002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@69298 0039d316-1c4b-4281-b951-d872f2087c98
* Rename all methods accessing Singleton<T> as GetInstance().satish@chromium.org2010-12-131-1/+1
| | | | | | | | | | | | | This is in preparation to a subsequent CL where Singleton<T> will restrict access to only the type being made singleton. I also moved pepper::ResourceTracker to a lazy instance since there were too many places in code where this class was being accessed from and this was a smaller change than renaming methods in that case. BUG=65298 TEST=all existing tests should pass. Review URL: http://codereview.chromium.org/5685007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@68982 0039d316-1c4b-4281-b951-d872f2087c98
* Record logout time stats for Chrome OS.satorux@chromium.org2010-11-221-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | Record lougout time stats and dump it to /tmp/logout-times-sent. ShutdownTime.Logout, ShutdownTime.UIMessageLoopEnded, and ShutdownTime.BrowserDeleted will be sent to UMA, as well. % cat /tmp/logout-times-sent ShutdownTime.Logout: 0.39 0.00 +0.00 LogoutStarted 0.00 +0.00 ShutdownDetected 0.02 +0.02 StartedClosingWindows 0.27 +0.25 UIMessageLoopEnded 0.27 +0.00 BrowserShutdownStarted 0.39 +0.12 BrowserDeleted 0.39 +0.00 BrowserMainEnded Along the way, change BootTimesLoader to append data to existing /tmp/uptime-* files just like /sbin/bootstat does, so we can collect numbers from 2nd login as well. BUG=chromium-os:6847 TEST=confirmed that /tmp/login-times-sent and /tmp/logout-times-sent are written properly. Review URL: http://codereview.chromium.org/4973002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@66923 0039d316-1c4b-4281-b951-d872f2087c98
* ThreadRestrictions: disallow blocking IO on the UI threadevan@chromium.org2010-10-271-0/+7
| | | | | | | | | | | | | This patch sets the "disallow IO" flag after the UI thread has started, and then whitelists in the many places where we're accidentally doing IO from the UI thread. (I've filed bugs on all of those cases.) BUG=59847,60630,60641,60211,60634,60643,24163,60825 Review URL: http://codereview.chromium.org/4146004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@63986 0039d316-1c4b-4281-b951-d872f2087c98
* about:flags: Fix disabling experiments.thakis@chromium.org2010-10-151-0/+2
| | | | | | | | | | | | | | | The problem was that the restart code would copy the switches added by about:flags to the restarted instance, so that e.g. --enable-expose-for-tabs would be passed on the the command line even though the experiment was disabled. Now the flags added by about:switches are explicitly removed before the restart. Also wrap the switches added by about:flags with --start-flags-switches and --end-flags-switches switches. These unknown switches are ignored, but are useful to see on about:version. Also add a bunch of unrelated unit tests. BUG=56314 TEST=See bug. Review URL: http://codereview.chromium.org/3813007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@62777 0039d316-1c4b-4281-b951-d872f2087c98
* Move Stats, histograms, and field trial into a metrics subdirectory of base andbrettw@chromium.org2010-10-141-1/+1
| | | | | | | | | put them in the base namespace. TEST=it compiles BUG=none git-svn-id: svn://svn.chromium.org/chrome/trunk/src@62510 0039d316-1c4b-4281-b951-d872f2087c98
* Rename ChromeThread to BrowserThread Part19:tfarina@chromium.org2010-10-121-1/+1
| | | | | | | | | | | - Include browser_thread.h instead of chrome_thread.h in more 65 files. BUG=56926 TEST=trybots Review URL: http://codereview.chromium.org/3717003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@62226 0039d316-1c4b-4281-b951-d872f2087c98
* Rename ChromeThread to BrowserThread Part14:tfarina@chromium.org2010-10-101-5/+5
| | | | | | | | | | | - Rename the entries under the first 40 files. BUG=56926 TEST=trybots Review URL: http://codereview.chromium.org/3667002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@62126 0039d316-1c4b-4281-b951-d872f2087c98
* Moved the call to ServiceProcessControlManager::Shutdown to ↵sanjeevr@chromium.org2010-10-011-0/+4
| | | | | | | | | | | browser_shutdown::Shutdown. BUG=None. TEST=None. Review URL: http://codereview.chromium.org/3562003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@61245 0039d316-1c4b-4281-b951-d872f2087c98
* Remove one-time flags when restarting after update.finnur@chromium.org2010-09-221-0/+3
| | | | | | | | | BUG=53407 TEST=SwitchUtilsTest.AddRemoveSwitches Review URL: http://codereview.chromium.org/3307024 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@60161 0039d316-1c4b-4281-b951-d872f2087c98
* This is a second attempt of http://codereview.chromium.org/3175038davemoore@chromium.org2010-09-131-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | It failed the Vista Perf UI tests. This is because those tests close the browser upon an error. And they always get an error when the session is closed in the middle of the test. The new changes are in chrome/browser/automation/testing_automation_provider.cc BUG=50006 TEST=Run chrome under nested window manager using Xephyr (see http://code.google.com/p/chromium/wiki/LayoutTestsLinux) use --enable-logging=stderr --log-level=0 kill xephyr examine log. You should see X IO Error detected followed (not necessarily immediately) by successfully saved /tmp/tx/Default/Preferences successfully saved /tmp/tx/Local State successfully saved /tmp/tx/Local State successfully saved /tmp/tx/Default/Preferences along with no crash. BUG= TEST= Review URL: http://codereview.chromium.org/3364019 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@59269 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 59147 - Allow overriding of X error functionsdavemoore@chromium.org2010-09-101-8/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | BUG=50006 (and various other reports) TEST=Run chrome under nested window manager using Xephyr (see http://code.google.com/p/chromium/wiki/LayoutTestsLinux) use --enable-logging=stderr --log-level=0 kill xephyr examine log. You should see X IO Error detected followed (not necessarily immediately) by successfully saved /tmp/tx/Default/Preferences successfully saved /tmp/tx/Local State successfully saved /tmp/tx/Local State successfully saved /tmp/tx/Default/Preferences along with no crash. There is a high ranking crash report on both linux and chromeos that happens whenever X sends an error to chrome. This change causes us to log and continue when we get a regular error from X. When we get an IO error, indicating X is gone, we attempt to shut down gracefully. Review URL: http://codereview.chromium.org/3175038 TBR=davemoore@chromium.org Review URL: http://codereview.chromium.org/3332019 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@59175 0039d316-1c4b-4281-b951-d872f2087c98
* Allow overriding of X error functionsdavemoore@chromium.org2010-09-101-0/+8
| | | | | | | | | | | | | | | | | | | | | | | BUG=50006 (and various other reports) TEST=Run chrome under nested window manager using Xephyr (see http://code.google.com/p/chromium/wiki/LayoutTestsLinux) use --enable-logging=stderr --log-level=0 kill xephyr examine log. You should see X IO Error detected followed (not necessarily immediately) by successfully saved /tmp/tx/Default/Preferences successfully saved /tmp/tx/Local State successfully saved /tmp/tx/Local State successfully saved /tmp/tx/Default/Preferences along with no crash. There is a high ranking crash report on both linux and chromeos that happens whenever X sends an error to chrome. This change causes us to log and continue when we get a regular error from X. When we get an IO error, indicating X is gone, we attempt to shut down gracefully. Review URL: http://codereview.chromium.org/3175038 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@59147 0039d316-1c4b-4281-b951-d872f2087c98
* Move prefs-related files under chrome/browser/ into a prefs/ subdir.evan@chromium.org2010-08-261-1/+1
| | | | | | | | | | | | Rename includes, resort header include order in places where the rename changed the order. BUG=50548 TEST=compiles Review URL: http://codereview.chromium.org/3203008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@57434 0039d316-1c4b-4281-b951-d872f2087c98
* Fix for issue 51693, which was a regression from integrating the open sourcerogerta@google.com2010-08-131-1/+1
| | | | | | | | | | | | | | | | version of RLZ into Chromium. Chromium should never send RLZ pings to Google, only Google Chrome should do so. Removing dependency from rlz chrome extenion api to RLZTracker since it is not required. BUG=51693 TEST=Install Chromium on a clean machine and make sure no pings are sent to http://client1.google.com/tools/pso/ping?... Review URL: http://codereview.chromium.org/3146007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@56032 0039d316-1c4b-4281-b951-d872f2087c98
* FBTF: Remove unneeded headers from base/ (part 2)thestig@chromium.org2010-08-061-1/+0
| | | | | | | | BUG=none TEST=none Review URL: http://codereview.chromium.org/3010052 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@55191 0039d316-1c4b-4281-b951-d872f2087c98
* Convert more callers of the integer/string functions to usingbrettw@chromium.org2010-07-311-1/+1
| | | | | | | | | | string_number_conversions.h TEST=it compiles BUG=none Review URL: http://codereview.chromium.org/3013046 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@54454 0039d316-1c4b-4281-b951-d872f2087c98
* Move the number conversions from string_util to a new file.brettw@chromium.org2010-07-301-1/+3
| | | | | | | | | | | | | Use the base namespace in the new file. Update callers. I removed all wstring variants and also the string->number ones that ignore the return value. That encourages people to write code and forget about error handling. TEST=included unit tests BUG=none Review URL: http://codereview.chromium.org/3056029 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@54355 0039d316-1c4b-4281-b951-d872f2087c98
* Convert a bunch of easy AppendSwitchWithValue to *ASCII.evan@chromium.org2010-07-301-1/+1
| | | | | | | | | For this patch, I skipped over any instance where it wasn't a nearly trivial change. Review URL: http://codereview.chromium.org/3069014 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@54285 0039d316-1c4b-4281-b951-d872f2087c98
* Move browser/first_run* into into a subdirectory.evan@chromium.org2010-07-291-1/+1
| | | | | | | | BUG=50548 Review URL: http://codereview.chromium.org/3043030 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@54226 0039d316-1c4b-4281-b951-d872f2087c98
* base/ header cleanup. Forward declaration instead of including.erg@google.com2010-07-281-0/+1
| | | | | | | | | BUG=none TEST=none Review URL: http://codereview.chromium.org/3068004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@53969 0039d316-1c4b-4281-b951-d872f2087c98
* Make sure restart due to Upgrade Notification works, even if the browser was ↵finnur@chromium.org2010-07-211-8/+27
| | | | | | | | | | | started through ShellExecute (with a switch argument terminator). BUG=46182 TEST=Launch Chrome on Windows by double clicking on a .htm file. Wait for Chrome to be upgraded in the background, select Update Chrome from Wrench menu and make sure your session is properly restored (even if Restore Last Session is not set). Review URL: http://codereview.chromium.org/2868063 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@53188 0039d316-1c4b-4281-b951-d872f2087c98
* Moved code that generates APP_TERMINATING notification into BrowserList so ↵atwilson@chromium.org2010-07-201-4/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | it can be used on all platforms. Updated observers (ExtensionProcessManager, BackgroundContents) to listen for APP_TERMINATING instead of listening for BROWSER_CLOSED on some platforms. APP_TERMINATING is now sent just before the main message loop exits rather than just after, but no code depends on this timing. Updated Mac code to always call BrowserList::CloseAllBrowsers() even if there are no open browsers, to ensure that APP_TERMINATING is always fired. Changed BackgroundContentsService to keep the browser process alive when there are BackgroundContents running and updated the unit tests. Renamed BrowserList::IsInPersistentMode() => WillShutdownWhenLastBrowserCloses() and AllBrowsersClosed() => AllBrowsersClosedAndAppExiting() to more precisely indicate their true functions. Exposed BrowserProcess::ModuleRefCount() so BrowserList can determine when the application is going to exit so the right notifications/callbacks can be generated. Updated background-auto-update-restart code to use new BrowserList APIs to determine whether the application is running "in the background". Added code to cancel shutdown on all plaforms if the user selects cancel in an onbeforeunload dialog. BUG=45275 TEST=RunInBackgroundTest (ui_test) Review URL: http://codereview.chromium.org/2866034 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@53092 0039d316-1c4b-4281-b951-d872f2087c98
* [Mac] Implement the update available notification in the wrench menu.rsesek@chromium.org2010-07-191-2/+11
| | | | | | | | | | | | The changes to restart_browser.mm also affect the sheet displayed in the About window. Note that the badge on the wrench menu looks bad. BUG=45147 TEST=difficult Review URL: http://codereview.chromium.org/2856042 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@52911 0039d316-1c4b-4281-b951-d872f2087c98
* Rename Dns prefetching files to Predictor filesjar@chromium.org2010-06-271-1/+1
| | | | | | | | | | | | We are now doing more than DNS pre-resolution, and want to do TCP/IP pre-warming. This change uses the updated class names etc., and tries to use Predictor as the common element in most names. r=mbelshe Review URL: http://codereview.chromium.org/2866026 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@50951 0039d316-1c4b-4281-b951-d872f2087c98
* Change classes and functions for DNS Prefetching to Predictor*jar@chromium.org2010-06-251-1/+1
| | | | | | | | | | | | | | | The DNS prefetching system has been extended to handle TCP/IP preconnection. As a result, class names and function names will be migrated to variations on Predictor* and Predict* to better indicate functionality. This change is only meant to include name changes, comment updates, and no semantic changes. r=mbelshe Review URL: http://codereview.chromium.org/2813031 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@50792 0039d316-1c4b-4281-b951-d872f2087c98
* Fix chromeos build following r48795estade@chromium.org2010-06-031-1/+1
| | | | | | | | | TBR=dhg TEST=green chromeos compile Review URL: http://codereview.chromium.org/2544002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@48796 0039d316-1c4b-4281-b951-d872f2087c98
* Linux/GTK: implement update notification.estade@chromium.org2010-06-031-6/+5
| | | | | | | | | BUG=45148 TEST=compile chrome with PRODUCT_VERSION manually set to something higher than the current version (e.g. 7.0.0.0), and manually set the upgrade detector time to something short (like 10 seconds). Launch chrome and wait a short time for the update notification to appear. The update notification should pulse every few seconds, and should stop pulsing when the user opens the wrench menu. The about menu item should launch a dialog that allows the user to restart chrome, restoring the current session. Review URL: http://codereview.chromium.org/2365003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@48795 0039d316-1c4b-4281-b951-d872f2087c98
* Implement upgrade notifications.finnur@chromium.org2010-05-261-1/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When we detect that the installed version is newer than the version you are running we show a little throbbing orange dot over the wrench menu. If you open the wrench menu and close it again, the throbbing will stop. However, if you look at the contents of the wrench menu you'll notice that the About box menu item has been removed and in its place is a menu item "Update Chrome Now" with a bright orange icon to draw your attention to it. Clicking on the icon shows a dialog box asking whether you want to restart Chrome. If you do, the browser restarts with your session restored (even if you have Session Restore turned off). Known issues: - Currently this is Windows only. We'll have to port this to Linux and do something differnet for Mac (which doesn't have the wrench menu). - Showing an icon in front of Update Chrome causes the checkbox for the bookmark bar menu to go away. Given that we will soon redesign the menus I'm not going to spend much time trying to fix it. BUG=27941 TEST=Wait for Chrome to be upgraded in the background, an orange dot should appear over the wrench menu and if you select Update Chrome your session should be retained. Review URL: http://codereview.chromium.org/2225003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@48318 0039d316-1c4b-4281-b951-d872f2087c98
* Mac: reform our shutdown routine.viettrungluu@chromium.org2010-04-091-0/+15
| | | | | | | | | | | | | | | | Make shutdown be more like other platforms. Moreover: - Cancelling quit from an onbeforeunload dialog shouldn't mess up the browser. - Having quit cancelled due to a window pop up on the closure of another window shouldn't break the browser. [With this patch, it will result in the browser being in a quirky state in which the closure of the last browser window will cause a quit. But the browser won't be broken.] BUG=34384,37813,37927 TEST=See bugs. Review URL: http://codereview.chromium.org/1520006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@44096 0039d316-1c4b-4281-b951-d872f2087c98
* POSIX: Re-enable browser shutdown measurements. We should write the ↵thestig@chromium.org2010-03-271-7/+5
| | | | | | | | | | measurements to the user data directory instead of the temp directory. BUG=39098 TEST=none Review URL: http://codereview.chromium.org/1253006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@42884 0039d316-1c4b-4281-b951-d872f2087c98
* Fix APP_TERMINATING on Mac to fire while the UI loop is still alive.willchan@chromium.org2010-03-091-7/+1
| | | | | | | | BUG=34391 Review URL: http://codereview.chromium.org/748002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@41089 0039d316-1c4b-4281-b951-d872f2087c98
* Move pref_{member,service} and important_file_writer from chrome/commonphajdan.jr@chromium.org2010-02-191-1/+1
| | | | | | | | | | | | | to chrome/browser. This is a part of an effort to remove bad dependency of chrome/common on chrome/browser. TEST=unit_tests and ui_tests, just moving code BUG=none Review URL: http://codereview.chromium.org/621004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@39428 0039d316-1c4b-4281-b951-d872f2087c98
* Do not try to swap chrome.exe if machine is shutting down.kuchhal@chromium.org2010-01-271-1/+2
| | | | | | | | | BUG=18063 TEST=Installer an update while Chrome is running. Log out of machine without closing Chrome first and make sure sure Chrome gets updated cleanly whenever it is launched next. Review URL: http://codereview.chromium.org/553079 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@37202 0039d316-1c4b-4281-b951-d872f2087c98
* Reattempt at r465143. The UI tests rely too heavily on the current behavior ↵andybons@chromium.org2009-12-151-0/+6
| | | | | | | | | | | | | of closing the last window indicating exiting the entire app, so that is left alone for now with a TODO added. From the old description: Mac: Fixes bug where extension background hosts were being cleared when the last window was closed. It assumed that this meant the app was closing. Not the case with Mac apps. Added a mac-only notification APP_TERMINATED and use that to perform cleanup upon shutdown. TEST=More description in the bug, but basically just make sure that background views stick around even after you've closed the last window. BUG=28666 Review URL: http://codereview.chromium.org/502012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@34580 0039d316-1c4b-4281-b951-d872f2087c98
* Rolling back r34316 due to tab_switching_test failing. TBR=scherkusandybons@chromium.org2009-12-111-6/+0
| | | | | | | TEST=none BUG=none git-svn-id: svn://svn.chromium.org/chrome/trunk/src@34374 0039d316-1c4b-4281-b951-d872f2087c98
* Mac: Fixes bug where extension background hosts were being cleared when the ↵andybons@chromium.org2009-12-111-0/+6
| | | | | | | | | | last window was closed. It assumed that this meant the app was closing. Not the case with Mac apps. Added a mac-only notification APP_TERMINATED and use that to perform cleanup upon shutdown. TEST=More description in the bug, but basically just make sure that background views stick around even after you've closed the last window. BUG=28666 Review URL: http://codereview.chromium.org/465143 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@34316 0039d316-1c4b-4281-b951-d872f2087c98
* Refactor: Eliminte locking from PrefetchObserver and DnsMaster in favor of ↵eroman@chromium.org2009-12-081-7/+1
| | | | | | | | | | | | | | | | | making these classes non-threadsafe. Conceptually, PrefetchObserver and DnsMaster live on the IO thread, and their methods can only be called from the IO thread. In the cases where calls do need to be made from the UI thread, we post a task to be run on the IO loop and return without blocking. The only time where we block is during shutdown, when we must wait on the IO thread to get us the startup list and referral list. BUG=25335 Review URL: http://codereview.chromium.org/300032 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@34066 0039d316-1c4b-4281-b951-d872f2087c98
* Move last shutdown file access off the UI thread and onto the file thread.jam@chromium.org2009-11-251-28/+45
| | | | | | Review URL: http://codereview.chromium.org/437049 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@33056 0039d316-1c4b-4281-b951-d872f2087c98
* Third patch in getting rid of caching MessageLoop pointers and always using ↵jam@chromium.org2009-11-021-3/+3
| | | | | | | | | | ChromeThread instead. BUG=25354 Review URL: http://codereview.chromium.org/342068 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30687 0039d316-1c4b-4281-b951-d872f2087c98
* Fix compile failure due to bad merge.pkasting@chromium.org2009-10-021-5/+2
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@27893 0039d316-1c4b-4281-b951-d872f2087c98
* Convert users of RenderProcessHost iterator to all use same style. The key ↵pkasting@chromium.org2009-10-021-5/+5
| | | | | | | | | | | | | | motivator for this is that at least one old place actually did the wrong thing in its loop and failed to call functions on anything but the first host. This also makes many places slightly shorter. Remove an unneeded #include in web_cache_manager.h by converting it to a forward declaration. Update copyrights on touched files. BUG=none TEST=none Review URL: http://codereview.chromium.org/242104 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@27890 0039d316-1c4b-4281-b951-d872f2087c98
* Any time we are shutting down a tab, try to use fast shutdown.estade@chromium.org2009-10-021-26/+26
| | | | | | | | | BUG=http://crbug.com/5638 TEST=existing tab strip model tests, Fast shutdown ui tests, new tab strip model fast shutdown test Review URL: http://codereview.chromium.org/235050 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@27865 0039d316-1c4b-4281-b951-d872f2087c98