summaryrefslogtreecommitdiffstats
path: root/chrome/browser/external_tab_container.h
Commit message (Collapse)AuthorAgeFilesLines
* ExternalTabContainer should subclass WidgetWin rather than Widget and ATL ↵ben@chromium.org2009-05-271-93/+39
| | | | | | | | | | | | 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/+8
| | | | | | | | | | | | | | | | 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-2/+2
| | | | | | | | | | | 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
* This is the first pass at themes.glen@chromium.org2009-05-091-0/+1
| | | | | | | | | | | | This CL is paired with http://codereview.chromium.org/67284 This CL (for commit purposes) includes http://codereview.chromium.org/67284 BUG=4463,11232,11233,11234,11235 Review URL: http://codereview.chromium.org/99030 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15704 0039d316-1c4b-4281-b951-d872f2087c98
* Pass external tab handle when Chrome sends outgoing notifications through ↵stoyan@chromium.org2009-05-081-0/+6
| | | | | | | | 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-3/+3
| | | | 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/+2
| | | | | | | | 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-3/+3
| | | | | | 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-2/+2
| | | | | | Review URL: http://codereview.chromium.org/99293 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15142 0039d316-1c4b-4281-b951-d872f2087c98
* Two changes:sky@chromium.org2009-04-291-1/+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-0/+5
| | | | | | | | | | | 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-2/+2
| | | | | | | | | | 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
* Remove TabContnetsType from everywhere.brettw@chromium.org2009-04-151-1/+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-3/+3
| | | | | | | | | | | | 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
* Make the RenderViewHostFactory a global. This prevents us from having to passbrettw@chromium.org2009-04-071-4/+5
| | | | | | | | | 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
* Move focus related files into a new chrome/views/focus subdirben@chromium.org2009-03-171-1/+1
| | | | | | | | TBR=sky Review URL: http://codereview.chromium.org/48056 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@11837 0039d316-1c4b-4281-b951-d872f2087c98
* Move widget related files into views/widgetben@chromium.org2009-03-171-2/+2
| | | | | | | 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-1/+1
| | | | | | 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-1/+3
| | | | | | | | | | | | | | | 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
* Fix a crash in chrome.exe caused by the external tab container instance ↵ananta@chromium.org2009-03-051-1/+5
| | | | | | | | | | | | | | 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/+1
| | | | | | | | | | 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
* Send over the HTTP status code in the ViewHostMsg_FrameNavigate message ↵ananta@chromium.org2009-02-191-4/+13
| | | | | | | | | | | | | | | | | 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
* Maintain a refcounted AutomationProvider pointer in the ↵ananta@chromium.org2009-02-111-1/+1
| | | | | | | | | | | | | | | | | | ExternalTabContainer. This ensures that we don't crash the browser while trying to dereference a freed AutomationProvider pointer. When a Chrome browser instance starts up, we attempt to locate an already running instance and defer to it to complete the navigation request. However it is quite possible for the running instance to exit while we attempt to send a WM_COPYDATA message to it. This caused a bunch of ASSERTS to fire off in the browser. Fixes as below:- 1. If GetWindowThreadProcessId fails, we bail out and try to launch a new chrome instance 2. If SendMessageTimeout fails, we check if the window is still valid. If not we bail out and try to launch a new chrome instance. 3. We return an error from the WM_COPYDATA handler if the chrome instance is in the process of shutting down. We handle this at the caller end, i.e. in NotifyOtherProcess. Bug=1643310 Review URL: http://codereview.chromium.org/23016 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@9536 0039d316-1c4b-4281-b951-d872f2087c98
* Reapplying tab support (change 9388). I synced and re-applied my change and ↵tommi@chromium.org2009-02-101-0/+5
| | | | | | | | | | | | | | 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
* Reverting 9388 to see if this fixes ui tests.kuchhal@chromium.org2009-02-091-7/+1
| | | | | | | 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-1/+7
| | | | | | | | 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
* Remove most header file dependencies on the notification type list. It isbrettw@chromium.org2009-02-011-1/+1
| | | | | | | | | | | 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
* Better control over window creation of external tabsjoshia@google.com2009-01-281-1/+3
| | | | | | | | | | | Improving automation interface to offer better control over window creation of external tabs. The changes allow us to specify a parent window, initial size and window style. Review URL: http://codereview.chromium.org/19048 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8828 0039d316-1c4b-4281-b951-d872f2087c98
* Move a bunch of TabContents related files into a tab_contents subdirben@chromium.org2009-01-151-1/+1
| | | | | | Review URL: http://codereview.chromium.org/18250 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8058 0039d316-1c4b-4281-b951-d872f2087c98
* On exit do not terminate renderers hosted in external tabsjoshia@google.com2009-01-121-1/+1
| | | | | | | | | | | | | | | When a browser window is closed, we just terminate all existing renderers for fast shutdown. If we have any renderers hosted externally using automation they are also killed during this process. The fix is to prevent fast termination if any of the tabs are hosted by automation. Review URL: http://codereview.chromium.org/17453 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@7901 0039d316-1c4b-4281-b951-d872f2087c98
* Replace some CRects with gfx::Rectagl@chromium.org2008-12-171-1/+1
| | | | | | | Review URL: http://codereview.chromium.org/14173 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@7126 0039d316-1c4b-4281-b951-d872f2087c98
* Rename Container->Widgetben@chromium.org2008-11-211-3/+3
| | | | | | | | | R=erg review url = http://codereview.chromium.org/11348/show git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5849 0039d316-1c4b-4281-b951-d872f2087c98
* This is r4523, with a few changes to make things work under Vista.erg@google.com2008-11-051-5/+0
| | | | | | | | | | | | | - Explicitly set_delegate(NULL) before releasing a TabContents. (I think the order messages are getting handled is different from XP; this only seems neccessary under Vista.) - r4523 and someone elses change added entries to theme_resources.rc at roughly the same time, causing happy fun crashes. - Roll in sgk's SConscript fix. Review URL: http://codereview.chromium.org/9373 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@4799 0039d316-1c4b-4281-b951-d872f2087c98
* Revert change r4523 because Vista doesn't like it.erg@google.com2008-11-041-0/+5
| | | | | | | TBR=nsylvain git-svn-id: svn://svn.chromium.org/chrome/trunk/src@4539 0039d316-1c4b-4281-b951-d872f2087c98
* Redo how we block popups. Rip out the old constrained popup window cruft ↵erg@google.com2008-11-041-5/+0
| | | | | | | | (while leaving the HTTP authentication dialog support) and add a new type of constrained window which owns all blocked popups. Rip out dead unit tests. Review URL: http://codereview.chromium.org/8782 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@4523 0039d316-1c4b-4281-b951-d872f2087c98
* Plumb the referrer throughout the OpenURL APIs.ericroman@google.com2008-10-271-0/+1
| | | | | | | | | | | | | http://code.google.com/p/chromium/issues/detail?id=3224 Caveats: * Did not update TabNavigation yet. Hence session restore will continue to load the tabs with empty referrer. * Did not plumb referrer into incognito url open. (Not sure what the right thing to do is here with respect to privacy vs compatibility.) * Did not plumb referrer throughout the automation controller. No functional impact here, but it makes the code inconsistent with the non-automation version. Review URL: http://codereview.chromium.org/8186 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@4036 0039d316-1c4b-4281-b951-d872f2087c98
* Convert SchedulePaint and a few other methods to use gfx types.ben@chromium.org2008-10-171-1/+1
| | | | | | | http://crbug.com/2186 Review URL: http://codereview.chromium.org/7468 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3550 0039d316-1c4b-4281-b951-d872f2087c98
* Rename ChromeViews namespace to viewsben@chromium.org2008-10-161-7/+7
| | | | | | http://crbug.com/2188 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3495 0039d316-1c4b-4281-b951-d872f2087c98
* Rename ViewContainer to Container and HWNDViewContainer to ContainerWin.ben@chromium.org2008-10-161-4/+4
| | | | | | | http://crbug.com/3430 Review URL: http://codereview.chromium.org/7376 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3441 0039d316-1c4b-4281-b951-d872f2087c98
* Remove DidNavigate from the tab contents delegate and all the related plumbing.brettw@google.com2008-09-241-2/+4
| | | | | | | | | | | I added additional information to the regular load commit notification so all interested parties can listen for that instead. I removed the old navigation type enum, and replaced it with the enum from the NavigationController, so it's now public. Review URL: http://codereview.chromium.org/3112 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@2573 0039d316-1c4b-4281-b951-d872f2087c98
* Revert the change that fixed the encoding when viewing source in subframes.brettw@google.com2008-09-121-2/+1
| | | | | | | | | This makes view source for some pages (for example Google Reader) not work properly. I speculate that telling WebKit to change the encoding (which causes a reload) right after starting the real load makes it confused. Review URL: http://codereview.chromium.org/3022 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@2143 0039d316-1c4b-4281-b951-d872f2087c98
* Use a more compact license header in source files.license.bot2008-08-241-28/+4
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1287 0039d316-1c4b-4281-b951-d872f2087c98
* Code review changes. Incorporated all the suggestions from previous review. joshia@google.com2008-08-211-2/+2
| | | | | | | | | | | | | One item not changed yet is to rename 'receiver' in ForwardMessageToExternalHost. The idea is to invoke receiver("message") at the other end. So for example if the args to ForwardMessageToExternalHost("hello", "world") then we will invoke a script hello("world") on the other side. 'receiver' doesn't really describe the first argument here so if there is a better suggestion, I would be happy to change it :) git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1176 0039d316-1c4b-4281-b951-d872f2087c98
* As Brett pointed it out, We normally use 8-bit for encoding names since ↵jnd@google.com2008-08-211-1/+1
| | | | | | they're always ASCII. Plus, wstrings will also be 32-bit characters on Linux and Mac, which is expensive. So I make this CL by using std::string instead of std::wstring every time you have an encoding name. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1144 0039d316-1c4b-4281-b951-d872f2087c98
* The CL is consist of CLs(1624,1580) for bug:1281734 which are reviewed and ↵jnd@google.com2008-08-181-1/+2
| | | | | | | | | LG by brett. I just merge them to single one for passing compilation. The CL is to fix bug http://b/issue?id=1281734. FireFox uses encoding used by the original webpage to decode the source of the webpage, Chrome does not. We need to add a new parameter which carries the override encoding when opening a view-source URL for viewing its source. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@997 0039d316-1c4b-4281-b951-d872f2087c98
* Add missing files from the previous changejoshia@google.com2008-08-151-0/+3
| | | | | | | TBR=iyengar git-svn-id: svn://svn.chromium.org/chrome/trunk/src@959 0039d316-1c4b-4281-b951-d872f2087c98
* Large patch set (159 files total) to cleanup the includes.maruel@google.com2008-08-151-3/+5
| | | | | | | | | | - Slightly reduce the size of the generated .lib files ~3%. - Reduce the number of implicit and explicit atl and windows includes. hooray! - Help incremental build by reducing the number of unnecessary included files. - Split some template class in two, one base class for the common code and the specialization that inherits from the base class. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@937 0039d316-1c4b-4281-b951-d872f2087c98
* Add chrome to the repository.initial.commit2008-07-261-0/+166
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15 0039d316-1c4b-4281-b951-d872f2087c98