summaryrefslogtreecommitdiffstats
path: root/chrome/browser/browser_process_impl.cc
Commit message (Collapse)AuthorAgeFilesLines
* Remove the temporary scaffolding stubs.phajdan.jr@chromium.org2010-02-101-7/+1
| | | | | | | | | | | | | They have served they purpose well, but now it's time to retire. It's one of the things that draggen in the bad dependency of chrome/common on chrome/browser, and is sufficiently small now to stub things out individually. TEST=none BUG=none Review URL: http://codereview.chromium.org/593037 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@38639 0039d316-1c4b-4281-b951-d872f2087c98
* Delete HTML5 database in BrowsingDataRemover, part 1.jochen@chromium.org2010-02-061-2/+1
| | | | | | | | | | | This part deletes databases except for when they're currently used by a renderer. BUG=34633 TEST=open the webkit html5 database demo, create some notes. close the tab. clear browsing data. open the demo again. notes should be gone. Review URL: http://codereview.chromium.org/570032 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@38296 0039d316-1c4b-4281-b951-d872f2087c98
* Check for the existance of a profile manager. Might not exist during early ↵jochen@chromium.org2010-02-051-0/+7
| | | | | | | | | | | shutdown. BUG=34652 TEST=Execute chrome. Run chrome --uninstall. Should not crash. Review URL: http://codereview.chromium.org/572043 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@38269 0039d316-1c4b-4281-b951-d872f2087c98
* Some preliminary ground work for respecting the "Content Settings" in the ↵michaeln@chromium.org2010-02-041-1/+2
| | | | | | | | | | | | appcache, and an implementation of the "ClearLocalState" function. TEST=none BUG=34344,32719 Review URL: http://codereview.chromium.org/565012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@38124 0039d316-1c4b-4281-b951-d872f2087c98
* Make sure locally stored site data is deleted after DB and WebKit threads ↵jochen@chromium.org2010-02-041-6/+12
| | | | | | | | | | | are gone. BUG=32719 TEST=none Review URL: http://codereview.chromium.org/564050 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@38048 0039d316-1c4b-4281-b951-d872f2087c98
* Reland 37913. Clear local state on exit.jochen@chromium.org2010-02-031-0/+35
| | | | | | | | | BUG=32719 TEST=none Review URL: http://codereview.chromium.org/560024 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@37936 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 37913 - Clear local state (cookies, databases, local storage) on exit.chase@chromium.org2010-02-031-35/+0
| | | | | | | | | | | | BUG=32719 TEST=none Review URL: http://codereview.chromium.org/564012 TBR=jochen@chromium.org Review URL: http://codereview.chromium.org/564023 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@37915 0039d316-1c4b-4281-b951-d872f2087c98
* Clear local state (cookies, databases, local storage) on exit.jochen@chromium.org2010-02-031-0/+35
| | | | | | | | | BUG=32719 TEST=none Review URL: http://codereview.chromium.org/564012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@37913 0039d316-1c4b-4281-b951-d872f2087c98
* Pull IOThread out of BrowserProcessImpl. Move the dns prefetching ↵willchan@chromium.org2010-01-221-100/+4
| | | | | | | | | | | initialization into IOThread. The global host resolver and dns master have changed to be member variables of IOThread. BUG=26156,26159 Review URL: http://codereview.chromium.org/553026 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@36866 0039d316-1c4b-4281-b951-d872f2087c98
* Add autodetection of "intranet" redirection, for ISPs etc. that send typos ↵pkasting@chromium.org2010-01-081-5/+15
| | | | | | | | | | and nonexistent addresses to custom pages, and plumb it to the code that puts up infobars when users type in a search that appears to be an intranet address, so we don't show these for erroneous cases. BUG=31556 TEST=none Review URL: http://codereview.chromium.org/525079 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@35807 0039d316-1c4b-4281-b951-d872f2087c98
* Speculative fix for a chrome browser crash which occurs with ChromeFrame. ↵ananta@chromium.org2009-12-151-0/+19
| | | | | | | | | | | | | | | | | | | | Based on the crash dump, the crash occurs when the external tab container is being destroyed which in turn takes down the automation provider and the channel, etc. All this occurs in the context of OleUninitialize, which executes after BrowserMain returns, i.e. the message loop is now invalid, thus causing a crash while attempting to post a task to it. Based on this call stack it looks like it happens due to the enable-renderer-accessisibility flag. Fix is to move the OleInitialize/OleUnitialize calls to Platform::WillInitializeMainMessageLoop and Platform::DidEndMainMessageLoop. The Platform::DidEndMainMessageLoop function now executes as a task which is posted to the message loop prior to quitting it. This would ensure that the cleanup happens correctly. Fixes http://code.google.com/p/chromium/issues/detail?id=30383 Bug=30383 Review URL: http://codereview.chromium.org/501011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@34611 0039d316-1c4b-4281-b951-d872f2087c98
* Make BrowserProcess::GetApplicationLocale thread safe and migratetony@chromium.org2009-12-101-9/+0
| | | | | | | | | | | | | | | | | callers of l10n_util::GetApplicationLocale to use this instead. In the browser process, it's wrong to call l10n_util::GetApplicationLocale with an empty string because then it won't consider the user pref value when resolving the locale. On Linux, it's also wrong to call l10n_util::GetApplicationLocale after startup because the call touches disk and on Linux, we assume that all of the program files can be deleted after startup (so updates in place can work). Review URL: http://codereview.chromium.org/476002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@34206 0039d316-1c4b-4281-b951-d872f2087c98
* [GTTF] Reduce header dependencies in chrome.phajdan.jr@chromium.org2009-11-301-0/+1
| | | | | | | | | TEST=none BUG=none Review URL: http://codereview.chromium.org/454004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@33324 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 33301 and 33305 due to unit_tests breakage.maruel@chromium.org2009-11-301-1/+0
| | | | | | | | TBR=pawel Review URL: http://codereview.chromium.org/453007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@33309 0039d316-1c4b-4281-b951-d872f2087c98
* [GTTF] Reduce header dependencies in chrome.phajdan.jr@chromium.org2009-11-301-0/+1
| | | | | | | | | TEST=none BUG=none Review URL: http://codereview.chromium.org/454004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@33301 0039d316-1c4b-4281-b951-d872f2087c98
* Assorted cleanup.estade@chromium.org2009-11-231-6/+6
| | | | | | | | process: grep for TODO(port), find cruft, clean it up Review URL: http://codereview.chromium.org/427004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@32844 0039d316-1c4b-4281-b951-d872f2087c98
* Fix bug when accessing g_browser_process->broker_services() at shutdown.jam@chromium.org2009-11-231-0/+16
| | | | | | | BUG=28501 Review URL: http://codereview.chromium.org/435001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@32832 0039d316-1c4b-4281-b951-d872f2087c98
* Revert r31665: themed mac startup time regressionapavlov@chromium.org2009-11-111-2/+1
| | | | | | | | | | BUG=none TEST=none TBR=yurys@chromium.org Review URL: http://codereview.chromium.org/387027 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@31685 0039d316-1c4b-4281-b951-d872f2087c98
* Set have_inspector_files_ in the UI thread as it is only read from that thread.apavlov@chromium.org2009-11-111-1/+2
| | | | | | | | | BUG=24419 TEST=TSAN Review URL: http://codereview.chromium.org/391017 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@31665 0039d316-1c4b-4281-b951-d872f2087c98
* Last patch in removing MessageLoop* caching.jam@chromium.org2009-11-031-2/+1
| | | | | | | BUG=25354 Review URL: http://codereview.chromium.org/353015 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30881 0039d316-1c4b-4281-b951-d872f2087c98
* Third patch in getting rid of caching MessageLoop pointers and always using ↵jam@chromium.org2009-11-021-1/+1
| | | | | | | | | | 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
* Connect the various pieces for notifications... hook up ↵johnnyg@chromium.org2009-10-301-0/+8
| | | | | | | | | | | NotificationUIManager to BrowserProcess to DesktopNotificationService to RenderView. BUG=none TEST=none Review URL: http://codereview.chromium.org/342043 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30557 0039d316-1c4b-4281-b951-d872f2087c98
* Simplify threading in browser thread by making only ChromeThread deal with ↵jam@chromium.org2009-10-271-2/+1
| | | | | | | | different thread lifetimes.The rest of the code doesn't get MessageLoop pointers since they're not thread-safe and instead just call PostTask on ChromeThread. If the target thread is not alive, then the task is simply deleted.In a followup change, I'll remove any remaining MessageLoop* caching. With this change, there's little to be gained by caching since no locks are involved if the target MessageLoop is guaranteed to outlive the current thread (inferred automatically by the order of the chrome_threads_ array).BUG=25354 Review URL: http://codereview.chromium.org/306032 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30163 0039d316-1c4b-4281-b951-d872f2087c98
* Fix a whole bunch of style nits.erg@google.com2009-10-131-2/+2
| | | | | | | | (Long term intention is to add a subset of cpplint.py to the presubmit script.) Review URL: http://codereview.chromium.org/276008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@28914 0039d316-1c4b-4281-b951-d872f2087c98
* Wire up printing on the Macstuartmorgan@chromium.org2009-10-131-1/+3
| | | | | | | | | | | | | Get the printing support class stack building and hooked up on the Mac. Add support for creating NativeMetafile objects with PDF print data on the renderer side, and passing them to the browser via the existing printing IPC system. Flip on the simpler printing unit tests (those that don't require PDF -> bitmap conversion). BUG=13158 TEST=Print on the Mac--it should work! Review URL: http://codereview.chromium.org/276004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@28907 0039d316-1c4b-4281-b951-d872f2087c98
* Move the clipboard stuff out of base and into app/clipboard. I renamedbrettw@chromium.org2009-10-031-1/+1
| | | | | | | | | | | clipboard_util to clipboard_util_win since it's Windows-only. This patch makes test_shell depend on app as well. There should be no logic change. TEST=none BUG=none Review URL: http://codereview.chromium.org/260003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@27937 0039d316-1c4b-4281-b951-d872f2087c98
* Convert users of RenderProcessHost iterator to all use same style. The key ↵pkasting@chromium.org2009-10-021-7/+4
| | | | | | | | | | | | | | 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
* Remove all MemoryModel-related code, since we're unlikely to use it again. ↵pkasting@chromium.org2009-09-301-13/+0
| | | | | | | | | | | | Also changes some sample code to use a random generic name ("PruningAlgorithm") instead of MemoryModel in hopes that no one will be confused. This does not remove IdleTimer, even though it now has no users. I do plan to remove it, but I want to do that in a separate commit so it's easy to reference and revert if at some later point we want this functionality. BUG=none TEST=none Review URL: http://codereview.chromium.org/242079 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@27652 0039d316-1c4b-4281-b951-d872f2087c98
* Reverting 27389.darin@chromium.org2009-09-301-2/+2
| | | | | | Review URL: http://codereview.chromium.org/246027 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@27594 0039d316-1c4b-4281-b951-d872f2087c98
* Fix crash when using about:ipc with only NTP on Windows.jrg@chromium.org2009-09-291-2/+3
| | | | | | | | Must check iterator's Done() before dereferencing (list may be empty). Review URL: http://codereview.chromium.org/243040 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@27552 0039d316-1c4b-4281-b951-d872f2087c98
* Implement about:ipc dialog for Mac.jrg@chromium.org2009-09-281-0/+47
| | | | | | | | | Convert IPC logging trigger from x-process waitable event to a messages sent to all processes. Review URL: http://codereview.chromium.org/192070 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@27405 0039d316-1c4b-4281-b951-d872f2087c98
* Reverting 27379, in hopes of fixing browser_tests.senorblanco@chromium.org2009-09-281-2/+2
| | | | | | | | TBR=darin Review URL: http://codereview.chromium.org/248021 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@27389 0039d316-1c4b-4281-b951-d872f2087c98
* Assert that thread-safe reference counting is used withdarin@chromium.org2009-09-281-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | cross-thread NewRunnableMethod. This assertion caught such an error in VisitedLinkMaster! My approach, modify RunnableMethodTraits<T> to assert that when ReleaseCallee happens on a different thread from RetainCallee that the type supports thread-safe reference counting. I do this by adding a static method to both RefCounted<T> and RefCountedThreadSafe<T>. This results in a little ugliness in cases where people implement AddRef and Release by hand (to make the no-ops). There may be a nicer way to deal with those few cases. R=brettw BUG=none TEST=none Review URL: http://codereview.chromium.org/251012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@27379 0039d316-1c4b-4281-b951-d872f2087c98
* Enable LeakTracker on release builds.eroman@chromium.org2009-09-221-1/+10
| | | | | | | | | | | | | | | This is intended to be temporary, so we can get data from the dev channel on why URLRequest objects are leaking at shutdown. WARNING: it may cause a slight slowdown on page cycler. Also as part of this change, I switched the order that we check URLFetcher / URLRequest. This is simply so that if both URLFetcher and URLRequest have leaked, we will report the URLFetcher leak rather than the URLRequest leak. BUG=http://crbug.com/21199, http://crbug.com/18372 Review URL: http://codereview.chromium.org/217005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@26765 0039d316-1c4b-4281-b951-d872f2087c98
* Mask the BrokerServices class behind an ifdef for Windows only; Linux and ↵jhawkins@chromium.org2009-08-211-0/+4
| | | | | | | | | | Mac have their own sandboxes. Remove the corresponding stubs from temp_scaffolding_stubs.h. BUG=none TEST=none Review URL: http://codereview.chromium.org/173228 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@24032 0039d316-1c4b-4281-b951-d872f2087c98
* Don't show "Inspect Element" in the context menu if we can't inspect.agl@chromium.org2009-08-211-1/+30
| | | | | | | | | | Ubuntu want to ship with the inspector files in a separate package and having menu items which are broken isn't nice. http://codereview.chromium.org/174162 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@23927 0039d316-1c4b-4281-b951-d872f2087c98
* Change default memory model from MEDIUM to HIGH.mbelshe@google.com2009-08-201-1/+1
| | | | | | | | | | | | | | | This will eliminate the workingsetsize reductions that we currently do in the browser. Memory usage will increase by about 25%. But it should alleviate swapping issues that some users are seeing. BUG=none TEST=none Review URL: http://codereview.chromium.org/173057 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@23818 0039d316-1c4b-4281-b951-d872f2087c98
* Add checks to DEBUG mode that no instance of URLRequest or URLFetcher ↵ericroman@google.com2009-08-111-11/+39
| | | | | | | | | | | | | | | | | | | | survives the destruction of the IO thread. This checking is done by introducing a new helper class to base called LeakTracker. Classes that you want to check for leaks just need to extend LeakTracker. The reason I am picking on URLFetcher / URLRequest, is I believe we have a bug that is making an instance of URLFetcher to outlive the IO thread. This causes various sorts of badness. For example: If URLFetcher survives the IO thread, then URLRequestContext remains referenced and therefore also survives IO thread. In turn HostResolverImpl survives the IO thread, so any outstanding resolve requests are NOT cancelled before the IO thread is decomissioned. So now, when the worker thread doing the DNS resolve finally finishes (assuming it finishes before the rogue URLRequest is destroyed), it post the result to a defunct message loop. KAB00m! (http://crbug.com/15513) Moreover, I believe we hit this same problem sporadically in AutomationProxyTest.AutocompleteGetSetText -- the test is flaky on the buildbots, and I've seen DCHECKs which suggest it is related to this issue. BUG=http://crbug.com/18372 Review URL: http://codereview.chromium.org/160447 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@23084 0039d316-1c4b-4281-b951-d872f2087c98
* There is no need for the browser process to have an accelerator handler.This ↵jcampan@chromium.org2009-07-291-12/+0
| | | | | | | | CL cleans this up.BUG=NoneTEST=Accelerator should work in Chrome and in the first run window. Review URL: http://codereview.chromium.org/160301 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@22020 0039d316-1c4b-4281-b951-d872f2087c98
* Replace std:;wstring with std::string and string16 in locale-name related APIs.jshin@chromium.org2009-06-241-3/+3
| | | | | | | | | | | | | | | 1. Change the locale param to be std::string because they're always ASCII and change call-sites accordingly. 2. Add GetStringFUTF16 to l10n_util. On Windows, they're inline helpers calling the correspondingGetStringF returning wstring while on Mac/Linux, they just return the result of |string16 GetStringF|without converting to wstring. This is part 1 of the fix for issue 8647. Some of newly introduced conversions are temporary and will be removed later (e.g. ASCIIToWide applied to the result of GetApplicationLocale in a few places). Note : this CL will be landed after http://codereview.chromium.org/147038 is landed. BUG=8647 (http://crbug.com/8647) TEST=Pass l10n_util_unittest and other unit tests Review URL: http://codereview.chromium.org/126223 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@19183 0039d316-1c4b-4281-b951-d872f2087c98
* DevTools: Make reloading inspector lead to the complete DevTools Client ↵pfeldman@chromium.org2009-06-051-2/+2
| | | | | | | | | Window reopening. BUG=12956 Review URL: http://codereview.chromium.org/119178 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@17725 0039d316-1c4b-4281-b951-d872f2087c98
* Reverts parts of ↵jam@chromium.org2009-05-211-8/+0
| | | | | | | | http://src.chromium.org/viewvc/chrome?view=rev&revision=16474 which aren't needed anymore. Review URL: http://codereview.chromium.org/113669 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@16642 0039d316-1c4b-4281-b951-d872f2087c98
* Fix a crash on browser exit after opening TaskManager.phajdan.jr@chromium.org2009-05-201-0/+8
| | | | | | | | | | | | | | | | | | | | | TaskManager is a singleton, so it's destroyed by AtExitManager. At the time of destruction it cannot register AtExit callbacks (AtExitManager requires that). It turns out that some Windows view code wants to register an AtExit callback during destruction. For more info about view code, see http://src.chromium.org/viewvc/chrome?view=rev&revision=9161 The fix is to destroy the view early, using EnsureShutdown static method of TaskManager. It was also necessary to delete child views a bit earlier to avoid another crashed. Added a regression browser_test and verified that it's broken without this fix. http://crbug.com/11180 Review URL: http://codereview.chromium.org/114031 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@16474 0039d316-1c4b-4281-b951-d872f2087c98
* Linux download shelf icons first cut.estade@chromium.org2009-05-201-1/+1
| | | | | | | | | Nor do we have support for alternate file formats; nor do we have a default icon. BUG=http://crbug.com/8631 Review URL: http://codereview.chromium.org/113571 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@16444 0039d316-1c4b-4281-b951-d872f2087c98
* Ensure that IO thread is not called in last actions by SDCH shutdownjar@chromium.org2009-05-131-2/+9
| | | | | | | | | | | | | Unregister the sdch_dictionary_fetcher so that it destroys any pending URLFetcher instances when we are nearing shutdown time. Dictionaries are only *potentially* useful (and not needed) for future SDCH fetches, so abandoning any pending items is safe and harmless. b=9669 r=wtc Review URL: http://codereview.chromium.org/113235 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@16015 0039d316-1c4b-4281-b951-d872f2087c98
* Move src/chrome/views to src/views. RS=darin http://crbug.com/11387ben@chromium.org2009-05-081-2/+2
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15604 0039d316-1c4b-4281-b951-d872f2087c98
* Fix the "pick a new user data dir" dialog on windows.tc@google.com2009-05-061-2/+4
| | | | | | | | | | | | | | | | There were three things to be fixed: 1) We don't need to run a separate message loop after the dialog closes. The MessageLoopForUI handles this properly. 2) When tearing down browser_process_impl, io_loop hasn't been initialized yet, so we check to make sure it exists before using it. 3) We don't call window->Close() because that deletes the dialog class before we're done using it. This means we leak the window, but that's ok because we're going to exit anyway. Review URL: http://codereview.chromium.org/114004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15422 0039d316-1c4b-4281-b951-d872f2087c98
* Move l10n_util to app/ben@chromium.org2009-05-051-1/+1
| | | | | | | http://crbug.com/11387 Review URL: http://codereview.chromium.org/109043 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15352 0039d316-1c4b-4281-b951-d872f2087c98
* Get rid of the ClipboardService class and header... it is nothing but a ↵ben@chromium.org2009-05-051-2/+2
| | | | | | | | | | shell around base::Clipboard now. http://crbug.com/11387 Review URL: http://codereview.chromium.org/105011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15274 0039d316-1c4b-4281-b951-d872f2087c98
* ImportantFileWriterphajdan.jr@chromium.org2009-04-281-2/+2
| | | | | | | | | | | | | | Introducing a class for writing important files, preventing their corruption during writing. Switched PrefService to use it. Other classes will be switched in future changesets. TEST=This may affect things using preferences. Make sure that changes in preferences don't get lost, and that you don't get excessive disk activity when changing preferences. http://crbug.com/10618 Review URL: http://codereview.chromium.org/83001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@14717 0039d316-1c4b-4281-b951-d872f2087c98