| Index: chrome/browser/ui/browser.cc
|
| diff --git a/chrome/browser/ui/browser.cc b/chrome/browser/ui/browser.cc
|
| index 8a3841f1ac093b412b937fbcd1b449b73fb6a6d3..1e36475c350b28db8a1a8743fd5d8737fc30418f 100644
|
| --- a/chrome/browser/ui/browser.cc
|
| +++ b/chrome/browser/ui/browser.cc
|
| @@ -374,6 +374,8 @@ Browser::Browser(const CreateParams& params)
|
| new chrome::search::SearchDelegate(search_model_.get(),
|
| toolbar_model_.get()));
|
|
|
| + registrar_.Add(this, content::NOTIFICATION_SSL_VISIBLE_STATE_CHANGED,
|
| + content::NotificationService::AllSources());
|
| registrar_.Add(this, chrome::NOTIFICATION_EXTENSION_LOADED,
|
| content::Source<Profile>(profile_->GetOriginalProfile()));
|
| registrar_.Add(this, chrome::NOTIFICATION_EXTENSION_UNLOADED,
|
| @@ -752,14 +754,6 @@ void Browser::WindowFullscreenStateChanged() {
|
| UpdateBookmarkBarState(BOOKMARK_BAR_STATE_CHANGE_TOGGLE_FULLSCREEN);
|
| }
|
|
|
| -void Browser::VisibleSSLStateChanged(content::WebContents* web_contents) {
|
| - // When the current tab's SSL state changes, we need to update the URL
|
| - // bar to reflect the new state.
|
| - DCHECK(web_contents);
|
| - if (tab_strip_model_->GetActiveWebContents() == web_contents)
|
| - UpdateToolbar(false);
|
| -}
|
| -
|
| ///////////////////////////////////////////////////////////////////////////////
|
| // Browser, Assorted browser commands:
|
|
|
| @@ -1762,6 +1756,19 @@ void Browser::Observe(int type,
|
| const content::NotificationSource& source,
|
| const content::NotificationDetails& details) {
|
| switch (type) {
|
| + case content::NOTIFICATION_SSL_VISIBLE_STATE_CHANGED:
|
| + // When the current tab's SSL state changes, we need to update the URL
|
| + // bar to reflect the new state. Note that it's possible for the selected
|
| + // tab contents to be NULL. This is because we listen for all sources
|
| + // (NavigationControllers) for convenience, so the notification could
|
| + // actually be for a different window while we're doing asynchronous
|
| + // closing of this one.
|
| + if (tab_strip_model_->GetActiveWebContents() &&
|
| + &tab_strip_model_->GetActiveWebContents()->GetController() ==
|
| + content::Source<NavigationController>(source).ptr())
|
| + UpdateToolbar(false);
|
| + break;
|
| +
|
| case chrome::NOTIFICATION_EXTENSION_UNLOADED: {
|
| if (window()->GetLocationBar())
|
| window()->GetLocationBar()->UpdatePageActions();
|
|
|