summaryrefslogtreecommitdiffstats
path: root/chrome/browser/external_tab_container.cc
Commit message (Collapse)AuthorAgeFilesLines
* Removed focus manager references from the external tab container as we don't ↵ananta@chromium.org2009-06-031-19/+2
| | | | | | | | | | | | | need the focus manager to achieve tabbing in and out of the chrome frame widget. The other change is to add a check for a NULL container window when the tab contents is being freed. This causes an assert to fire in the focus manager code while trying to unsubclass the window. Review URL: http://codereview.chromium.org/119074 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@17499 0039d316-1c4b-4281-b951-d872f2087c98
* Rollin' back 17315. Looks to be breaking OpenPopupWindowWithPlugin in the UI ↵robertshield@google.com2009-06-011-4/+3
| | | | | | | | | | Test on the builder. TBR=jhawkins Review URL: http://codereview.chromium.org/115997 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@17332 0039d316-1c4b-4281-b951-d872f2087c98
* Re-apply 17223 (http://codereview.chromium.org/115943) to fix external tab ↵robertshield@google.com2009-06-011-3/+4
| | | | | | | | handling of certain open dispositions. Review URL: http://codereview.chromium.org/118030 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@17315 0039d316-1c4b-4281-b951-d872f2087c98
* Reverting 17223 (http://codereview.chromium.org/115943). Seems to make ↵robertshield@google.com2009-05-291-4/+3
| | | | | | | | | | interactive UI tests unhappy. TBR=tommi Review URL: http://codereview.chromium.org/118029 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@17239 0039d316-1c4b-4281-b951-d872f2087c98
* Avoid DCHECKING on NEW_FOREGROUND_TAB and NEW_BACKGROUND_TAB dispositions in ↵robertshield@google.com2009-05-291-3/+4
| | | | | | | | ExternalTabContainer by re-routing those dispositions to new popups. Review URL: http://codereview.chromium.org/115943 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@17223 0039d316-1c4b-4281-b951-d872f2087c98
* Restore parent semantings for external tab container creation, and error ↵ben@chromium.org2009-05-281-1/+5
| | | | | | | | | | | check the HWND. BUG=none TEST=none Review URL: http://codereview.chromium.org/115852 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@17110 0039d316-1c4b-4281-b951-d872f2087c98
* With the recent change to the ExternalTabContainer to have it subclass ↵ananta@chromium.org2009-05-271-2/+4
| | | | | | | | | | | | WidgetWin rather than Widget and the associated ATL classes, the class name based comparison for a window to check if it is an external tab container window is no longer valid. We now check if a window is an external tab window by looking for the existence of the kWindowObjectKey window property, which is only set on external tab container windows. Review URL: http://codereview.chromium.org/115833 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@17034 0039d316-1c4b-4281-b951-d872f2087c98
* ExternalTabContainer should subclass WidgetWin rather than Widget and ATL ↵ben@chromium.org2009-05-271-152/+81
| | | | | | | | | | | | CWindowImpl. This makes it much easier to extend the API of Widget. Cleans up ExternalTabContainer to better match chrome style. BUG=none TEST=run ui tests, verify ExternalTabContainer tests pass. Review URL: http://codereview.chromium.org/113892 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@16996 0039d316-1c4b-4281-b951-d872f2087c98
* Removes WidgetWin dependency from StatusBubbleViews so that it can compile ↵ben@chromium.org2009-05-261-0/+29
| | | | | | | | | | | | | | | | on Linux. Requires: - making SetOpacity a cross platform method on Widget, replacing SetLayeredAlpha. - moving Window::SetBounds to Widget - replacing usage of MoveWindow in StatusBubbleViews with call to new SetBounds method. BUG=none TEST=make sure transparency still works for floating widgets like - status bubble, full screen exit bubble, dragged tabs Review URL: http://codereview.chromium.org/113846 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@16948 0039d316-1c4b-4281-b951-d872f2087c98
* Refactors TabContentsContainerView into TabContentsContainer and associated ↵ben@chromium.org2009-05-221-4/+4
| | | | | | | | | | | platform-specific inner classes. BUG=none TEST=make sure web page focus cycling in and out of the content area still works. Review URL: http://codereview.chromium.org/113784 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@16810 0039d316-1c4b-4281-b951-d872f2087c98
* Use NotificationRegistrar to handle notification observing.Also cleans up ↵pkasting@chromium.org2009-05-211-0/+1
| | | | | | | | some other stuff: use {} on multi-line conditional bodies, remove a bunch of unused routing_id members, don't wrap lines that don't need to, etc.BUG=2381 Review URL: http://codereview.chromium.org/115602 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@16634 0039d316-1c4b-4281-b951-d872f2087c98
* Fix unchecked pointer dereference that I stumbled across.robertshield@google.com2009-05-181-1/+1
| | | | | | Review URL: http://codereview.chromium.org/115477 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@16312 0039d316-1c4b-4281-b951-d872f2087c98
* Move win_util.h from common to app.ben@chromium.org2009-05-081-1/+1
| | | | | | | | http://crbug.com/11387 Review URL: http://codereview.chromium.org/113169 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15694 0039d316-1c4b-4281-b951-d872f2087c98
* Pass external tab handle when Chrome sends outgoing notifications through ↵stoyan@chromium.org2009-05-081-12/+15
| | | | | | | | automation interface. Review URL: http://codereview.chromium.org/115134 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15663 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
* Destroy browser/content related C++ object on WM_DESTROY message, rather ↵stoyan@chromium.org2009-05-061-1/+5
| | | | | | | | than OnFinalMessage Review URL: http://codereview.chromium.org/115034 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15434 0039d316-1c4b-4281-b951-d872f2087c98
* Replace all occurrances of WebContents with TabContents.brettw@chromium.org2009-05-041-2/+1
| | | | | | Review URL: http://codereview.chromium.org/99177 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15194 0039d316-1c4b-4281-b951-d872f2087c98
* Allowing the client to handle escape and keyup events.tommi@google.com2009-05-021-5/+13
| | | | | | Review URL: http://codereview.chromium.org/99293 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15142 0039d316-1c4b-4281-b951-d872f2087c98
* Ensure that the underlying web_contents has focus in the external tab containerananta@chromium.org2009-05-011-0/+1
| | | | | | | | | when it receives the SetInitialFocus notification from the client. Review URL: http://codereview.chromium.org/102022 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15104 0039d316-1c4b-4281-b951-d872f2087c98
* Two changes:sky@chromium.org2009-04-291-3/+0
| | | | | | | | | | | | . Removes MoveToFront on Widget. . CHanges AsWindow to GetWindow. BUG=none TEST=none Review URL: http://codereview.chromium.org/99133 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@14868 0039d316-1c4b-4281-b951-d872f2087c98
* Implement tabs.createWindow extension api call. Required: (a) new ↵rafaelw@chromium.org2009-04-281-1/+8
| | | | | | | | | | | RVHDelegate & TabContentsDelegate method(s) CreateExtensionFunctionDispatcher() so that the dispatcher could be created with (an optional) browser attached to it, while avoiding having render_host depend on browser.h BUG=11092: R=aa,mpComplete,darin,pkasting Review URL: http://codereview.chromium.org/79070 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@14710 0039d316-1c4b-4281-b951-d872f2087c98
* Provide a way for a TabContentsDelegate to take focus when we receive a ↵ananta@chromium.org2009-04-231-28/+15
| | | | | | | | | | notification from the renderer that it is done cycling through the controls on the page. Review URL: http://codereview.chromium.org/93001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@14363 0039d316-1c4b-4281-b951-d872f2087c98
* Re-land my change to clean up TabContents/WebContents ownership. Thisbrettw@chromium.org2009-04-201-11/+4
| | | | | | | | | | | | | | | | | | | | | | | | is the same except in tab_strip_model_unittest I fixed a leak by making a WebContents on the stack, I added a factory to the SiteInstance unittest to prevent another leak, and I re-added a NULL set to the external_tab_container. Fix the ownership model of TabContents and NavigationController. Previously the NavigationController owned the TabContents, and there were extra steps required at creation and destruction to clean everything up properly. NavigationController is now a member of TabContents, and there is no setup or tear down necessary other than the constructor and destructor. I could remove the tab contents creation in the NavigationController, as well as all the weird destruction code in WebContents which got moved to the destructor. I made the controller getter return a reference since the ownership is clear and there is no possibility of NULL. This required changing a lot of tiles, but many of them were simplified since they no longer have to NULL check. Previous review URL: http://codereview.chromium.org/69043 Review URL: http://codereview.chromium.org/67294 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@14053 0039d316-1c4b-4281-b951-d872f2087c98
* Reverting 14005.brettw@chromium.org2009-04-181-4/+12
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@14006 0039d316-1c4b-4281-b951-d872f2087c98
* Fix the ownership model of TabContents and NavigationController. Previously thebrettw@chromium.org2009-04-181-12/+4
| | | | | | | | | | | | | | | | | NavigationController owned the TabContents, and there were extra steps required at creation and destruction to clean everything up properly. NavigationController is now a member of TabContents, and there is no setup or tear down necessary other than the constructor and destructor. I could remove the tab contents creation in the NavigationController, as well as all the weird destruction code in WebContents which got moved to the destructor. I made the controller getter return a reference since the ownership is clear and there is no possibility of NULL. This required changing a lot of tiles, but many of them were simplified since they no longer have to NULL check. Review URL: http://codereview.chromium.org/69043 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@14005 0039d316-1c4b-4281-b951-d872f2087c98
* Add a new notification for automation customers that the amit@chromium.org2009-04-161-13/+24
| | | | | | | | | | external tab has finished loading. Unfortunately we cannot reuse AutomationMsg_InitialLoadsComplete because it has overloaded meaning. Review URL: http://codereview.chromium.org/69018 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@13851 0039d316-1c4b-4281-b951-d872f2087c98
* Remove TabContnetsType from everywhere.brettw@chromium.org2009-04-151-4/+0
| | | | | | | | I also removed the notion of the "active" tab contents since there is only one per tab now, and all the messages to replace them. Review URL: http://codereview.chromium.org/67173 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@13808 0039d316-1c4b-4281-b951-d872f2087c98
* Make the omnibox popup look nicer. Add dropshadow images (not final). ↵ben@chromium.org2009-04-151-2/+2
| | | | | | | | | | | | Experiment with some effects. Adds a positioner interface that allows the popup to size itself to the width of the edit view + the width of the star and go buttons. (Basically the toolbar needs to help the popup position itself). No results yet! Review URL: http://codereview.chromium.org/68011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@13784 0039d316-1c4b-4281-b951-d872f2087c98
* Remove TabContentsType from the NavigationController external interface and inbrettw@chromium.org2009-04-151-1/+1
| | | | | | | some related areas. I removed all uses of this in the previous patch. Review URL: http://codereview.chromium.org/73057 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@13730 0039d316-1c4b-4281-b951-d872f2087c98
* Support the new popup and new window dispositions in the external tab ↵ananta@chromium.org2009-04-081-0/+8
| | | | | | | | | | | | | | | | container. Disabled the TRACK_HWND_DESTRUCTION macro in render_widget_host_view_win.cc as it fires consistently for the external tab container probably due to multiple WM_DESTROY messages received for the container, when the parent window is destroyed. Fixes bug http://b/issue?id=1747547 Bug=1747547 Review URL: http://codereview.chromium.org/63074 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@13326 0039d316-1c4b-4281-b951-d872f2087c98
* Make the RenderViewHostFactory a global. This prevents us from having to passbrettw@chromium.org2009-04-071-12/+3
| | | | | | | | | a factory pointer around all the time. Removing TestTabContents will require making the Browser object keep track of the Factory pointer as well, so I think the global is the best approach and cleans some things up. Review URL: http://codereview.chromium.org/62044 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@13255 0039d316-1c4b-4281-b951-d872f2087c98
* Remove some uses of custom tab contents types from some tests.brettw@chromium.org2009-04-041-1/+2
| | | | | | | | | | | | | | | This required redoing the tests that used it to use the new RenderViewHost test harness. This is mostly straightforward, but required more work for the NavigationController tests. I removed a few random places that were testing for the tab types. I also made different versions of a few functions that don't take tab contents types next to the existing ones that do, so my touched code won't have to be changed again when I remove the tab contents types. Review URL: http://codereview.chromium.org/62039 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@13132 0039d316-1c4b-4281-b951-d872f2087c98
* Only create one downloads tab per window. If there is already a Downloadsestade@chromium.org2009-04-021-0/+1
| | | | | | | | | | tab, then switch to it instead of creating new one. Introduce FOCUS_SINGLETON_TAB disposition. patch by Mohamed Mansour <http://codereview.chromium.org/50003/show> Review URL: http://codereview.chromium.org/60062 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@13045 0039d316-1c4b-4281-b951-d872f2087c98
* Move widget related files into views/widgetben@chromium.org2009-03-171-1/+1
| | | | | | | TBR=sky git-svn-id: svn://svn.chromium.org/chrome/trunk/src@11811 0039d316-1c4b-4281-b951-d872f2087c98
* Make Widget return a gfx::NativeView instead of a HWND.ben@chromium.org2009-03-121-2/+2
| | | | | | Review URL: http://codereview.chromium.org/43124 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@11562 0039d316-1c4b-4281-b951-d872f2087c98
* Changing ForwardMessageToExternalHost to postMessage and passing a propertommi@chromium.org2009-03-091-2/+4
| | | | | | | | | | | | | | | MessageEvent object to the onmessage handler. Also adding support for origin and target parameters. The origin parameter is implicit but target can be specified when calling postMessage. If no target is specified we default to "*". At the moment I'm only allowing target == "*" messages to pass through since I haven't implemented support for matching more complicated patterns :) Review URL: http://codereview.chromium.org/40128 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@11275 0039d316-1c4b-4281-b951-d872f2087c98
* Add url to AutomationMsg_DidNavigate amit@chromium.org2009-03-061-1/+2
| | | | | | | | | | Automation clients can now find out the url navigated to instead of just index in the history. Review URL: http://codereview.chromium.org/39205 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@11159 0039d316-1c4b-4281-b951-d872f2087c98
* NO CODE CHANGE.maruel@google.com2009-03-051-1/+2
| | | | | | | Split the lines >80 cols. (Part 1) Review URL: http://codereview.chromium.org/39206 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@11032 0039d316-1c4b-4281-b951-d872f2087c98
* Fixes CRLF and trailing white spaces.maruel@chromium.org2009-03-051-1/+1
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@10982 0039d316-1c4b-4281-b951-d872f2087c98
* Fix a crash in chrome.exe caused by the external tab container instance ↵ananta@chromium.org2009-03-051-6/+13
| | | | | | | | | | | | | | getting destroyed without going through the proper window shutdown sequence when the external host crashes. The fix is to ensure that we clean up correctly when the external tab instance goes away. Will add a unit test in a subsequent CB. Bug=1688967 Review URL: http://codereview.chromium.org/39086 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@10962 0039d316-1c4b-4281-b951-d872f2087c98
* Don't send the receiver function name in the ↵ananta@chromium.org2009-02-251-2/+2
| | | | | | | | | | ExternalHostBindings::ForwardMessageToExternalHost CPP binding exposed for sending messages from Chrome to an external host, Review URL: http://codereview.chromium.org/27125 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@10407 0039d316-1c4b-4281-b951-d872f2087c98
* Removing WS_POPUP before calling SetParent to avoid stealing the focus ↵tommi@chromium.org2009-02-241-5/+12
| | | | | | | | (flicker) during initialization. Review URL: http://codereview.chromium.org/27066 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@10249 0039d316-1c4b-4281-b951-d872f2087c98
* Send over the HTTP status code in the ViewHostMsg_FrameNavigate message ↵ananta@chromium.org2009-02-191-8/+39
| | | | | | | | | | | | | | | | | coming in from the renderer. A failed HTTP navigation like a 404 response to a request is followed by two responses. The first one which is associated with the failed response. This does not send over any information about the failure to the browser and thus appears as a normal navigation.The second response is for the actual 404 page being loaded. For network errors the browser does get notified via RenderView::DidFailProvisionalLoadWithError. However due to a prototype mismatch the corresponding function in WebContents is never invoked. Added a new automation message AutomationMsg_NavigationFailed, which carries information about failed navigations to automation clients.The changes to the navigation controller include sending over the http status code and the URL to observers. The ExternalTabContainer also subscribes to the FAIL_PROVISIONAL_LOAD_WITH_ERROR notification, so it can inform clients about errors. We also ignore the next NAV_ENTRY_COMMITTED notification after an error due to the reasons mentioned above. Review URL: http://codereview.chromium.org/21495 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@10023 0039d316-1c4b-4281-b951-d872f2087c98
* Fixing reverse tabbing.tommi@chromium.org2009-02-131-2/+2
| | | | | | Review URL: http://codereview.chromium.org/21341 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@9744 0039d316-1c4b-4281-b951-d872f2087c98
* Switch from HWNDs to NativeViews, take 2. (First attempt was r9409, in which ↵avi@chromium.org2009-02-101-2/+2
| | | | | | | | I missed a file.) Review URL: http://codereview.chromium.org/20226 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@9507 0039d316-1c4b-4281-b951-d872f2087c98
* Try reverting r9409 to see if it fixes crashes on chromebot.kuchhal@chromium.org2009-02-101-2/+2
| | | | | | | TBR=avi Review URL: http://codereview.chromium.org/21215 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@9481 0039d316-1c4b-4281-b951-d872f2087c98
* Reapplying tab support (change 9388). I synced and re-applied my change and ↵tommi@chromium.org2009-02-101-13/+44
| | | | | | | | | | | | | | found the automation tests not hanging. I also took a look at the logs from the hanging buildbots and the reverted change didn't touch on any of the code that appeared to be hanging. I also put breakpoints on the modified functions while running ui_tests.exe and nothing hit, so it looks like a fluke. I did get a hang though when running an old build of ui_tests.exe with a new version of chrome.dll. Is there any chance that there could have been a stale version on the build bots? Review URL: http://codereview.chromium.org/20214 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@9478 0039d316-1c4b-4281-b951-d872f2087c98
* Switch from HWNDs to NativeViews.avi@chromium.org2009-02-091-2/+2
| | | | | | Review URL: http://codereview.chromium.org/21143 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@9409 0039d316-1c4b-4281-b951-d872f2087c98
* Reverting 9388 to see if this fixes ui tests.kuchhal@chromium.org2009-02-091-44/+13
| | | | | | | TBR=tommi Review URL: http://codereview.chromium.org/20179 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@9392 0039d316-1c4b-4281-b951-d872f2087c98
* Adding support for tab notifications and initializing the focus of an ↵tommi@chromium.org2009-02-091-13/+44
| | | | | | | | automated tab. Review URL: http://codereview.chromium.org/20125 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@9388 0039d316-1c4b-4281-b951-d872f2087c98