summaryrefslogtreecommitdiffstats
path: root/chrome/browser/infobars/infobar_tab_helper.cc
Commit message (Collapse)AuthorAgeFilesLines
* Fix unsafe infobar usage pattern in ExtensionDevToolsClientHost. Listening ↵pkasting@chromium.org2012-05-041-8/+8
| | | | | | | | | | | | for infobar deletion to determine when it's appropriate to remove an infobar from the InfoBarTabHelper doesn't work correctly in two cases: (1) when the infobar is in the midst of closing (when it's already unowned but not yet deleted) and (2) if it's leaked due to being closed while in a background tab (will be fixed someday by refactoring changes I'm still waiting to land). Also safely handle the case of AddInfoBar() failing, by plumbing a return code back. BUG=none TEST=none Review URL: https://chromiumcodereview.appspot.com/10264025 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@135383 0039d316-1c4b-4281-b951-d872f2087c98
* A few small tweaks based on further analysis of GoogleURLTracker:pkasting@chromium.org2012-05-031-20/+14
| | | | | | | | | | | | * Go ahead and redo even pending searches. If I have a pending search in tab B and say "yes, retarget my Google URL" in tab A, it's reasonable to retarget tab B instead of letting it proceed with the old URL. * Make the code safe even if AddInfoBar() fails for some reason. We already deleted the infobar and removed it from the GoogleURLTracker's map, but the existing code briefly accessed a member after "this" had been deleted. Simple fix. * While I'm at it, also DCHECK() against adding the same infobar twice in AddInfoBar() itself. This won't happen with the existing code, but I managed to introduce such a problem while doing some other experiments. BUG=110158 TEST=none Review URL: https://chromiumcodereview.appspot.com/10262026 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@135054 0039d316-1c4b-4281-b951-d872f2087c98
* Remove infobar from helper list before notifying observers.jknotten@chromium.org2012-03-311-14/+17
| | | | | | | | | | | | | | | | | | | | In https://chromiumcodereview.appspot.com/9491009/ the GeolocationInfoBarQueueController subscribes to the INFOBAR_REMOVED notification and calls back into the helper to show any pending infobar requests. In order to make this work correctly, it is important to erase the removed InfoBarDelegate from the InfoBarTabHelper's list before notifying the observers. Similarly, we should unregister the tab helper from content::NOTIFICATION_NAV_ENTRY_COMMITTED notifications (if necessary) before sending the notification. BUG=70588 TEST=GeolocationBrowserTest.DISABLED_TabDestroyed Review URL: http://codereview.chromium.org/9921009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@130050 0039d316-1c4b-4281-b951-d872f2087c98
* Get rid of content::NavigationController in cc file and use "using" instead.jam@chromium.org2012-01-041-3/+4
| | | | | | | | BUG=98716 TBR=joi Review URL: http://codereview.chromium.org/8983012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@116328 0039d316-1c4b-4281-b951-d872f2087c98
* Convert WebContents to return a content::NavigationController instead of the ↵jam@chromium.org2012-01-041-1/+1
| | | | | | | | | | implementation. Update all the headers in chrome to use the interface only. In a subsequent cl, I'll rename the implementation to NavigationControllerImpl and also get rid of content::NavigationController everywhere. BUG=98716 TBR=joi Review URL: http://codereview.chromium.org/8983010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@116244 0039d316-1c4b-4281-b951-d872f2087c98
* Convert all the notifications which use NavigationController to ↵jam@chromium.org2012-01-031-3/+4
| | | | | | | | | | content::NavigationController. After this is done, we can then make WebContents return a content::NavigationEntry instead of the impl. BUG=98716 TBR=joi Review URL: http://codereview.chromium.org/9016047 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@116150 0039d316-1c4b-4281-b951-d872f2087c98
* Convert SpeechInputBubble and BalloonHost to use WebContents instead of ↵jam@chromium.org2011-12-271-4/+6
| | | | | | | | | | TabContents, as well as all the dependent code. BUG=98716 TBR=joi Review URL: http://codereview.chromium.org/9016038 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@115810 0039d316-1c4b-4281-b951-d872f2087c98
* Convert a bunch of WebContentsObservers to use web_contents() instead of ↵jam@chromium.org2011-12-251-3/+3
| | | | | | | | | | tab_contents(), as well as all the dependent code. BUG=98716 TBR=joi Review URL: http://codereview.chromium.org/8982008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@115777 0039d316-1c4b-4281-b951-d872f2087c98
* Move TabContentsObserver to content/public, rename it to ↵jam@chromium.org2011-12-221-1/+1
| | | | | | | | | | WebContentsObserver, and put it into the content namespace. BUG=98716 TBR=tburkard Review URL: http://codereview.chromium.org/9026011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@115599 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 115346. The change didn't break anything, the test was faulty. Will ↵jam@chromium.org2011-12-211-4/+7
| | | | | | | | | | | | | | | | | | | | disable in a followup. - Revert r115276, it broke PanelDownloadTest.Download in interactive_ui_tests on win,linux,mac. Original change: Rename TabContents::controller() to GetController and put it into the WebContents namespace. BUG=98716 TBR=dpranke Review URL: http://codereview.chromium.org/8956050 TBR=jam Review URL: http://codereview.chromium.org/9018016 TBR=thakis@chromium.org git-svn-id: svn://svn.chromium.org/chrome/trunk/src@115428 0039d316-1c4b-4281-b951-d872f2087c98
* Revert r115276, it broke PanelDownloadTest.Download in interactive_ui_teststhakis@chromium.org2011-12-211-7/+4
| | | | | | | | | | | | | | | | on win,linux,mac. Original change: Rename TabContents::controller() to GetController and put it into the WebContents namespace. BUG=98716 TBR=dpranke Review URL: http://codereview.chromium.org/8956050 TBR=jam Review URL: http://codereview.chromium.org/9018016 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@115346 0039d316-1c4b-4281-b951-d872f2087c98
* Rename TabContents::controller() to GetController and put it into the ↵jam@chromium.org2011-12-211-4/+7
| | | | | | | | | | WebContents namespace. BUG=98716 TBR=dpranke Review URL: http://codereview.chromium.org/8956050 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@115276 0039d316-1c4b-4281-b951-d872f2087c98
* Move Sad Tab implementation out of the TabContentsViews.avi@chromium.org2011-11-151-1/+1
| | | | | | | | | BUG=103258 TEST=no change in sad tab behavior Review URL: http://codereview.chromium.org/8477042 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@110086 0039d316-1c4b-4281-b951-d872f2087c98
* Make NotificationService an interface in the content namespace, and switch ↵jam@chromium.org2011-10-191-4/+4
| | | | | | | | | callers to use it. Move the implementation to content/browser. Stop creating it in all child processes since it's only used in the browser. BUG=98716 Review URL: http://codereview.chromium.org/8342048 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@106403 0039d316-1c4b-4281-b951-d872f2087c98
* Move NotificationObserver, NotificationSource, and NotificationDetails to ↵jam@chromium.org2011-10-191-13/+14
| | | | | | | | | | | content/public/browser. This patch got way bigger than I wanted, but once I moved NotificationDetails, I figured I might as well mvoe the others since they're in the same files. In hindsight, I should have converted a subset of files at a time by leaving a using statement in the header. BUG=98716 TBR=joi git-svn-id: svn://svn.chromium.org/chrome/trunk/src@106196 0039d316-1c4b-4281-b951-d872f2087c98
* Move infobar handling to a tab helper.avi@chromium.org2011-09-301-14/+13
| | | | | | | | | | | | | | Part 2: - Removed TabContentsWrapper from core infobar classes - Made InfoBarTabHelper the owner of the infobar delegates - Removed all owner references from the delegate subclasses BUG=94741 TEST=no visible change Review URL: http://codereview.chromium.org/7862003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@103463 0039d316-1c4b-4281-b951-d872f2087c98
* Move infobar handling to a tab helper, part 1.avi@chromium.org2011-09-011-0/+199
| | | | | | | | | | | | | | | | | | Revert revert of r99187. This reverts r99198. BUG=94741 TEST=no visible change Review URL: http://codereview.chromium.org/7810002 TBR=avi@chromium.org Review URL: http://codereview.chromium.org/7827017 Review URL: http://codereview.chromium.org/7826014 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@99222 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 99187 (speculative revert for ↵thakis@chromium.org2011-09-011-199/+0
| | | | | | | | | | | | | | | | ProfileSyncServiceSessionTest.FailModelAssociation on 10.5) - Move infobar handling to a tab helper, part 1. BUG=94741 TEST=no visible change Review URL: http://codereview.chromium.org/7810002 TBR=avi@chromium.org Review URL: http://codereview.chromium.org/7827017 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@99198 0039d316-1c4b-4281-b951-d872f2087c98
* Move infobar handling to a tab helper, part 1.avi@chromium.org2011-09-011-0/+199
BUG=94741 TEST=no visible change Review URL: http://codereview.chromium.org/7810002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@99187 0039d316-1c4b-4281-b951-d872f2087c98