| 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 33271fd508e249fe5d8575bf482f492ed7a0b450..2afe6b6ec87e9aeac7c944053171bb0965853a93 100644
|
| --- a/chrome/browser/ui/views/conflicting_module_view_win.cc
|
| +++ b/chrome/browser/ui/views/conflicting_module_view_win.cc
|
| @@ -9,7 +9,6 @@
|
| #include "chrome/browser/profiles/profile.h"
|
| #include "chrome/browser/ui/browser.h"
|
| #include "chrome/browser/ui/layout_constants.h"
|
| -#include "chrome/browser/win/enumerate_modules_model.h"
|
| #include "chrome/common/pref_names.h"
|
| #include "chrome/grit/chromium_strings.h"
|
| #include "chrome/grit/generated_resources.h"
|
| @@ -44,6 +43,7 @@ ConflictingModuleView::ConflictingModuleView(views::View* anchor_view,
|
| const GURL& help_center_url)
|
| : BubbleDialogDelegateView(anchor_view, views::BubbleBorder::TOP_RIGHT),
|
| browser_(browser),
|
| + observer_(this),
|
| help_center_url_(help_center_url) {
|
| set_close_on_deactivate(false);
|
|
|
| @@ -51,8 +51,7 @@ 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());
|
| + observer_.Add(EnumerateModulesModel::GetInstance());
|
| }
|
|
|
| // static
|
| @@ -62,8 +61,8 @@ void ConflictingModuleView::MaybeShow(Browser* browser,
|
| if (done_checking)
|
| return; // Only show the bubble once per launch.
|
|
|
| - EnumerateModulesModel* model = EnumerateModulesModel::GetInstance();
|
| - GURL url = model->GetFirstNotableConflict();
|
| + auto* model = EnumerateModulesModel::GetInstance();
|
| + GURL url = model->GetConflictUrl();
|
| if (!url.is_valid()) {
|
| done_checking = true;
|
| return;
|
| @@ -163,11 +162,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();
|
|
|