summaryrefslogtreecommitdiffstats
path: root/chrome/browser/tab_contents.h
Commit message (Collapse)AuthorAgeFilesLines
* Fix window.open()/window.close() regression by disabling window.close() ↵erg@google.com2008-12-011-0/+3
| | | | | | | | | | | until a message comes back from the Browser thread saying that it's OK to allow javascript close calls. ISSUE=http://crbug.com/4007 Review URL: http://codereview.chromium.org/12691 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@6165 0039d316-1c4b-4281-b951-d872f2087c98
* Relanding docus manager crasher work-around.jcampan@chromium.org2008-11-261-0/+8
| | | | | | | TBR=ben Review URL: http://codereview.chromium.org/12685 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@6050 0039d316-1c4b-4281-b951-d872f2087c98
* Reverting my previous commit, it seems to be breaking the UI tests in debug ↵jcampan@chromium.org2008-11-261-8/+0
| | | | | | | | mode. Review URL: http://codereview.chromium.org/12666 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@6020 0039d316-1c4b-4281-b951-d872f2087c98
* Some crashes reported from the field seems to indicate that whenjcampan@chromium.org2008-11-251-0/+8
| | | | | | | | | | | | | | | | | storing/restoring the focused view on a tab, the focus manager or focused view is garbage. I have not been able to repro any of these crashers and was not able to discover much from the mini-dumps. This is a simple work-around that just prevents the storing/restoring of focus when closing a tab, to avoid the cases reported in the crasher. Note this is the equivalent of CL 12622 (which is on the release branck), which was reviewed by Ben. BUG=4633 Review URL: http://codereview.chromium.org/12652 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@6000 0039d316-1c4b-4281-b951-d872f2087c98
* Re-land 5929 (r5882) with crash fix and also this change:ben@chromium.org2008-11-251-2/+2
| | | | | | | | | | | http://codereview.chromium.org/11392/show which fixes the remainder of the UI test issues apparently. http://crbug.com/4620 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5954 0039d316-1c4b-4281-b951-d872f2087c98
* rollbackben@chromium.org2008-11-241-2/+2
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5933 0039d316-1c4b-4281-b951-d872f2087c98
* Re-land r5882 with a crash fix.ben@chromium.org2008-11-241-2/+2
| | | | | | | http://codereview.chromium.org/11559 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5929 0039d316-1c4b-4281-b951-d872f2087c98
* Reverting 5882. It broke LoginPromptTest.TestBasicAuth and .TestTwoAuths.maruel@chromium.org2008-11-241-2/+2
| | | | | | Review URL: http://codereview.chromium.org/11399 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5922 0039d316-1c4b-4281-b951-d872f2087c98
* This change makes the following infobars use the new system:ben@chromium.org2008-11-221-2/+2
| | | | | | | | - save password Review URL: http://codereview.chromium.org/11559 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5882 0039d316-1c4b-4281-b951-d872f2087c98
* Beginnings of a new InfoBar system.ben@chromium.org2008-11-211-1/+31
| | | | | | | | | | This implements AlertInfoBar and InfoBarContainer. It also makes the crashed plugin/js oom infobars use this new system. Design Doc: http://dev.chromium.org/developers/design-documents/info-barshttp://crbug.com/4620 Review URL: http://codereview.chromium.org/11318 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5856 0039d316-1c4b-4281-b951-d872f2087c98
* Re-land this change: http://codereview.chromium.org/10967/showben@chromium.org2008-11-191-2/+1
| | | | | | | | | Now with two improvements: - no longer create WebContentsViews as WS_VISIBLE, to prevent them from showing up in the taskbar - make sure overridden CreateView in NativeUIContents and StatusView have the correct signature. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5723 0039d316-1c4b-4281-b951-d872f2087c98
* Rollback! Now with 25% more HWND.ben@chromium.org2008-11-171-1/+2
| | | | | | :-/ git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5573 0039d316-1c4b-4281-b951-d872f2087c98
* Remove HWND from TabContents creation. ben@chromium.org2008-11-171-2/+1
| | | | | | R=brettw ReviewURL: http://codereview.chromium.org/10967/show git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5554 0039d316-1c4b-4281-b951-d872f2087c98
* Prevent window.close() working from Javascript when a blocked popup ↵erg@google.com2008-11-071-0/+5
| | | | | | | | | notification exists. This is a copy of Firefox's behaviour. BUG=crbug.com/4007 Review URL: http://codereview.chromium.org/9656 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@4934 0039d316-1c4b-4281-b951-d872f2087c98
* This is r4523, with a few changes to make things work under Vista.erg@google.com2008-11-051-20/+11
| | | | | | | | | | | | | - 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-11/+20
| | | | | | | 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-20/+11
| | | | | | | | (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-1/+2
| | | | | | | | | | | | | 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
* Make the character encoding override work again. There are two other bugs ↵jungshik@google.com2008-10-221-7/+0
| | | | | | | | | | with character encoding override, but it seems that it's better to fix them separately. BUG=3315 Review URL: http://codereview.chromium.org/7647 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3759 0039d316-1c4b-4281-b951-d872f2087c98
* Factor find in page out of WebContents and into the view, since it is almostbrettw@google.com2008-10-211-23/+0
| | | | | | | | | | | | | | | all view specific. Rename find in page controller to be "FindBarWin", and find in page view to be "findBarView" (since this is not Windows specific, but "Views" specific). I did lots of simplification and moving around of the find in page API. I coalesced several of the show functions into one master function on the view. I removed some other sizing and window updating code from WebContents and moved it to the view. Review URL: http://codereview.chromium.org/7667 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3654 0039d316-1c4b-4281-b951-d872f2087c98
* Remove throttling code from the Browser process and implement throttling in ↵erg@google.com2008-10-171-0/+3
| | | | | | | | | | | | | the Renderer. The previous way of doing throttling was just calling CloseContents() on a window to reject it. But since the Browser is notified about a window opening asynchronously, by the time the CloseContents() sends a message back to the Renderer, a bunch more windows have been opened, leading to memory exhaustion. Instead, make all RenderViews created from a parent RenderView share a counter and start refusing to create RenderViews if too many RV have been created. Every RenderView (except for the first one) is assumed to be an unrequested popup, until notified by the Browser process by either a ViewMsg_DisassociateFromPopupCount message (this RenderView is a new top level page) or a ViewMsg_DisassociatePopup message (this RenderView is a requested popup and therefore shouldn't count against the count.) BUG=3382, 2632 Review URL: http://codereview.chromium.org/7388 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3568 0039d316-1c4b-4281-b951-d872f2087c98
* Rename ChromeViews namespace to viewsben@chromium.org2008-10-161-3/+6
| | | | | | http://crbug.com/2188 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3495 0039d316-1c4b-4281-b951-d872f2087c98
* Rename various text zoom related stuff to be more generic, since we now canbrettw@google.com2008-10-141-1/+0
| | | | | | | | | | optionally zoom the page. I added an easy way in render_view to toggle between text zoom and full page zoom, and allowed the embedder to specify this in the glue layer. This allows me to fix the text zoom layout test, which specifically asks that the text be zoomed. Review URL: http://codereview.chromium.org/7320 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3377 0039d316-1c4b-4281-b951-d872f2087c98
* Move more view stuff out of WebContents. This moves context menus and infobrettw@google.com2008-10-141-8/+0
| | | | | | | | | | bars. I removed the associated functions on TabContents, and have callers call directly through to the view when the care about mucking with the info bar (which is busted, IMO). Review URL: http://codereview.chromium.org/7245 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3346 0039d316-1c4b-4281-b951-d872f2087c98
* Reorganize the declarations to have some grouping and logical ordering in ↵brettw@google.com2008-09-261-240/+261
| | | | | | | | | tab contents and web contents. Reorder the derived classes overrides to match, and reorder the definitions of the functions to match the order in the header file. This doesn't actually change any code. I removed a few functions that were declared but never implemented (!) as well as some that were marked vitual but were never overridden. I renamed some things to make them more consistent. Review URL: http://codereview.chromium.org/5005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@2634 0039d316-1c4b-4281-b951-d872f2087c98
* Remove DidNavigate from the tab contents delegate and all the related plumbing.brettw@google.com2008-09-241-5/+0
| | | | | | | | | | | 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
* This is almost a complete rewrite of DidNavigate and the associated ↵brettw@google.com2008-09-141-12/+10
| | | | | | | | | | NavigationController logic. The approach is that the NavigationController should be responsible for the logic and memory management of navigation. Previously, half the logic and memory management lived in WebContents which made it very hard to figure out what was going on. I split out the various navigation types into separate functions, which then copy and update any existing NavigationEntry as necessary. Previously, WebContents would make a new one which would be manually populated with random fields (I think some were forgotten, too), and then the NavigationController may or may not commit it. Review URL: http://codereview.chromium.org/479 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@2201 0039d316-1c4b-4281-b951-d872f2087c98
* Revert the change that fixed the encoding when viewing source in subframes.brettw@google.com2008-09-121-10/+4
| | | | | | | | | 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
* First pass at splitting the AutocompleteEdit into Model and View. This was ↵pkasting@chromium.org2008-09-101-3/+3
| | | | | | | | | noticeably harder than with the Popup and I'm not at all sure I've made the right decisions :(. The View code is about 3x larger than the model. BUG=1343512 Review URL: http://codereview.chromium.org/1872 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@2004 0039d316-1c4b-4281-b951-d872f2087c98
* Fix SSL state in the URL bar being incorrect. Going to an EV site like ↵brettw@google.com2008-09-071-2/+1
| | | | | | | | | | | | | https://www.verisign.com/ would not should the EV name in the URL bar unless you did something like switch tabs away and back because in my cleanup I removed the notification that this was depending on. This patch adds a new NOTIFY_SSL_STATE_CHANGED notification which is broadcast by the various SSL components when they update the flags. The browser now listens for this notification and will update the URL bar. BUG=1359547 TEST=see repro steps in bug Review URL: http://codereview.chromium.org/436 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1831 0039d316-1c4b-4281-b951-d872f2087c98
* Make a step on refactoring navigation. The eventual plan is to have the ↵brettw@google.com2008-08-281-2/+5
| | | | | | | | | | | | | NavigationController create and commit the new NavigationEntries (currently WebContents does a bunch of the details of this which is hard to understand and not easily testable). This tries to consolidate the logic that I want to move to the NavigationController without actually moving it there yet. I removed all of the "PreCommit" functions in WebContents, since when the NavigationController does all of the committing, there won't be a phase where the NavigationEntry exists but isn't committed. Most of the logic could be moved to the PostCommit functions without any problem, which is an indication that the current design was busted anyway. I had to precompute some data and pass it to the *PostCommit function to work around some of the components that required old data. I had to change InfoBars around since it relied on having both the committed and uncommitted entries, but I think the new design is much better anyway. BUG=1343593,1343146 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1506 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
* As Brett pointed it out, We normally use 8-bit for encoding names since ↵jnd@google.com2008-08-211-5/+5
| | | | | | 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-0/+6
| | | | | | | | | 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
* Make the FindInPageController implement its own delegate interface forbrettw@google.com2008-08-141-4/+0
| | | | | | | | | | | | | RenderViewHost so that we can get rid of the pass-throughs in WebContents. I removed some redundant checks in WebContents when calling view() for render_view_host() since that internally checks the null-ness of render_view_host(). BUG=1323267 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@881 0039d316-1c4b-4281-b951-d872f2087c98
* Move RenderViewHost management out of WebContents into a newbrettw@google.com2008-08-121-0/+3
| | | | | | | | | | | | | | RenderViewHostManager object. The goal for this patch is to change no logic or APIs, just move the code. So there are some not very clean callback functions and no new unit tests for this file (although is is still covered by the same WebContents unit tests). This should make the actual cleanup in a later pass much easier to follow. I changed the ordering of only a few operations (like WebContents shutdown), and checked that this shouldn't matter. I had to change the "source" for several notifications since they are no longer sent from the WebContents. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@716 0039d316-1c4b-4281-b951-d872f2087c98
* Add chrome to the repository.initial.commit2008-07-261-0/+564
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15 0039d316-1c4b-4281-b951-d872f2087c98