| Index: chrome/browser/ui/views/conflicting_module_view_win.cc
|
| diff --git a/chrome/browser/ui/views/conflicting_module_view_win.cc b/chrome/browser/ui/views/conflicting_module_view_win.cc
|
| index 635a076dbaf8e60817f2395c399da601db17d6cf..452e300717495aaa425b1cd42b7ca3af3026be7a 100644
|
| --- a/chrome/browser/ui/views/conflicting_module_view_win.cc
|
| +++ b/chrome/browser/ui/views/conflicting_module_view_win.cc
|
| @@ -50,8 +50,8 @@ ConflictingModuleView::ConflictingModuleView(views::View* anchor_view,
|
| set_anchor_view_insets(gfx::Insets(
|
| GetLayoutConstant(LOCATION_BAR_BUBBLE_ANCHOR_VERTICAL_INSET), 0));
|
|
|
| - registrar_.Add(this, chrome::NOTIFICATION_MODULE_INCOMPATIBILITY_ICON_CHANGE,
|
| - content::NotificationService::AllSources());
|
| + // Register for notifications about conflicting modules.
|
| + EnumerateModulesModel::GetInstance()->AddObserver(this);
|
| }
|
|
|
| // static
|
| @@ -62,7 +62,7 @@ void ConflictingModuleView::MaybeShow(Browser* browser,
|
| return; // Only show the bubble once per launch.
|
|
|
| EnumerateModulesModel* model = EnumerateModulesModel::GetInstance();
|
| - GURL url = model->GetFirstNotableConflict();
|
| + GURL url = model->GetConflictUrl();
|
| if (!url.is_valid()) {
|
| done_checking = true;
|
| return;
|
| @@ -96,6 +96,7 @@ void ConflictingModuleView::MaybeShow(Browser* browser,
|
| // ConflictingModuleView - private.
|
|
|
| ConflictingModuleView::~ConflictingModuleView() {
|
| + EnumerateModulesModel::GetInstance()->RemoveObserver(this);
|
| }
|
|
|
| void ConflictingModuleView::ShowBubble() {
|
| @@ -162,11 +163,7 @@ void ConflictingModuleView::GetAccessibleState(
|
| state->role = ui::AX_ROLE_ALERT_DIALOG;
|
| }
|
|
|
| -void ConflictingModuleView::Observe(
|
| - int type,
|
| - const content::NotificationSource& source,
|
| - const content::NotificationDetails& details) {
|
| - DCHECK_EQ(chrome::NOTIFICATION_MODULE_INCOMPATIBILITY_ICON_CHANGE, type);
|
| +void ConflictingModuleView::OnConflictsAcknowledged() {
|
| EnumerateModulesModel* model = EnumerateModulesModel::GetInstance();
|
| if (!model->ShouldShowConflictWarning())
|
| GetWidget()->Close();
|
|
|