Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(208)

Unified Diff: ui/message_center/views/message_center_view.cc

Issue 1645843003: Implement Non-Closable Notification (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Remove unnecessary property. Created 4 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
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..a95de2b48e1a794edc261ed1b40f6409cca80c0f 100644
--- a/ui/message_center/views/message_center_view.cc
+++ b/ui/message_center/views/message_center_view.cc
@@ -255,20 +255,25 @@ 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_user */,
+ message_center::MessageCenter::RemoveType::NON_PINNED);
}
size_t MessageCenterView::NumMessageViewsForTest() const {
@@ -588,7 +593,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->IsPinned()) {
+ no_closable_views = false;
+ break;
+ }
+ }
+ button_bar_->SetCloseAllButtonEnabled(!no_closable_views);
scroller_->SetFocusable(!no_message_views);
if (focus_manager && focused_view)
« no previous file with comments | « ui/message_center/views/message_center_view.h ('k') | ui/message_center/views/message_center_view_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698