summaryrefslogtreecommitdiffstats
path: root/chrome/browser/browser_shutdown.cc
Commit message (Collapse)AuthorAgeFilesLines
* Fix compilation on Windows with enable_printing=2.vitalybuka2014-09-091-2/+6
| | | | | | | | | BUG=374321 NOTRY=true Review URL: https://codereview.chromium.org/552703002 Cr-Commit-Position: refs/heads/master@{#293820}
* Move more metrics classes to metrics namespace.asvitkine2014-08-261-1/+1
| | | | | | | | | BUG=374763 TBR=jam@chromium.org Review URL: https://codereview.chromium.org/502173002 Cr-Commit-Position: refs/heads/master@{#291994}
* Change base/file_utils.h includes to base/files/file_utils.h in chrome/thestig2014-08-261-1/+1
| | | | | | Review URL: https://codereview.chromium.org/486843004 Cr-Commit-Position: refs/heads/master@{#291880}
* jankometer: Remove.sadrul@chromium.org2014-08-071-6/+0
| | | | | | | | | | | The histograms don't seem to be used anymore (do not show up in UMA). The hang-detector and about:profiler produce relevant useful data for detecting jank. BUG=none Review URL: https://codereview.chromium.org/435603011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@288117 0039d316-1c4b-4281-b951-d872f2087c98
* Componentize MetricsService.blundell@chromium.org2014-06-111-1/+1
| | | | | | | | | | | | | | | MetricsService, along with prefs that it uses, is moved into the Metrics component. A later CL will move MetricsService (and all other code in the metrics component) into the metrics namespace. BUG=374198 TBR=jochen Review URL: https://codereview.chromium.org/320553002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@276229 0039d316-1c4b-4281-b951-d872f2087c98
* Delete "shutdown without closing browsers"oshima@chromium.org2014-03-251-15/+0
| | | | | | | | | | | | | | | | | | | | | Removing unused ShellDelegate::Shutdown() Added new PreShutdown to safely cleanup DisplayObserver. Chrome no longer access X during shutdown (except for deleting X window, which is safe), so normal SessionEnd path should work. There is another issue when this happens during login screen, and I'll file a separate bug for it. BUG=336653 Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=259061 R=abodenha@chromium.org, thestig@chromium.org Review URL: https://codereview.chromium.org/205963005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@259203 0039d316-1c4b-4281-b951-d872f2087c98
* Revert of Delete "shutdown without closing browsers" path ↵michaeln@chromium.org2014-03-251-0/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (https://codereview.chromium.org/205963005/) Reason for revert: Didn't compile on Linux GTK builder. http://build.chromium.org/p/chromium.linux/builders/Linux%20GTK%20Builder/builds/1997 ../../chrome/browser/ui/gtk/bookmarks/bookmark_bar_gtk.cc: In member function 'virtual void BookmarkBarGtk::BookmarkModelBeingDeleted(BookmarkModel*)': ../../chrome/browser/ui/gtk/bookmarks/bookmark_bar_gtk.cc:896:8:error: 'ShuttingDownWithoutClosingBrowsers' is not a member of 'browser_shutdown' Original issue's description: > Delete "shutdown without closing browsers" > > Removing unused ShellDelegate::Shutdown() > > Added new PreShutdown to safely cleanup DisplayObserver. > > Chrome no longer access X during shutdown (except for deleting X window, which is safe), so normal SessionEnd > path should work. > > There is another issue when this happens during login screen, and I'll file a separate bug for it. > > BUG=336653 > > Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=259061 TBR=abodenha@chromium.org,thestig@chromium.org,oshima@chromium.org NOTREECHECKS=true NOTRY=true BUG=336653 Review URL: https://codereview.chromium.org/210673002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@259085 0039d316-1c4b-4281-b951-d872f2087c98
* Delete "shutdown without closing browsers"oshima@chromium.org2014-03-251-15/+0
| | | | | | | | | | | | | | | | | Removing unused ShellDelegate::Shutdown() Added new PreShutdown to safely cleanup DisplayObserver. Chrome no longer access X during shutdown (except for deleting X window, which is safe), so normal SessionEnd path should work. There is another issue when this happens during login screen, and I'll file a separate bug for it. BUG=336653 Review URL: https://codereview.chromium.org/205963005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@259061 0039d316-1c4b-4281-b951-d872f2087c98
* Move WriteFile and WriteFileDescriptor from file_util to base namespace.brettw@chromium.org2014-03-061-1/+1
| | | | | | | | | R=viettrungluu@chromium.org TBR=viettrungluu Review URL: https://codereview.chromium.org/184563006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@255418 0039d316-1c4b-4281-b951-d872f2087c98
* Add shutdown type to crash key so that we can reliably tell if a crash ↵oshima@chromium.org2014-02-041-1/+21
| | | | | | | | | | | happens during shutdown. BUG=258569 R=rsesek@chromium.org, thestig@chromium.org Review URL: https://codereview.chromium.org/149393014 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@248746 0039d316-1c4b-4281-b951-d872f2087c98
* Rename service subdir under chrome/browser to service_processjianli@chromium.org2013-11-051-1/+1
| | | | | | | | | | | | It is renamed because we're going to add new "services" directory which holds all google services related codes, like sync, invalidation and signin. We do not want to have both "service" and "services" to cause the confusion. Since all codes under "service" deal purely with service process, we would like to rename it to "service_process". BUG=none TEST=none due to that this is just a dir renaming R=thakis@chromium.org, vitalybuka@chromium.org Review URL: https://codereview.chromium.org/57383010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@233023 0039d316-1c4b-4281-b951-d872f2087c98
* Adding relaunch menu to Windows 8 Aura code. We expect following transitions ↵shrikant@chromium.org2013-10-311-11/+7
| | | | | | | | | | | | | | | | with new menu: 1. When in desktop mode, you should see "Relaunch Chrome in Windows 8 mode", if clicked it will kill current browser process and relaunches all open tabs in Windows 8 mode. 2. When in Windows 8 mode, menu is "Relaunch Chrome in desktop mode", if clicked it will kill current browser process (gets user out of Ash shell) and relaunches all tabs in desktop mode. Once we select to launch in different mode through these menu items we store new mode in registry and use this mode as default mode for next time launch. This means even if you click on desktop icon and last mode stored is metro, user will be switched to metro mode. BUG=280823 R=cpu@chromium.org, jschuh@chromium.org, sky@chromium.org, ananta, cpu Review URL: https://codereview.chromium.org/32843009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@232120 0039d316-1c4b-4281-b951-d872f2087c98
* Adding shutdown tracing capabilitiesskuhne@chromium.org2013-09-061-0/+6
| | | | | | | | | | | | | | | use "--trace-shutdown" to enable the feature to start profiling when the user has pressed "shutdown" and specify "--trace-shutdown-file=<name>" to specify the file where you want to dump to. Additionally you can specify which modules to trace with e.g. "--trace-shutdown=base,net". That said: NOTE that the dumping will cost time since it has to be done after the shutdown of Chrome is finished. As such it takes time and will make it impossible to get a correct reading of time from shutdown till a new startup is finished. Note: This is similar to the trace-startup - with the exception that upon shutdown it is not possible to rely on threads for IO anymore. BUG=281524 TEST=visual tests Review URL: https://chromiumcodereview.appspot.com/23691025 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@221631 0039d316-1c4b-4281-b951-d872f2087c98
* Move ReadFileToString to the base namespace.brettw@chromium.org2013-08-301-1/+1
| | | | | | | | BUG= Review URL: https://codereview.chromium.org/19579005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@220612 0039d316-1c4b-4281-b951-d872f2087c98
* Update include paths in chrome/browser/ for base/process changes.rsesek@chromium.org2013-07-241-1/+0
| | | | | | | | | BUG=242290 R=thakis@chromium.org Review URL: https://chromiumcodereview.appspot.com/19631004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@213461 0039d316-1c4b-4281-b951-d872f2087c98
* cros_library: Remove unnecessary includes of cros_library.hsatorux@chromium.org2013-07-171-1/+0
| | | | | | | | | | | BUG=126719 TEST=none TBR=hashimoto@chromium.org # for some non-chromeos files under chrome/browser Review URL: https://codereview.chromium.org/19329003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@211894 0039d316-1c4b-4281-b951-d872f2087c98
* Rename base::Delete to base::DeleteFilebrettw@chromium.org2013-07-161-1/+1
| | | | | | | | | | | Also renames DeleteAfterReboot to DeleteFileAfterReboot, and removes FileUtilProxy::RecursiveDelete which was never called. BUG= R=shess@chromium.org Review URL: https://codereview.chromium.org/18584011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@211822 0039d316-1c4b-4281-b951-d872f2087c98
* Move file_util::Delete to the base namespacebrettw@chromium.org2013-07-011-1/+1
| | | | | | | | BUG= Review URL: https://codereview.chromium.org/16950028 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@209475 0039d316-1c4b-4281-b951-d872f2087c98
* Use a direct include of time headers in chrome/browser/, part 1.avi@chromium.org2013-06-281-1/+1
| | | | | | | | | | BUG=254986 TEST=none TBR=ben@chromium.org Review URL: https://codereview.chromium.org/18083008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@209145 0039d316-1c4b-4281-b951-d872f2087c98
* Use a direct include of strings headers in chrome/browser/a*-c*/.avi@chromium.org2013-06-101-1/+1
| | | | | | | | | | BUG=247723 TEST=none TBR=ben@chromium.org Review URL: https://chromiumcodereview.appspot.com/16742003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@205335 0039d316-1c4b-4281-b951-d872f2087c98
* Move file_path.h to base/files.brettw@chromium.org2013-02-241-1/+1
| | | | | | TBR=sky git-svn-id: svn://svn.chromium.org/chrome/trunk/src@184344 0039d316-1c4b-4281-b951-d872f2087c98
* Move remaining non-test, non-Chrome-specific Prefs code to base/prefs/.joi@chromium.org2013-02-111-2/+2
| | | | | | | | | | | | | | This is a mostly-automated change, using ./tools/git/move_source_file.py to move files and fix up include guards and #includes from other files. Manual edits were limited to fixing up .gypi files and adding BASE_PREFS_EXPORT where needed. TBR=ben@chromium.org BUG=155525 Review URL: https://codereview.chromium.org/12211105 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@181707 0039d316-1c4b-4281-b951-d872f2087c98
* Merge branch 'master' into file_path_browserbrettw@chromium.org2013-02-101-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | version control markers Merge branch 'master' into file_path_browser remove version control Fix typo Merge branch 'master' into file_path_browser Conflicts: chrome/browser/intents/native_services_browsertest.cc chrome/browser/ui/intents/native_file_picker_service.cc Merge branch 'master' into file_path_browser Conflicts: chrome/browser/chromeos/drive/drive_file_system.cc chrome/browser/chromeos/drive/drive_file_system.h chrome/browser/chromeos/drive/drive_file_system_interface.h chrome/browser/chromeos/drive/drive_file_system_unittest.cc chrome/browser/chromeos/drive/file_system/drive_operations.cc chrome/browser/chromeos/login/wallpaper_manager.cc chrome/browser/chromeos/login/wallpaper_manager.h chrome/browser/chromeos/login/wallpaper_manager_browsertest.cc chrome/browser/extensions/api/sync_file_system/extension_sync_event_observer.cc chrome/browser/google_apis/gdata_wapi_operations.cc chrome/browser/google_apis/gdata_wapi_operations.h chrome/browser/google_apis/gdata_wapi_operations_unittest.cc chrome/browser/profiles/off_the_record_profile_impl.cc chrome/browser/profiles/off_the_record_profile_impl.h chrome/browser/profiles/profile_impl.cc chrome/browser/profiles/profile_impl.h chrome/browser/profiles/profile_impl_io_data.cc chrome/browser/profiles/profile_impl_io_data.h chrome/browser/sync_file_system/drive_file_sync_client_unittest.cc chrome/browser/ui/webui/options/manage_profile_handler.cc Long lines long lines some long lines. long lines long lines Beginning of lines. Rename FilePath -> base::FilePath in chrome/browser git-svn-id: svn://svn.chromium.org/chrome/trunk/src@181638 0039d316-1c4b-4281-b951-d872f2087c98
* Rename FilePath to base::FilePath and use new location of ↵brettw@chromium.org2013-02-081-1/+1
| | | | | | | | string_number_conversions in some chrome subdirectories. Review URL: https://codereview.chromium.org/12218065 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@181564 0039d316-1c4b-4281-b951-d872f2087c98
* Remove PrefServiceSimple, replacing it with PrefService and PrefRegistrySimple.joi@chromium.org2013-02-061-4/+5
| | | | | | | | | | | | This is a step towards removing registration methods from PrefService and simplifying its class hierarchy. TBR=ben@chromium.org BUG=155525 Review URL: https://chromiumcodereview.appspot.com/11741003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@180873 0039d316-1c4b-4281-b951-d872f2087c98
* browser: Start moving application_lifetime.h functions into chrome namespace.tfarina@chromium.org2013-01-301-7/+6
| | | | | | | | | | BUG=133088 TBR=ben@chromium.org Review URL: https://chromiumcodereview.appspot.com/12096060 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@179657 0039d316-1c4b-4281-b951-d872f2087c98
* Move core url data manager classes to content.jam@chromium.org2013-01-241-3/+0
| | | | | | | BUG=169170 Review URL: https://codereview.chromium.org/12049052 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@178663 0039d316-1c4b-4281-b951-d872f2087c98
* Split PrefService into PrefService, PrefServiceSimple and PrefServiceSyncable.joi@chromium.org2012-12-221-1/+1
| | | | | | | | | | | | | | | | | | | | | The first two (PrefServiceSimple is a subclass of PrefService) know nothing about sync or any Chrome or content concepts. The third (PrefServiceSyncable, a separate subclass of PrefService) knows about sync and requires users to choose whether each individual preference is syncable or not when it is registered. BrowserProcess::local_state() is a PrefServiceSimple after this change, and Profile::prefs() is a PrefServiceSyncable. COLLABORATOR=kaiwang@chromium.org TBR=ben@chromium.org BUG=155525 Review URL: https://chromiumcodereview.appspot.com/11570009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@174531 0039d316-1c4b-4281-b951-d872f2087c98
* Metro mode switching (chrome side)cpu@chromium.org2012-09-061-0/+24
| | | | | | | | | | | | | This change puts a menu option to restart chrome in desktop or to restart chrome in metro mode and then wires up to the restart helper. BUG=141032 TEST=see bug Review URL: https://chromiumcodereview.appspot.com/10885047 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@155263 0039d316-1c4b-4281-b951-d872f2087c98
* Leak ResourceBundle during browser shutdown since we are exiting anyway. OS ↵bshe@chromium.org2012-06-141-5/+0
| | | | | | | | | | | | will reclaim the memory once the process gone. BUG=130768, 127266 TEST= Review URL: https://chromiumcodereview.appspot.com/10539091 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@142194 0039d316-1c4b-4281-b951-d872f2087c98
* Only need to allow IO tasks once at shutdown ↵jam@chromium.org2012-06-051-5/+0
| | | | | | | | (BrowserMainLoop::ShutdownThreadsAndCleanUp()), instead of three times. Review URL: https://chromiumcodereview.appspot.com/10502025 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@140442 0039d316-1c4b-4281-b951-d872f2087c98
* Move application lifetime functionality off BrowserList.ben@chromium.org2012-05-181-2/+2
| | | | | | | | | | This makes no attempt to really rationalize/simplify this flow, just get it off the BrowserList. BUG=none TEST=none Review URL: https://chromiumcodereview.appspot.com/10409022 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@137927 0039d316-1c4b-4281-b951-d872f2087c98
* rlz: Hook up on mac, switch to chrome's network stack on win.thakis@chromium.org2012-03-261-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This CL conceptually does several things (most of them just one line). 1. Roll RLZ 105:118 106: Fix "expression result unused" warning caused by VERIFY() use. 107: rlz: Add an implementation of PingServer() that uses chrome's net stack. 108: Implement RlzValueStoreMac. 109: Move GetMachineId() to its own file. No intended behavior change. 110: Implement GetSystemTimeAsInt64() on mac. 111: Minor cleanups. 112: Don't pay a static initializer for expected_assertion_ when it's not used. 113: Rename rlz_lib2.cc and win/lib/rlz_lib.cc to win/lib/rlz_lib_win.cc 114: mac: Implement GetMachineId(). 115: mac: Implement the locking part of ScopedRlzValueStoreLock. 116: Tweaks to make the use of chrome's net stack forceable through gyp. 117: Push RLZ_NETWORK_IMPLEMENTATION_ define to dependent targets. 118: Use base::mac::ScopedNSAutorleasePool only on mac. 2. Change rlz.cpp to use the blocking pool instead of the file thread. 3. Enable on mac. 4. Switch to chrome's network stack on windows 5. Switch RlzSendFinancialPingFunction to be an AsyncExtensionFunction that calls SendFinancialPing on a worker thread. This is required because extension functions run with a MessageLoop, so the MessageLoop in SendFinancialPing in rlz would trigger an assert (and making that inner loop nestable seems like a very bad idea). This change also removes one instance of ScopedAllowIO and fixes a TODO. BUG=46579 TEST= 1.) Do an official chrome build 2.) Add gratuitous logging in rlz.cc and other places and check that by default: * The channel is reported as "stable" * The brand code is the empty string * This brand code counts as organic install * RLZ exits early. 3.) Create ~/Library/Google/Google\ Chrome\ Brand.plist and add e.g. the string "BRAND" for key KSBrandID, restart chrome. * Brand code is now "BRAND" (this depends on Chrome's Info.plist not having a KSBrandID key, which has precedence. Currently our Chromes seem to never have this key.) * A ping is scheduled, but nothing is sent. * Use the omnibox a little, which causes product events to be recorded. 4.) Restart chrome yet again, wait a bit. * Logging in "SendFinancialPing()" should print: pinging http://clients1.google.com:80/tools/pso/ping?as=chrome&brand=BRAND&pid=&hl=en&events=C1F,C1S&rep=2&rlz=C1:1C1_____enUS476,C2:1C2_____enUS476&id=0926C138C2EA77A791CB450D322D0183E5A8079300000001B5 ping completed! TBR=sky Review URL: https://chromiumcodereview.appspot.com/9699054 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@129028 0039d316-1c4b-4281-b951-d872f2087c98
* Move RenderWidgetHost and RenderViewHost interfaces to their own files.joi@chromium.org2012-03-061-1/+1
| | | | | | | | | | | This also finishes breaking the Chrome dependency on RenderWidgetHostImpl and RenderViewHostImpl. TBR=jam@chromium.org BUG=98716 Review URL: https://chromiumcodereview.appspot.com/9599011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@125166 0039d316-1c4b-4281-b951-d872f2087c98
* Extract first version of a RenderWidgetHost interface.joi@chromium.org2012-02-231-1/+0
| | | | | | | | | | | | | | | | | | | | | This begins the process of extracting RWH and RVH interfaces and leaving RenderWidgetHostImpl and RenderViewImpl classes in content. There will be parallel inheritance hierarchies, i.e. RWHImpl inherits from RWH, RVH inherits from RWH, RVHImpl inherits from RVH and RWHImpl. Thus, chrome will only see the interfaces. I fully expect that some of the things chrome needs from the RVH interface, once I introduce that, will more properly belong on the RWH interface, in which case I expect to move them there. But first to define the base interfaces. BUG=98716 Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=123227 Review URL: https://chromiumcodereview.appspot.com/9432027 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@123239 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 123227 - Extract first version of a RenderWidgetHost interface.joi@chromium.org2012-02-231-0/+1
| | | | | | | | | | | | | | | | | | | | | | This begins the process of extracting RWH and RVH interfaces and leaving RenderWidgetHostImpl and RenderViewImpl classes in content. There will be parallel inheritance hierarchies, i.e. RWHImpl inherits from RWH, RVH inherits from RWH, RVHImpl inherits from RVH and RWHImpl. Thus, chrome will only see the interfaces. I fully expect that some of the things chrome needs from the RVH interface, once I introduce that, will more properly belong on the RWH interface, in which case I expect to move them there. But first to define the base interfaces. BUG=98716 Review URL: https://chromiumcodereview.appspot.com/9432027 TBR=joi@chromium.org Review URL: https://chromiumcodereview.appspot.com/9453010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@123234 0039d316-1c4b-4281-b951-d872f2087c98
* Extract first version of a RenderWidgetHost interface.joi@chromium.org2012-02-231-1/+0
| | | | | | | | | | | | | | | | | | | This begins the process of extracting RWH and RVH interfaces and leaving RenderWidgetHostImpl and RenderViewImpl classes in content. There will be parallel inheritance hierarchies, i.e. RWHImpl inherits from RWH, RVH inherits from RWH, RVHImpl inherits from RVH and RWHImpl. Thus, chrome will only see the interfaces. I fully expect that some of the things chrome needs from the RVH interface, once I introduce that, will more properly belong on the RWH interface, in which case I expect to move them there. But first to define the base interfaces. BUG=98716 Review URL: https://chromiumcodereview.appspot.com/9432027 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@123227 0039d316-1c4b-4281-b951-d872f2087c98
* Remove a bunch of easy entries from chrome\browser\DEPS.jam@chromium.org2012-01-311-1/+0
| | | | | | | | | | | | -hide PluginProcessHost from chrome by having extensions code just tell PluginService which plugin to kill -hide RenderProcessHostImpl from a test by using the interface instead -use TestBrowserThread in the SyncListenNotifications tool instead of BrowserThreadImp -remove some unnecessary mocks from chrome\browser\DEPS BUG=98716 Review URL: https://chromiumcodereview.appspot.com/9159059 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@119906 0039d316-1c4b-4281-b951-d872f2087c98
* get rid of static initializer shutdown_started_tbreisacher@chromium.org2012-01-271-4/+5
| | | | | | | | | | BUG=94925 TEST=sizes.py should report one less SI Review URL: http://codereview.chromium.org/9235081 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@119371 0039d316-1c4b-4281-b951-d872f2087c98
* Remove PrefService::ScheduleSavePersistentPrefs and change ↵bauerb@chromium.org2011-12-271-1/+1
| | | | | | | | | | | | | SavePersistentPrefs calls to CommitPendingWrites. TBR=ncarter@chromium.org BUG=99306 TEST=none Review URL: http://codereview.chromium.org/8198007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@115829 0039d316-1c4b-4281-b951-d872f2087c98
* Store the "browser autorestarted, last session must be restored" information ↵marja@chromium.org2011-12-051-4/+0
| | | | | | | | | | | | | | in a preference. This way ChromiumOS can run the same session restore code as Chrome. BUG=1870 TEST=NONE Review URL: http://codereview.chromium.org/8745015 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@112985 0039d316-1c4b-4281-b951-d872f2087c98
* Have content/ create and destroy its own threads. (Re-land)joi@chromium.org2011-11-281-1/+5
| | | | | | | | | | | | | | | | | | | Change embedding API and embedders to allow for this. Push inheritance of base::Thread down to content::BrowserThreadImpl so that content::BrowserThread is just a namespace for API functions. This change temporarily disables chrome_frame_net_tests as agreed by the CF lead, see bug 105435. TBR=ben@chromium.org (IWYU change only) BUG=98716,104578,105435 Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=111695 Reverted (problems on official bot): r111698 Review URL: http://codereview.chromium.org/8477004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@111705 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 111695 - Have content/ create and destroy its own threads.joi@chromium.org2011-11-281-5/+1
| | | | | | | | | | | | | | | | | | | | | Reason: Problems on official builders. Change embedding API and embedders to allow for this. Push inheritance of base::Thread down to content::BrowserThreadImpl so that content::BrowserThread is just a namespace for API functions. This change temporarily disables chrome_frame_net_tests as agreed by the CF lead, see bug 105435. TBR=ben@chromium.org (IWYU change only) BUG=98716,104578,105435 Review URL: http://codereview.chromium.org/8477004 TBR=joi@chromium.org Review URL: http://codereview.chromium.org/8718012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@111698 0039d316-1c4b-4281-b951-d872f2087c98
* Have content/ create and destroy its own threads.joi@chromium.org2011-11-281-1/+5
| | | | | | | | | | | | | | | | Change embedding API and embedders to allow for this. Push inheritance of base::Thread down to content::BrowserThreadImpl so that content::BrowserThread is just a namespace for API functions. This change temporarily disables chrome_frame_net_tests as agreed by the CF lead, see bug 105435. TBR=ben@chromium.org (IWYU change only) BUG=98716,104578,105435 Review URL: http://codereview.chromium.org/8477004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@111695 0039d316-1c4b-4281-b951-d872f2087c98
* Define the public interface for content browser RenderProcessHost. This ↵ananta@chromium.org2011-11-181-2/+3
| | | | | | | | | | | | | | | interface is implemented by the RenderProcessHostImpl class which lives in content\browser\renderer_host\render_process_host_impl.cc/.h. The RenderProcessHostImpl class is a consolidation of the RenderProcessHost and BrowserRenderProcessHost classes. The RenderProcessHost public interface was created from the now deleted RenderProcessHost class defined in content\browser\renderer_host\render_process_host.h. Additional methods have been added to the interface to ensure that it works correctly with the MockRenderProcessHost class used by unit tests. I had to implement a number of overrides in the MockRenderProcessHost class to ensure that tests work correctly. This was because of assumptions in the tests that the MockRPH class was a real RPH which it was till now. Added a TODO for the methods which could potentially be removed from this interface. Will revisit that in a subsequent CL. BUG=98716 TEST=No change in functionality. Hopefully it all compiles and works. Review URL: http://codereview.chromium.org/8515027 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@110615 0039d316-1c4b-4281-b951-d872f2087c98
* Replace NewRunnableFunction with Bind in BrowserShutdown.achuith@chromium.org2011-11-031-2/+2
| | | | | | | | BUG=chromium-os:22024. TEST=compiles, tests pass. Review URL: http://codereview.chromium.org/8437023 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@108522 0039d316-1c4b-4281-b951-d872f2087c98
* Move BrowserThread to content namespace.joi@chromium.org2011-11-021-0/+1
| | | | | | | | | TBR=owners BUG=98716 Review URL: http://codereview.chromium.org/8437002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@108270 0039d316-1c4b-4281-b951-d872f2087c98
* Split BrowserThread into public API and private implementation, step 1.joi@chromium.org2011-10-281-2/+2
| | | | | | | | | | | | | | | | | | | | | Only content/ now has the ability to create BrowserThread objects, with the exception that tests can create the content::TestBrowserThread subclass, and (temporarily) code in chrome/ can create the DeprecatedBrowserThread subclass. A follow-up change will make content/ take care of its own thread creation, remove DeprecatedBrowserThread, and move all state and non-trivial constructors from BrowserThread down to BrowserThreadImpl. Also moved BrowserProcessSubThread into content/ namespace. As part of follow-up cleanup, chrome/ will stop using this class. BUG=98716 TEST=existing Review URL: http://codereview.chromium.org/8392042 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@107718 0039d316-1c4b-4281-b951-d872f2087c98
* Chrome OS: Shutdown without blocking when SIGTERM is received.oshima@chromium.org2011-10-241-5/+8
| | | | | | | | | | | | | | | | | | | | | | | Made ShuttingDownWithoutCloseBrowsers a explicit flag. Use END_SESSION shutdown type if chrome recieves SIGTERM AND there are tabs that may block shutdown. Make sure APP_TERMINATING is sent only once. This fixes SIGABORT crash in two shutdown scenarios: 1) powering off when chrome has beforeunload handler, or downloads in progress. 2) singout from screen locker when chrome has beforeunload handler or downloads in progress. This is simple version of fix to merge to release branch. I'm working on another CL that will (hopefully) cleanup a bit more. BUG=chromium-os:20460 TEST=see bug for repro step Review URL: http://codereview.chromium.org/8262009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@106988 0039d316-1c4b-4281-b951-d872f2087c98
* chromeos: Remove unnecessary includes of login_library.hsatorux@chromium.org2011-10-131-1/+0
| | | | | | | | | | | | This is a preparation work for moving login manager D-Bus code from libcros to Chrome. We want to clean things up before doing the migration. BUG=chromium-os:16555 TEST=chrome and tests build as before Review URL: http://codereview.chromium.org/8273013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@105384 0039d316-1c4b-4281-b951-d872f2087c98