summaryrefslogtreecommitdiffstats
path: root/chrome/browser/browser_main.cc
Commit message (Collapse)AuthorAgeFilesLines
* Provides the ability to write a unit test that brings up a browser. Assky@google.com2009-01-301-13/+31
| | | | | | | | | | | | | | a proof of concept I converted FindInPageControllerTest.FindInPageFrames over to this. See the description in InProcessBrowserTest for how it all works. BUG=none TEST=none Review URL: http://codereview.chromium.org/19644 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8934 0039d316-1c4b-4281-b951-d872f2087c98
* This CL fixes bugs with EULAcpu@google.com2009-01-291-4/+5
| | | | | | | | | | | | | | - The first run import will trigger the eula again : this requires changes in browser_main.cc so the master prefs are not processed again by the importer process - The launch of setup.exe to show the eula was using a path that only works on developer builds this requires relocating a constant from setup_constants to util_constants BUG=1468838 Review URL: http://codereview.chromium.org/19680 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8928 0039d316-1c4b-4281-b951-d872f2087c98
* Change chrome:// to chrome-ui://, fix up one chrome-resource:// reference.glen@chromium.org2009-01-291-2/+2
| | | | | | Review URL: http://codereview.chromium.org/18175 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8896 0039d316-1c4b-4281-b951-d872f2087c98
* Porting profiles to the Mac.avi@chromium.org2009-01-281-5/+6
| | | | | | Review URL: http://codereview.chromium.org/19623 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8831 0039d316-1c4b-4281-b951-d872f2087c98
* Move MessageWindow out into its own file. BrowserInit is now ↵ben@chromium.org2009-01-271-1/+4
| | | | | | | | | | cross-platform-capable. Fix up the header includes in browser_init.cc/h removing a bunch of windows stuff. Review URL: http://codereview.chromium.org/19034 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8762 0039d316-1c4b-4281-b951-d872f2087c98
* Unimportant cleanup.avi@chromium.org2009-01-271-1/+1
| | | | | | Review URL: http://codereview.chromium.org/18847 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8718 0039d316-1c4b-4281-b951-d872f2087c98
* Fixes leak of CertStore on shutdown.sky@google.com2009-01-231-4/+0
| | | | | | | | | BUG=none TEST=none Review URL: http://codereview.chromium.org/18568 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8599 0039d316-1c4b-4281-b951-d872f2087c98
* I'm relanding the UserDataManager leak fix. I didn't realize we hadsky@google.com2009-01-231-2/+1
| | | | | | | | | | | | | stubs for mac which needed to be updated too. This time I'll wait for the bots to finish compiling before committing. BUG=none TEST=none TBR=munjal Review URL: http://codereview.chromium.org/18566 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8587 0039d316-1c4b-4281-b951-d872f2087c98
* Reverts my user data manager change as it breaks the mac buildbot.sky@google.com2009-01-231-1/+2
| | | | | | | | | | BUG=none TEST=none TBR=munjal Review URL: http://codereview.chromium.org/18564 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8584 0039d316-1c4b-4281-b951-d872f2087c98
* Fixes leak of UserDataManager on shutdown.sky@google.com2009-01-231-2/+1
| | | | | | | | | BUG=none TEST=none Review URL: http://codereview.chromium.org/18714 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8581 0039d316-1c4b-4281-b951-d872f2087c98
* Make CommandLine into a normal object, with some statics for getting at the ↵evan@chromium.org2009-01-211-5/+4
| | | | | | | | | | | 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
* Move url_* to net subdirben@chromium.org2009-01-161-1/+1
| | | | | | Review URL: http://codereview.chromium.org/18305 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8224 0039d316-1c4b-4281-b951-d872f2087c98
* mac bootstrapping of browser main and app startup bitspinkerton@google.com2009-01-161-49/+83
| | | | | | Review URL: http://codereview.chromium.org/18112 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8185 0039d316-1c4b-4281-b951-d872f2087c98
* Move metrics files into a subdirben@chromium.org2009-01-161-2/+2
| | | | | | Review URL: http://codereview.chromium.org/18302 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8156 0039d316-1c4b-4281-b951-d872f2087c98
* Remove HttpTransactionWinHttp and the --winhttp command-linewtc@google.com2009-01-131-9/+2
| | | | | | | | | | | | | | | switch. Remove WinHttpThrottle and CertStatusCache, which are only used by HttpTransactionWinHttp. Fix nits reported by cpplint.py. R=eroman,darin BUG=6323 Review URL: http://codereview.chromium.org/17635 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@7970 0039d316-1c4b-4281-b951-d872f2087c98
* Rename extension_protocol* to extension_protocols*aa@chromium.org2009-01-091-1/+1
| | | | | | Review URL: http://codereview.chromium.org/17433 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@7836 0039d316-1c4b-4281-b951-d872f2087c98
* remove chrome dependencies from win sandboxing headers. Wrap sandbox code topinkerton@google.com2009-01-091-4/+10
| | | | | | | make the main routine a little cleaner. Unify the parameters of each of the "main" entry points so we can more easily abstract platform differences in the future. BUG=5323 Review URL: http://codereview.chromium.org/17426 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@7825 0039d316-1c4b-4281-b951-d872f2087c98
* Remove net_resources.rc and net_resources.h and replace ittc@google.com2009-01-081-1/+1
| | | | | | | | | | | | | | | | with a grd file that generates the same thing. We want to do this so on linux, we will have grit generate the .h file and a platform specific resource file. There's some munging going on to be able to get the effective_tld_names_clean.dat file included in the rc. This works in visual studio and scons. I need to update chrome_kjs.sln and the webkit*.sln files and the mac build before committing. Review URL: http://codereview.chromium.org/16565 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@7762 0039d316-1c4b-4281-b951-d872f2087c98
* Add chrome-user-script:// protocolaa@chromium.org2009-01-081-1/+1
| | | | | | | | | | | This is a step towards getting user scripts working in extensions. It's a bit janky to use the form chrome-user-script://<script file>/ (with no path), but GURL assumes that there is always a host, but path is optional, making this approach simpler than alternatives. Review URL: http://codereview.chromium.org/16592 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@7759 0039d316-1c4b-4281-b951-d872f2087c98
* Provide and use auto startup/teardown for tracked objectsjar@google.com2008-12-301-21/+9
| | | | | | | | | | Avoid races with message loop teardown r=nsylvain Review URL: http://codereview.chromium.org/17023 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@7503 0039d316-1c4b-4281-b951-d872f2087c98
* Implement extension:// protocol.aa@chromium.org2008-12-241-1/+4
| | | | | | Review URL: http://codereview.chromium.org/15010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@7462 0039d316-1c4b-4281-b951-d872f2087c98
* A new shot at the old system monitor changelist.mbelshe@google.com2008-12-131-0/+4
| | | | | | Review URL: http://codereview.chromium.org/12883 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@6974 0039d316-1c4b-4281-b951-d872f2087c98
* step one of some refactoring to allow other platforms to re-use the app ↵pinkerton@google.com2008-12-091-152/+36
| | | | | | | | initialization code. Review URL: http://codereview.chromium.org/13295 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@6627 0039d316-1c4b-4281-b951-d872f2087c98
* Reupload of 12418glen@chromium.org2008-12-071-1/+1
| | | | | | Review URL: http://codereview.chromium.org/13183 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@6497 0039d316-1c4b-4281-b951-d872f2087c98
* Chromium-MultiProfile-Prototypemunjal@chromium.org2008-12-031-0/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Summary ======= Implement a prototype of multiple profiles in Chrome by utilizing the functionality of user-data-dir command line flag that already exists. A profile in this case is an umbrella for all user data including cookies, history, bookmarks, settings, etc. Each profile gives the user a separation of all these data elements. User Interface ============== - Wrench > "New window in profile" menu item, with sub-menu items. This new menu item has sub menu items for each existing profile, for up to 9 profiles, and one more sub menu item to launch a window in a new profile. The 9 sub-menu items also have the accelerators like CTRL + SHIFT + 1, CTRL + SHIFT + 2, etc. If there are more than 9 profiles, we will also show an extra sub-menu item, "Other...". - New Profile dialog box This dialog box is shown to the use when (s)he clicks Wrench > New window in profile > <New Profile>. It lets the user specify a profile name, and also shows a checkbox to create a desktop shortcut to launch Chrome in that profile. - Choose profile dialog box This dialog box lets the user select a profile from a drop down to open a new window in. It also has an item <New Profile> in the drop down, selecting which will show the new profile dialog box mentioned above. CTRL + M shortcut also launches this dialog box. Code Organization ================= chrome\browser\user_data_dir_profile_manager.h/.cc: This class provides an abstraction of profiles on top of the user data dir command line flag. chrome\browser\views\user_data_dir_new_profile_dialog.h/.cc New profile dialog box code. chrome\browser\views\user_data_dir_profiles_dialog.h/.cc Choose profile dialog box code. Review URL: http://codereview.chromium.org/12895 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@6333 0039d316-1c4b-4281-b951-d872f2087c98
* Rollbackmbelshe@google.com2008-12-011-4/+0
| | | | | | 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-0/+4
| | | | | | Review URL: http://codereview.chromium.org/12817 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@6126 0039d316-1c4b-4281-b951-d872f2087c98
* Remove base versions of the graphics headers, which previously just ↵brettw@google.com2008-11-221-1/+0
| | | | | | | | forwarded to the skia ones. Review URL: http://codereview.chromium.org/11588 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5894 0039d316-1c4b-4281-b951-d872f2087c98
* Make the net resource interface use StringPiece instead of std::string. ↵deanm@chromium.org2008-11-201-3/+3
| | | | | | | | This means we can point directly into the resource in the binary, instead of copying. This makes sense for the TLD data, which doesn't need to be copied around. Review URL: http://codereview.chromium.org/11506 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5740 0039d316-1c4b-4281-b951-d872f2087c98
* Revert "Make the net resource interface use StringPiece instead oftc@google.com2008-11-201-3/+3
| | | | | | | | | | | | | | | std::string. This means we can point directly into the resource in the binary, instead of copying. This makes sense for the TLD data, which doesn't need to be copied around." This reverts commit r5735. TBR=deanm Review URL: http://codereview.chromium.org/11298 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5736 0039d316-1c4b-4281-b951-d872f2087c98
* Make the net resource interface use StringPiece instead of std::string. ↵deanm@chromium.org2008-11-201-3/+3
| | | | | | | | This means we can point directly into the resource in the binary, instead of copying. This makes sense for the TLD data, which doesn't need to be copied around. Review URL: http://codereview.chromium.org/11296 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5735 0039d316-1c4b-4281-b951-d872f2087c98
* Cache the generated html for directory listings. This will allow the net ↵deanm@chromium.org2008-11-191-7/+26
| | | | | | | | resource provider system to return direct pointers into the resources instead of copying. Review URL: http://codereview.chromium.org/11501 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5729 0039d316-1c4b-4281-b951-d872f2087c98
* Move creation of 'open with' registry keys to installer. We should place ↵kuchhal@chromium.org2008-11-191-5/+0
| | | | | | | | | | nice and not create these keys on every Chrome start just in case user wants a customized open with list. So now we only create these keys at installation or when user choses to make Chrome default browser. Also we clean them up on uninstall. BUG=1190855 Review URL: http://codereview.chromium.org/11491 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5726 0039d316-1c4b-4281-b951-d872f2087c98
* Open up SDCH for all sites, in preparation for latency testsjar@google.com2008-11-151-2/+2
| | | | | | | | | | | | | | | | | | | | | | | Since the stability test is going well (so far) on ".google.com," this change will open up support for SDCH compression to all sites. This will allow for more international testing as well. I tightened down the restrictions on who can set up a dictionary for a given domain. I'm pretty sure it is at least as restrictive as the current SDCH spec. I also supplied a default expiration time for using an SDCH dictionary at 30 days (as per SDCH spec). To be safer with the latency histograms, I also tightened the period of time we measure, on the off chance that the page some-how asks for more bytes after everything has been read/rendered. r=openvcdiff,hunar Review URL: http://codereview.chromium.org/11009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5529 0039d316-1c4b-4281-b951-d872f2087c98
* Switch to avoid first-run pop-up from displaying while in app-mode.brg@chromium.com2008-11-141-0/+5
| | | | | | Review URL: http://codereview.chromium.org/10675 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5511 0039d316-1c4b-4281-b951-d872f2087c98
* Review URL: http://codereview.chromium.org/10958mbelshe@google.com2008-11-141-4/+0
| | | | 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-0/+4
| | | | | | | | | | | | 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
* Add Terminate() to the Process object, have RenderProcessHost use this to ↵brettw@google.com2008-11-141-2/+2
| | | | | | | | | | avoid some more Windows specific code. Move Process and SharedMemory into the base namespace (most changes). Review URL: http://codereview.chromium.org/10895 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5446 0039d316-1c4b-4281-b951-d872f2087c98
* Re-do the way browser windows are shown:ben@chromium.org2008-11-141-4/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | - Remove the path from WinMain to the Browser object passing the show_command. For the Browser object, this is a problem since this value isn't portable. For the code in general it involves a lot of ugly wiring. It's completely unnecessary since the value is obtainable via GetStartupInfo. - Remove show_command plumbing from all over the place (session restore, web app launcher, etc) Change the way browser windows are constructed: - The browser constructor now takes just a type and a profile, and simply initializes the object. - Some configuration that used to be part of the constructor that was only used in one or two use cases (initial bounds, maximized state, web app name) are split into separate setters. - Window creation is split out into a separate step to be called post configuration. - Assorted static helper functions added to Browser to make construction of common types easy. - Remove Browser::Show in favor of BrowserWindow::Show - Adjust all callers to use the new helpers. Change the way ChromeViews restores window placement: - Split restored size determination from restored maximized determination. They are needed by the code at different times. Size restoration happens when the window is constructed and Window::SetInitialBounds is called. Maximized state restoration happens when the window is shown for the first time and SW_SHOWMAXIMIZED or SW_SHOWNORMAL is needed. Thus, replace WindowDelegate::RestoreWindowPosition with WindowDelegate::RestoreWindowBounds and WindowDelegate::RestoreMaximizedState. - Window::SetInitialBounds calls WindowDelegate::RestoreWindowBounds - Window::Show calls WindowDelegate::RestoreMaximizedState - Adjusts all WindowDelegate implementations that override RestoreWindowPosition to implement these new methods instead. - Move "playback/record" mode window size setting from browser_init to Browser::RestoreWindowBounds. - Provide a virtual function on Window called GetShowState that determines the default show state to be used when Window::Show is called. For most windows and dialogs this is SW_SHOWNORMAL. AeroGlassFrame/OpaqueFrame (the browser window frames) override this since they're the app's main windows to return the value provided by GetStartupInfo which gives the value from the app shortcut. http://crbug.com/3557 Review URL: http://codereview.chromium.org/10896 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5417 0039d316-1c4b-4281-b951-d872f2087c98
* * Try to rename chrome exes in shutdown path as well.kuchhal@chromium.org2008-11-121-12/+1
| | | | | | | | BUG=1463346 Review URL: http://codereview.chromium.org/10805 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5313 0039d316-1c4b-4281-b951-d872f2087c98
* * Create unique event in global namespacekuchhal@chromium.org2008-11-081-9/+3
| | | | | | | | so that we can detect Chrome instances across user sessions. Review URL: http://codereview.chromium.org/10234 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5057 0039d316-1c4b-4281-b951-d872f2087c98
* Implement the new mechanism we are going to use for handling Chromium updateskuchhal@chromium.org2008-11-071-2/+2
| | | | | | | | | | | | | | | | | | | | while it is in use. This should work for per user as well as system level installs (after some additional changes once Google Update changes are ready). The following scenarios should work now: - If Chromium is using two different profiles at the same time we do not switch chrome executables until all of them are closed. - The old version of Chromium can be run after a restart if the renaming of executables fails. - We will not use environment variable any more but we need to keep it until all the users get this change on their machines. - opv/rename registry keys and new_chrome.exe should always together. If one exist all three should exist because they are created and deleted as one atomic operation (as much as possible given laws of physics). BUG=1463346 Review URL: http://codereview.chromium.org/9436 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@4949 0039d316-1c4b-4281-b951-d872f2087c98
* Refactoring master preference parsing code into installer util sohuanr@chromium.org2008-11-041-4/+2
| | | | | | | | | it can be shared by first run and set up. There is no functionality change in this CL. Review URL: http://codereview.chromium.org/9338 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@4688 0039d316-1c4b-4281-b951-d872f2087c98
* On first run process the master prefs json, only one entry matters to us.cpu@google.com2008-10-311-1/+1
| | | | | | | | | | | - skip or not first run dialgos - on skip import silently search provider only BUG=1394863 Review URL: http://codereview.chromium.org/8758 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@4346 0039d316-1c4b-4281-b951-d872f2087c98
* Cleanup of DNS prefetch related filesjar@google.com2008-10-271-1/+1
| | | | | | | | | | | I have a separate change list coming to support predictive DNS resolutions, so I pulled out a pile of mechanical changes (with no semantic changes intendend). r=mbelshe Review URL: http://codereview.chromium.org/8624 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@4015 0039d316-1c4b-4281-b951-d872f2087c98
* Turn on SDCH support for google.com by default.jar@google.com2008-10-241-4/+6
| | | | | | | | | | | | | | | I'll just turn it on for google.com to start with, since I think google is the only server supporting this experimental protocol. This doesn't catch all the google usages, as search in Europe/Asia etc. may use a different server, but this should get some baseline tip-o-tree usage. After a week or two (without problems), I'll open it up by default for all sites on the net. r=openvcdiff Review URL: http://codereview.chromium.org/8154 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3940 0039d316-1c4b-4281-b951-d872f2087c98
* Add installer command line option to create shortcuts (desktop and quickkuchhal@chromium.org2008-10-241-2/+4
| | | | | | launch). git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3913 0039d316-1c4b-4281-b951-d872f2087c98
* Change the default http stack for chrome.exe from winhttp to the new one.ericroman@google.com2008-10-221-3/+2
| | | | | | | | http://code.google.com/p/chromium/issues/detail?id=2645 Review URL: http://codereview.chromium.org/7876 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3776 0039d316-1c4b-4281-b951-d872f2087c98
* Reduce header dependencies.evanm@google.com2008-10-221-0/+1
| | | | | | | | | Random files in V8Bindings were getting rebuilt when I touched process_util.h. I tracked it down to stats_table.h and shared_memory.h. This change cuts down some dependencies there; more could be removed if we made some of our FooHandle typedefs into abstract data types instead. Review URL: http://codereview.chromium.org/7307 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3770 0039d316-1c4b-4281-b951-d872f2087c98
* Rollback r3693 as it caused a 7% startup test slowdown.ericroman@google.com2008-10-221-2/+3
| | | | | | | | BUG=3639 Review URL: http://codereview.chromium.org/8044 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3711 0039d316-1c4b-4281-b951-d872f2087c98