summaryrefslogtreecommitdiffstats
path: root/chrome/browser/browser.cc
Commit message (Collapse)AuthorAgeFilesLines
* Hook up the browser bar just a little bit more.jrg@chromium.org2009-02-091-5/+1
| | | | | | | | We now hit the TabContentsDelegate in temp_scaffolding_stubs.h. Review URL: http://codereview.chromium.org/21178 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@9419 0039d316-1c4b-4281-b951-d872f2087c98
* Reverting 9408.brettw@chromium.org2009-02-091-6/+2
| | | | | | Review URL: http://codereview.chromium.org/20190 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@9414 0039d316-1c4b-4281-b951-d872f2087c98
* Add a new resizer corner.mad@chromium.org2009-02-091-2/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | To display a resize bitmap and handle the mouse interactions as requested in http://code.google.com/p/chromium/issues/detail?id=458. BUG=458 There are unfortunately two cases to handle and they must be handled separately. The first one is when there are no bottom shelf like the download bar, and the case where there is one. For the case without, we must draw on top of what we receive from WebKit, so we intercept the bitmap in RenderWidgetHostViewWin::OnPaint() so that we can draw the resize corner bitmap on top of it (taking into account whether we are in a right to left language or not). For the case where we have a bottom shelf, we use a dedicated view that we properly layout on top of the bottom shelf view (which takes care of handling the RTL language case for us). Same split for the mouse interactions. Without the bottom shelf, we must deal with it in RenderWidgetHostViewWin::OnMouseEvent() by sending the root window a WM_NCLBUTTONDOWN message with either HTBOTTOMRIGHT or HTBOTTOMLEFT (based on the RTL setting) and let the OS take care of the resizing. IF we have a bottom shelf, we must deal with the mouse interaction in BrowserView::NonClientHitTest() to either return HTBOTTOMRIGHT or HTBOTTOMLEFT (again, based on the RTL setting) and, again, let the OS take care of the resizing. More details here: http://code.google.com/p/chromium/wiki/BrowserViewResizer git-svn-id: svn://svn.chromium.org/chrome/trunk/src@9408 0039d316-1c4b-4281-b951-d872f2087c98
* Enable/disable buttons when the corresponding command updates in the model.pinkerton@chromium.org2009-02-061-2/+6
| | | | | | Review URL: http://codereview.chromium.org/21128 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@9318 0039d316-1c4b-4281-b951-d872f2087c98
* Remove many more ifdefs around un-used methods to enable more functionality ↵pinkerton@chromium.org2009-02-061-21/+19
| | | | | | | | for mac and linux. Review URL: http://codereview.chromium.org/21118 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@9304 0039d316-1c4b-4281-b951-d872f2087c98
* Make the new linux browser shut down cleanly.erg@google.com2009-02-061-0/+4
| | | | | | | Review URL: http://codereview.chromium.org/21112 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@9297 0039d316-1c4b-4281-b951-d872f2087c98
* New menu item for personalization project.munjal@chromium.org2009-02-061-0/+7
| | | | | | Review URL: http://codereview.chromium.org/21006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@9285 0039d316-1c4b-4281-b951-d872f2087c98
* Attempt to fix a crash in case the TabContents gets destroyed somehow.ben@chromium.org2009-02-041-4/+12
| | | | | | | | http://crbug.com/6702 Review URL: http://codereview.chromium.org/20032 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@9155 0039d316-1c4b-4281-b951-d872f2087c98
* first stab at scaffolding WebContents.pinkerton@chromium.org2009-02-031-6/+2
| | | | | | Review URL: http://codereview.chromium.org/19757 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@9055 0039d316-1c4b-4281-b951-d872f2087c98
* Remove old web app code it's no longer needed. Simplifies startup a little.ben@chromium.org2009-02-021-44/+7
| | | | | | | | Also fixes a regression from the BrowserInit porting work. I was a little over-zealous removing the CommandLine handling. It turns out that it's this that MessageWindow uses to convey the command line of the signalling process to the existing process, and that the existing process re-runs BrowserInit with the signalling process' command line. So I plumbed that back through again. Review URL: http://codereview.chromium.org/19746 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@9034 0039d316-1c4b-4281-b951-d872f2087c98
* Remove most header file dependencies on the notification type list. It isbrettw@chromium.org2009-02-011-21/+30
| | | | | | | | | | | really painful to add more types, since lots of headers include the notification service to derive from the notification observer. This splits that out, so much less of the project should end up including notification_types.h ---Paths modified but not in any changelist: Review URL: http://codereview.chromium.org/19744 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@9020 0039d316-1c4b-4281-b951-d872f2087c98
* hookup tabs to the model and handle new tab creationpinkerton@google.com2009-01-291-2/+12
| | | | | | Review URL: http://codereview.chromium.org/19669 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8902 0039d316-1c4b-4281-b951-d872f2087c98
* Remove the Windows set focus call and bad-design browser call from the new tabbrettw@chromium.org2009-01-291-0/+7
| | | | | | | | | | UI by plumbing through a delegate notification. This will also fix metrics for the "focus the URL bar" command. This also includes some OCD URL-formatting changes to the DOM UI that I noticed. Review URL: http://codereview.chromium.org/19455 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8878 0039d316-1c4b-4281-b951-d872f2087c98
* Add browser files to the linux build that mac has alreadytc@google.com2009-01-281-2/+4
| | | | | | | | | | | ported and added to the xcode build. Not much here, seems the earlier porting stuff just works. Review URL: http://codereview.chromium.org/19637 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8832 0039d316-1c4b-4281-b951-d872f2087c98
* Porting profiles to the Mac.avi@chromium.org2009-01-281-1/+1
| | | | | | Review URL: http://codereview.chromium.org/19623 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8831 0039d316-1c4b-4281-b951-d872f2087c98
* Re-land this from earlier... unit tests no longer crash.ben@chromium.org2009-01-271-28/+10
| | | | | | | | | Extract a cross platform LocationBar interface. Adds a TestLocationBar object that unit tests can use to mock the location bar (fixes NULL deref). Review URL: http://codereview.chromium.org/18851 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8745 0039d316-1c4b-4281-b951-d872f2087c98
* remove scaffolding mock of TabStripModel and replace it with the real deal. ↵pinkerton@google.com2009-01-271-8/+14
| | | | | | | | Remove some more ifdefs in Browser to implement delegate overrides. Review URL: http://codereview.chromium.org/19019 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8740 0039d316-1c4b-4281-b951-d872f2087c98
* Revert change 8693 because it breaks the unit_tests.nsylvain@chromium.org2009-01-271-10/+28
| | | | | | | TBR Review URL: http://codereview.chromium.org/19009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8704 0039d316-1c4b-4281-b951-d872f2087c98
* Extract a cross-platform LocationBar interface accessible via the ↵ben@chromium.org2009-01-271-28/+10
| | | | | | | | BrowserWindow interface that the Browser object can use to do locationbar-ey things without directly depending on Views. Review URL: http://codereview.chromium.org/18826 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8693 0039d316-1c4b-4281-b951-d872f2087c98
* Two things:ben@chromium.org2009-01-241-8/+51
| | | | | | | | | - remove views dependencies from browser by moving profile related dialog actions into BrowserWindow. - simplify the include dependencies in TabStripModel (making it easier to bring up on mac) by implementing more of its high level functionality in the delegate. Review URL: http://codereview.chromium.org/18736 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8606 0039d316-1c4b-4281-b951-d872f2087c98
* Don't expose the go and star button views directly through the BrowserWindow ↵ben@chromium.org2009-01-231-42/+9
| | | | | | | | interface (for porting). Review URL: http://codereview.chromium.org/18540 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8572 0039d316-1c4b-4281-b951-d872f2087c98
* Backs out 8523 in hopes of a greener tree.sky@google.com2009-01-231-19/+5
| | | | | | | | | | BUG=none TEST=none TBR=brg Review URL: http://codereview.chromium.org/18548 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8548 0039d316-1c4b-4281-b951-d872f2087c98
* Changes to insure that when in app-mode, links open in the default browser. ↵brg@chromium.com2009-01-231-5/+19
| | | | | | | | This change should have no affect on Chrome when not in app-mode.Tested against Gmail. UITests added as app_mode_navigation_uitest. Review URL: http://codereview.chromium.org/18093 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8523 0039d316-1c4b-4281-b951-d872f2087c98
* Make the browser talk to the status bubble through an abstract interface to ↵ben@chromium.org2009-01-221-1/+1
| | | | | | | | remove the views dependency. Review URL: http://codereview.chromium.org/18487 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8515 0039d316-1c4b-4281-b951-d872f2087c98
* More scaffolding for back/forward/reload/home, start of WebContentspinkerton@google.com2009-01-221-11/+32
| | | | | | Review URL: http://codereview.chromium.org/18507 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8493 0039d316-1c4b-4281-b951-d872f2087c98
* add basic command handling for browser window and for where there are no ↵pinkerton@google.com2009-01-211-1/+15
| | | | | | | | windows open. Can now create new browser windows. Review URL: http://codereview.chromium.org/18458 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8387 0039d316-1c4b-4281-b951-d872f2087c98
* Get browser window showing using a Browser object and accompanying ↵pinkerton@google.com2009-01-211-13/+29
| | | | | | | | scaffolding. Adds browser window controller and shim from NSWindow to BrowserWindow. Review URL: http://codereview.chromium.org/18368 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8364 0039d316-1c4b-4281-b951-d872f2087c98
* Make CommandLine into a normal object, with some statics for getting at the ↵evan@chromium.org2009-01-211-3/+3
| | | | | | | | | | | 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
* Rework the command updater to not be dependent on views::Button (needed for ↵ben@chromium.org2009-01-201-152/+140
| | | | | | | | | porting). TEST=make sure back/forward buttons still enable/disable correctly depending on the length of the back/forward navigation list. Review URL: http://codereview.chromium.org/18343 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8332 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
* Move all the SSL stuff into its own subdirben@chromium.org2009-01-161-1/+1
| | | | | | Review URL: http://codereview.chromium.org/18137 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8165 0039d316-1c4b-4281-b951-d872f2087c98
* Move metrics files into a subdirben@chromium.org2009-01-161-1/+1
| | | | | | Review URL: http://codereview.chromium.org/18302 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8156 0039d316-1c4b-4281-b951-d872f2087c98
* Move a bunch of TabContents related files into a tab_contents subdirben@chromium.org2009-01-151-5/+5
| | | | | | Review URL: http://codereview.chromium.org/18250 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8058 0039d316-1c4b-4281-b951-d872f2087c98
* When opening a new tab by pressing CTRL-T in app mode, the location bar ↵jcampan@chromium.org2009-01-141-0/+5
| | | | | | | | | | | | would not get focused. This is because when the tab was shown its browser window is not yet active. BUG=6380 TEST=Open an app (ex: gmail), press CTRL-T, this opens a new browser with a new tab. Navigate to google.com in the new tab. Go back to the app, press CTRL-T again, a new tab should be opened and the location bar should have focus. Review URL: http://codereview.chromium.org/18017 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8040 0039d316-1c4b-4281-b951-d872f2087c98
* Provides the infrastructure for Browser unit tests that create asky@google.com2009-01-141-8/+29
| | | | | | | | | | | | | BrowserWindow with only a TabStrip. I also converted two ui tests over to unit tests to make sure it all worked. I had to add a bunch of null checks to Browser and a couple of other places. BUG=none TEST=none Review URL: http://codereview.chromium.org/17386 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8007 0039d316-1c4b-4281-b951-d872f2087c98
* Checking in a patch from m0interactive, reviewed by pkasting. Quote:finnur@google.com2009-01-051-1/+1
| | | | | | | | | | | | | | | Ctrl+U should show up view-source on Application shortcuts. According to pkasting in dev mailing list: "Ctrl-U for an application should do what the context menu option does: open a source tab in some normal window." Hence, made it a NEW_FOREGROUND_TAB for disposition BUG=http://crbug.com/5115 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@7563 0039d316-1c4b-4281-b951-d872f2087c98
* Reverting my landing (of a patch by external contributer).finnur@google.com2008-12-231-4/+1
| | | | | | | | | | I jumped the gun, Peter raised additional issues after we both LGTM'ed (and I didn't notice those emails). TBR=pkasting Review URL: http://codereview.chromium.org/16234 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@7412 0039d316-1c4b-4281-b951-d872f2087c98
* Landing a patch for m0interactive (already in the AUTHORS list):finnur@google.com2008-12-231-1/+4
| | | | | | | | | | | | | | | | Ctrl+U should show up view-source on Application shortcuts. According to pkasting in dev mailing list: "Ctrl-U for an application should do what the context menu option does: open a source tab in some normal window." Hence, made it a NEW_FOREGROUND_TAB for disposition TBR=pkasting BUG=http://crbug.com/5115 Review URL: http://codereview.chromium.org/16233 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@7408 0039d316-1c4b-4281-b951-d872f2087c98
* Fixes bug where we wouldn't necessarily start throbber timer on dropsky@google.com2008-12-191-0/+7
| | | | | | | | | | | | | | | | of a tab if the page was loading. The fix is to call LoadingStateChanged, which makes sure everything is in sync and the timer is running (if necessary). BUG=2524 TEST=Create two windows. In one of the windows load a page that takes a long time to load. Drag the tab into the first window and make sure when the tab snaps to the final position the throbber starts appropriately. Review URL: http://codereview.chromium.org/15056 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@7300 0039d316-1c4b-4281-b951-d872f2087c98
* Review URL: http://codereview.chromium.org/14809jcampan@chromium.org2008-12-191-2/+5
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@7281 0039d316-1c4b-4281-b951-d872f2087c98
* This fixes a crash while trying to duplicate an application window.erg@google.com2008-12-181-1/+4
| | | | | | Review URL: http://codereview.chromium.org/14823 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@7228 0039d316-1c4b-4281-b951-d872f2087c98
* Duplicate popup window should have same size and scroll erg@google.com2008-12-181-0/+6
| | | | | | | | | | position as original popup. BUG=5632 (http://crbug.com/5632) Patch by Mohamed Mansour. Review URL: http://codereview.chromium.org/14812 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@7195 0039d316-1c4b-4281-b951-d872f2087c98
* Reverting 7149.jcampan@chromium.org2008-12-171-5/+2
| | | | | | Review URL: http://codereview.chromium.org/15004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@7153 0039d316-1c4b-4281-b951-d872f2087c98
* Revamp of the interstitial pages.jcampan@chromium.org2008-12-171-2/+5
| | | | | | | | | | | | | | The interstitial is now a RVH that is displayed on top of the WebContents with no interaction with the WebContents' RenderViewHostManager. This simplifies the states that the RenderViewHostManager has. The interstitial is responsible for hiding and deleting itself when told to proceed/not proceed or when a navigation occurs or the tab is closed. The interstitial now uses a data URL (instead of loading some alternate HTML), which allowed me to remove some interstitial flags from NavigationController::LoadCommittedDetails and ProvisionalLoadDetails. Also changed tab_utils::GetTabContentsByID to return a WebContents since only WebContents have a RVH associated with them. TEST=Run all ui tests and unit tests. Review URL: http://codereview.chromium.org/13764 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@7149 0039d316-1c4b-4281-b951-d872f2087c98
* Mostly cleanup.pkasting@chromium.org2008-12-171-132/+98
| | | | | | | | | | | * Use temporary variables when we're going to call AsWebContents() repeatedly * Remove some NOTREACHED()s that don't really help debugging (and none of the surrounding code checks) * Try and simplify or make clearer some bits of code Also enables/disables some commands more selectively: IDC_GO is now enabled only when the go button is visible (i.e. when we're not loading), and several commands whose UI is only available in normal windows are now only enabled in normal windows. This last change fixes a number of weird effects where you could hit different shortcuts in web app and popup windows and trigger commands with little or no UI feedback. Review URL: http://codereview.chromium.org/14182 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@7141 0039d316-1c4b-4281-b951-d872f2087c98
* Make stop work again (I broke it). Rather than revert to the previous ↵pkasting@chromium.org2008-12-171-11/+10
| | | | | | | | | working-but-lame code, this cleans up the code a little further by actually enabling/disabling the stop command at the right times. BUG=5542 Review URL: http://codereview.chromium.org/14498 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@7119 0039d316-1c4b-4281-b951-d872f2087c98
* Fix onblur= handelers getting called on popup window creation. This ↵erg@google.com2008-12-121-1/+4
| | | | | | | | | regressed in r5417. ISSUE=http://crbug.com/4737 Review URL: http://codereview.chromium.org/13271 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@6907 0039d316-1c4b-4281-b951-d872f2087c98
* A follow-up to a recent unforking of WebCore/platform/text/TextCodecICU.cpp ↵jungshik@google.com2008-12-111-2/+2
| | | | | | | | | | | | | | | (r6540). Up to now, we canonicalized to EUC-KR, TIS-620 and GB2312, but with unforking, we'd better canonicalize to windows-949, windows-874 and GBK. Another change is necessary in Webkit (Document.cpp), which I'll do it while unforking it. BUG=3703 Review URL: http://codereview.chromium.org/13645 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@6817 0039d316-1c4b-4281-b951-d872f2087c98
* Only allow bookmark keyboard shortcut for tabbed browsers.sky@google.com2008-12-111-1/+9
| | | | | | | | | BUG=5055 TEST=make sure control-d does nothing for apps and popup windows Review URL: http://codereview.chromium.org/13363 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@6764 0039d316-1c4b-4281-b951-d872f2087c98
* Cleanup part 5.pkasting@chromium.org2008-12-101-305/+342
| | | | | | | | | | | Reorder identifiers, functions, initalization statements, etc. to all match. This preserves the original groups Ben created but makes a couple of changes: * Within each group, the order is now "by GUI order" instead of random. This can be subjective, but when I tried doing alphabetical order, it resulted in related functionality being separated pretty arbitrarily. * I moved the "window management" functions next to (but above) the "page-related" functions (this seemed a little more logical, but maybe not) I also renamed UpdateNavigationCommands() to try and reflect that it updates a lot more than navigation commands, and moved some unconditionally-initialized commands (profile stuff) in there over to InitCommandState() where they belong. Review URL: http://codereview.chromium.org/13681 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@6721 0039d316-1c4b-4281-b951-d872f2087c98