summaryrefslogtreecommitdiffstats
path: root/chrome/browser/browser_process_impl.h
Commit message (Collapse)AuthorAgeFilesLines
* Final removal of the bad dependency of chrome/common on chrome/browserphajdan.jr@chromium.org2010-03-101-20/+0
| | | | | | | | | | | Also convert app/gtk_dnd_util.h from a class to a namespace for consistency with added app/gtk_util.h. TEST=none BUG=none Review URL: http://codereview.chromium.org/669268 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@41177 0039d316-1c4b-4281-b951-d872f2087c98
* Initial implementation of status tray functionality (mac-only, currently).atwilson@chromium.org2010-03-061-0/+11
| | | | | | | | | | | | Added Mac implementation of StatusIcon, and added a simple click callback that displays the "extensions" tab when clicked on, to allow us to dogfood long-lived extensions. BUG=37375 Review URL: http://codereview.chromium.org/661454 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@40847 0039d316-1c4b-4281-b951-d872f2087c98
* Next part of removing the dependency of chrome/common on chrome/browserphajdan.jr@chromium.org2010-03-061-3/+1
| | | | | | | | TEST=none BUG=none Review URL: http://codereview.chromium.org/669184 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@40834 0039d316-1c4b-4281-b951-d872f2087c98
* BSD port: another chunk of chrome/browser ifdef cleaningpvalchev@google.com2010-02-031-2/+2
| | | | | | Review URL: http://codereview.chromium.org/553153 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@38004 0039d316-1c4b-4281-b951-d872f2087c98
* Reland 37913. Clear local state on exit.jochen@chromium.org2010-02-031-0/+4
| | | | | | | | | 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-4/+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/+4
| | | | | | | | | 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-3/+2
| | | | | | | | | | | 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-1/+10
| | | | | | | | | | 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-14/+2
| | | | | | | | | | | | | | | | | | | | 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-1/+7
| | | | | | | | | | | | | | | | | 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
* Assorted cleanup.estade@chromium.org2009-11-231-2/+0
| | | | | | | | 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-4/+12
| | | | | | | 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-4/+0
| | | | | | | | | | 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-0/+4
| | | | | | | | | 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
* Connect the various pieces for notifications... hook up ↵johnnyg@chromium.org2009-10-301-0/+12
| | | | | | | | | | | 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
* Remove all MemoryModel-related code, since we're unlikely to use it again. ↵pkasting@chromium.org2009-09-301-7/+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
* Implement about:ipc dialog for Mac.jrg@chromium.org2009-09-281-0/+9
| | | | | | | | | 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
* Mask the BrokerServices class behind an ifdef for Windows only; Linux and ↵jhawkins@chromium.org2009-08-211-1/+7
| | | | | | | | | | 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-0/+12
| | | | | | | | | | 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
* Add checks to DEBUG mode that no instance of URLRequest or URLFetcher ↵ericroman@google.com2009-08-111-0/+4
| | | | | | | | | | | | | | | | | | | | 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-10/+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-2/+2
| | | | | | | | | | | | | | | 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
* Fix a crash when the ThumbnailGenerator.brettw@chromium.org2009-06-171-12/+10
| | | | | | | | | | This happens when the ThumbnailGenerator is initialized because the NotificationService doesn't exist yet. This patch adds a function that TabContentscalls to make sure it is registered to avoid this problem. Review URL: http://codereview.chromium.org/126239 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18572 0039d316-1c4b-4281-b951-d872f2087c98
* Adds kind-of-live thumbnail generation for a potential tab switcher.brettw@chromium.org2009-06-161-0/+11
| | | | | | | | | | | | | | | | | | | | This listens to tab events and tries to keep thumbnails ready to go. See thumbnail_generator.cc for a more detailed design. This adds a painting observer to the RenderWidgetHost to enable this new behavior, as well as a notification to allow the thumbnail generator to hook its observer in. There is also a new notification that a backing store has been disabled, which required making the backing stores know about their owning widget hosts. This component is currently disabled. We just need to uncomment the member in Profile and it will start to work. Original review: http://codereview.chromium.org/118420 Review URL: http://codereview.chromium.org/126101 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18540 0039d316-1c4b-4281-b951-d872f2087c98
* DevTools: Make reloading inspector lead to the complete DevTools Client ↵pfeldman@chromium.org2009-06-051-1/+1
| | | | | | | | | 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
* Headers cleanup in chrome/browser/phajdan.jr@chromium.org2009-06-031-2/+0
| | | | | | | | | | | - reduce header dependencies - miscellanous cleanups (add missing includes for OS_ defines etc) Further changesets may follow. I was only looking at header files up to character_encoding.h. Review URL: http://codereview.chromium.org/118072 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@17470 0039d316-1c4b-4281-b951-d872f2087c98
* Get rid of the ClipboardService class and header... it is nothing but a ↵ben@chromium.org2009-05-051-3/+3
| | | | | | | | | | 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
* Linux: move X operations from the IO to UI2 thread.agl@chromium.org2009-04-221-0/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | (r14075 take two) Currently we perform several X operations on the IO thread including geometry and clipboard work. This is causing races inside Xlib and crashing the browser. These are the result of synchronous calls from the renderer, so we cannot route these requests to the UI thread without risking deadlock. Thus we introduce the UI2 thread. This thread has a second connection to the X server and can perform X operations safely the without UI thread. Work remains to be done: Since we still have the hack where we pass GtkWidget pointers into the renderer and back, we still have to access these structures from the IO and UI2 threads. This still needs to be fixed, but this is not the patch for it. Also, not all the X calls from the IO thread have been moved over in this patch; just a few small ones. http://codereview.chromium.org/67145 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@14206 0039d316-1c4b-4281-b951-d872f2087c98
* I managed to break test_shell. Reverting. I'll fix tomorrow.agl@chromium.org2009-04-211-14/+0
| | | | | | | Reverts r14075 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@14080 0039d316-1c4b-4281-b951-d872f2087c98
* Linux: move X operations from the IO to UI2 thread.agl@chromium.org2009-04-211-0/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | Currently we perform several X operations on the IO thread including geometry and clipboard work. This is causing races inside Xlib and crashing the browser. These are the result of synchronous calls from the renderer, so we cannot route these requests to the UI thread without risking deadlock. Thus we introduce the UI2 thread. This thread has a second connection to the X server and can perform X operations safely the without UI thread. Work remains to be done: Since we still have the hack where we pass GtkWidget pointers into the renderer and back, we still have to access these structures from the IO and UI2 threads. This still needs to be fixed, but this is not the patch for it. Also, not all the X calls from the IO thread have been moved over in this patch; just a few small ones. http://codereview.chromium.org/67145 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@14075 0039d316-1c4b-4281-b951-d872f2087c98
* Give each HistoryService instance it's own backend thread.tim@chromium.org2009-04-141-1/+0
| | | | | | | | | | | | | | | | | I had originally planned to push history_thread up to BrowserProcess, but was scared away by the comment in ~Profile that talks about HistoryService calling back into the bookmark bar model, and that it depended on join()ing at that particular time to ensure this doesn't happen after the bookmark bar model has been reset. I didn't use scoped_ptr for the thread because it makes the little dance in CleanUp awkward. TEST=any existing test that exersizes the history service. I added a ProfileManager test that would fail without this change. Review URL: http://codereview.chromium.org/73012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@13703 0039d316-1c4b-4281-b951-d872f2087c98
* DevToolsManager is a service in the browser process that manages all open ↵yurys@google.com2009-03-161-0/+11
| | | | | | | | | | | developer tools windows. It's supposed to route devtoools messages. Also it will notify DevToolsClient when inspected renderer crashes or when it's changes due to cross-site navigation. Currently when inspected tab is closed it will close devtools window as well. Devtools state moved from RenderViewHost and WebContentsView to the manager. Please look at devtools_manager.{h,cc} in the first place. Review URL: http://codereview.chromium.org/42076 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@11727 0039d316-1c4b-4281-b951-d872f2087c98
* NO CODE CHANGEdeanm@chromium.org2009-03-101-1/+0
| | | | | | | | | Normalize end of file newlines in chrome/. All files end in a single newline. Review URL: http://codereview.chromium.org/42015 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@11331 0039d316-1c4b-4281-b951-d872f2087c98
* Compile parts of chrome/browser/automation on Linux.phajdan.jr@chromium.org2009-02-251-1/+1
| | | | | | | | | This patch involves heavy temporary stubbing-out of windowsic parts of automation framework. Review URL: http://codereview.chromium.org/28092 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@10351 0039d316-1c4b-4281-b951-d872f2087c98
* Will the real BrowserProcessImpl please stand up?beng@google.com2009-02-011-1/+6
| | | | | | Review URL: http://codereview.chromium.org/19743 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@9030 0039d316-1c4b-4281-b951-d872f2087c98
* Fixes leak of shutdown event in BrowserProcess.sky@google.com2009-01-231-2/+4
| | | | | | | | | BUG=none TEST=none Review URL: http://codereview.chromium.org/18534 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8555 0039d316-1c4b-4281-b951-d872f2087c98
* Make CommandLine into a normal object, with some statics for getting at the ↵evan@chromium.org2009-01-211-1/+1
| | | | | | | | | | | current process's command line. One explicit goal of this change is to *not* deal with the string/wstring issues at the API on POSIX; the functions are the same as before, which means they remain as broken as before. (I did try to fix the internals, though, so migrating the callers is now possible by adding platform-appropriate hooks.) Review URL: http://codereview.chromium.org/18248 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8347 0039d316-1c4b-4281-b951-d872f2087c98
* WaitableEvent is the replacement for Windows events. Previously in the code, ↵agl@chromium.org2009-01-151-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | a HANDLE from CreateEvent was used for signaling, both within a process and across processes. WaitableEvent is the cross platform replacement for this. To convert: * HANDLE -> base::WaitableEvent* * ScopedHandle -> scoped_ptr<base::WaitableEvent> * CreateEvent -> new base::WaitableEvent * SetEvent -> base::WaitableEvent::Signal * ResetEvent -> base::WaitableEvent::Reset * ObjectWatcher -> base::WaitableEventWatcher * WaitForMultipleObjects -> static base::WaitableEvent::WaitMany ObjectWatcher remains for Windows specific code. WaitableEventWatcher has an identical interface save, * It uses WaitableEvents, not HANDLEs * It returns void from StartWatching and StopWatcher, rather than errors. System internal errors are fatal to the address space IMPORTANT: There are semantic differences between the different platforms. WaitableEvents on Windows are implemented on top of events. Windows events work across process and this is used mostly for modal dialog support. Windows events can be duplicated with DuplicateHandle. On other platforms, WaitableEvent works only within a single process. In the future we shall have to replace the current uses of cross-process events with IPCs. BEWARE: HANDLE, on Windows, is a void *. Since any pointer type coerces to void *, you can pass a WaitableEvent * where a HANDLE is expected without any build-time errors. Review URL: http://codereview.chromium.org/16554 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8126 0039d316-1c4b-4281-b951-d872f2087c98
* A new shot at the old system monitor changelist.mbelshe@google.com2008-12-131-7/+0
| | | | | | Review URL: http://codereview.chromium.org/12883 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@6974 0039d316-1c4b-4281-b951-d872f2087c98
* Rollbackmbelshe@google.com2008-12-011-0/+7
| | | | | | Review URL: http://codereview.chromium.org/13009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@6127 0039d316-1c4b-4281-b951-d872f2087c98
* A new copy of the old system monitor changelist.mbelshe@google.com2008-11-301-7/+0
| | | | | | Review URL: http://codereview.chromium.org/12817 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@6126 0039d316-1c4b-4281-b951-d872f2087c98
* Review URL: http://codereview.chromium.org/10958mbelshe@google.com2008-11-141-0/+7
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5509 0039d316-1c4b-4281-b951-d872f2087c98
* Change to integrate SystemMonitor changes into chrome.mbelshe@google.com2008-11-141-7/+0
| | | | | | | | | | | | This enables the dynamic detection of battery status changes so that we can turn on/off the hi-res timer. Review URL: http://codereview.chromium.org/10264 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5489 0039d316-1c4b-4281-b951-d872f2087c98
* Removes the old frames.ben@chromium.org2008-11-101-10/+0
| | | | | | | http://crbug.com/2324 Review URL: http://codereview.chromium.org/10265 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5130 0039d316-1c4b-4281-b951-d872f2087c98
* Rename ChromeViews namespace to viewsben@chromium.org2008-10-161-2/+2
| | | | | | http://crbug.com/2188 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3495 0039d316-1c4b-4281-b951-d872f2087c98
* Remove more shared_event that I missed last timeagl@chromium.org2008-10-161-1/+0
| | | | | | | | | TBR=evan Review URL: http://codereview.chromium.org/7397 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3485 0039d316-1c4b-4281-b951-d872f2087c98
* Enable magic browzr again.ben@chromium.org2008-10-141-1/+1
| | | | | | R=mal git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3385 0039d316-1c4b-4281-b951-d872f2087c98
* Revert r3334 to disable magic_browzR and see if that fixes the crashes in the mal@chromium.org2008-10-141-1/+1
| | | | | | | | | reliability tests. TBR= ben@chromium.org Review URL: http://codereview.chromium.org/7135 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3340 0039d316-1c4b-4281-b951-d872f2087c98
* Turn on MagicBrowzr again.ben@chromium.org2008-10-141-1/+1
| | | | | | Review URL: http://codereview.chromium.org/7280 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3334 0039d316-1c4b-4281-b951-d872f2087c98