Chromium Code Reviews| Index: ui/message_center/views/message_center_view.cc |
| diff --git a/ui/message_center/views/message_center_view.cc b/ui/message_center/views/message_center_view.cc |
| index dc6d527d59e5a5b650d3ccc93f3becc2c12b0d97..98f2bf457f7e27538bf9dcb039702cf6d2f54e92 100644 |
| --- a/ui/message_center/views/message_center_view.cc |
| +++ b/ui/message_center/views/message_center_view.cc |
| @@ -255,20 +255,24 @@ void MessageCenterView::SetSettingsVisible(bool visible) { |
| button_bar_->SetBackArrowVisible(visible); |
| } |
| -void MessageCenterView::ClearAllNotifications() { |
| +void MessageCenterView::ClearAllClosableNotifications() { |
| if (is_closing_) |
| return; |
| SetViewHierarchyEnabled(scroller_, false); |
| button_bar_->SetAllButtonsEnabled(false); |
| - message_list_view_->ClearAllNotifications(scroller_->GetVisibleRect()); |
| + message_list_view_->ClearAllClosableNotifications( |
| + scroller_->GetVisibleRect()); |
| } |
| void MessageCenterView::OnAllNotificationsCleared() { |
| SetViewHierarchyEnabled(scroller_, true); |
| button_bar_->SetAllButtonsEnabled(true); |
| button_bar_->SetCloseAllButtonEnabled(false); |
| - message_center_->RemoveAllVisibleNotifications(true); // Action by user. |
| + |
| + // Action by user. |
| + message_center_->RemoveAllNotifications( |
| + true /* by_ser */, message_center::MessageCenter::RemoveType::CLOSABLE); |
|
dewittj
2016/02/08 18:02:34
nit: by_user
yoshiki
2016/02/09 23:42:25
Done.
|
| } |
| size_t MessageCenterView::NumMessageViewsForTest() const { |
| @@ -588,7 +592,14 @@ void MessageCenterView::NotificationsChanged() { |
| scroller_->contents()->AddChildView( |
| no_message_views ? empty_list_view_.get() : message_list_view_.get()); |
| - button_bar_->SetCloseAllButtonEnabled(!no_message_views); |
| + bool no_closable_views = true; |
| + for (const auto& view : notification_views_) { |
| + if (view.second->IsClosable()) { |
| + no_closable_views = false; |
| + break; |
| + } |
| + } |
| + button_bar_->SetCloseAllButtonEnabled(!no_closable_views); |
| scroller_->SetFocusable(!no_message_views); |
| if (focus_manager && focused_view) |