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

Side by Side Diff: ui/message_center/message_center_impl.cc

Issue 1986493002: Show message center on lock screen (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 7 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 unified diff | Download patch
OLDNEW
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "ui/message_center/message_center_impl.h" 5 #include "ui/message_center/message_center_impl.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 #include <deque> 8 #include <deque>
9 #include <utility> 9 #include <utility>
10 10
(...skipping 423 matching lines...) Expand 10 before | Expand all | Expand 10 after
434 434
435 void MessageCenterImpl::NotifierEnabledChanged( 435 void MessageCenterImpl::NotifierEnabledChanged(
436 const NotifierId& notifier_id, bool enabled) { 436 const NotifierId& notifier_id, bool enabled) {
437 if (!enabled) { 437 if (!enabled) {
438 RemoveNotificationsForNotifierId(notifier_id); 438 RemoveNotificationsForNotifierId(notifier_id);
439 } 439 }
440 } 440 }
441 441
442 void MessageCenterImpl::SetVisibility(Visibility visibility) { 442 void MessageCenterImpl::SetVisibility(Visibility visibility) {
443 std::set<std::string> updated_ids; 443 std::set<std::string> updated_ids;
444 notification_list_->SetMessageCenterVisible( 444 bool visible = visibility == VISIBILITY_MESSAGE_CENTER;
445 (visibility == VISIBILITY_MESSAGE_CENTER), &updated_ids);
446 notification_cache_.RecountUnread();
447 445
448 for (const auto& id : updated_ids) { 446 notification_list_->SetMessageCenterVisible(visible);
449 FOR_EACH_OBSERVER( 447 if (visible && !locked_) {
450 MessageCenterObserver, observer_list_, OnNotificationUpdated(id)); 448 notification_list_->SetNotificationsShown(blockers_, &updated_ids);
449 notification_cache_.RecountUnread();
450
451 for (const auto& id : updated_ids) {
452 FOR_EACH_OBSERVER(
453 MessageCenterObserver, observer_list_, OnNotificationUpdated(id));
454 }
451 } 455 }
452 456
453 if (notification_queue_ && 457 if (notification_queue_ &&
454 visibility == VISIBILITY_TRANSIENT) { 458 visibility == VISIBILITY_TRANSIENT) {
455 notification_queue_->ApplyChanges(this); 459 notification_queue_->ApplyChanges(this);
456 } 460 }
457 461
458 FOR_EACH_OBSERVER(MessageCenterObserver, 462 FOR_EACH_OBSERVER(MessageCenterObserver,
459 observer_list_, 463 observer_list_,
460 OnCenterVisibilityChanged(visibility)); 464 OnCenterVisibilityChanged(visibility));
(...skipping 13 matching lines...) Expand all
474 478
475 bool MessageCenterImpl::HasPopupNotifications() const { 479 bool MessageCenterImpl::HasPopupNotifications() const {
476 return !IsMessageCenterVisible() && 480 return !IsMessageCenterVisible() &&
477 notification_list_->HasPopupNotifications(blockers_); 481 notification_list_->HasPopupNotifications(blockers_);
478 } 482 }
479 483
480 bool MessageCenterImpl::IsQuietMode() const { 484 bool MessageCenterImpl::IsQuietMode() const {
481 return notification_list_->quiet_mode(); 485 return notification_list_->quiet_mode();
482 } 486 }
483 487
488 bool MessageCenterImpl::IsLockedState() const {
489 return locked_;
490 }
491
484 bool MessageCenterImpl::HasClickedListener(const std::string& id) { 492 bool MessageCenterImpl::HasClickedListener(const std::string& id) {
485 scoped_refptr<NotificationDelegate> delegate = 493 scoped_refptr<NotificationDelegate> delegate =
486 notification_list_->GetNotificationDelegate(id); 494 notification_list_->GetNotificationDelegate(id);
487 return delegate.get() && delegate->HasClickedListener(); 495 return delegate.get() && delegate->HasClickedListener();
488 } 496 }
489 497
490 message_center::Notification* MessageCenterImpl::FindVisibleNotificationById( 498 message_center::Notification* MessageCenterImpl::FindVisibleNotificationById(
491 const std::string& id) { 499 const std::string& id) {
492 return notification_list_->GetNotificationById(id); 500 return notification_list_->GetNotificationById(id);
493 } 501 }
(...skipping 353 matching lines...) Expand 10 before | Expand all | Expand 10 after
847 void MessageCenterImpl::SetQuietMode(bool in_quiet_mode) { 855 void MessageCenterImpl::SetQuietMode(bool in_quiet_mode) {
848 if (in_quiet_mode != notification_list_->quiet_mode()) { 856 if (in_quiet_mode != notification_list_->quiet_mode()) {
849 notification_list_->SetQuietMode(in_quiet_mode); 857 notification_list_->SetQuietMode(in_quiet_mode);
850 FOR_EACH_OBSERVER(MessageCenterObserver, 858 FOR_EACH_OBSERVER(MessageCenterObserver,
851 observer_list_, 859 observer_list_,
852 OnQuietModeChanged(in_quiet_mode)); 860 OnQuietModeChanged(in_quiet_mode));
853 } 861 }
854 quiet_mode_timer_.reset(); 862 quiet_mode_timer_.reset();
855 } 863 }
856 864
865 void MessageCenterImpl::SetLockedState(bool locked) {
866 if (locked != locked_) {
867 locked_ = locked;
868 FOR_EACH_OBSERVER(MessageCenterObserver, observer_list_,
869 OnLockedStateChanged(locked));
870 }
871 }
872
857 void MessageCenterImpl::EnterQuietModeWithExpire( 873 void MessageCenterImpl::EnterQuietModeWithExpire(
858 const base::TimeDelta& expires_in) { 874 const base::TimeDelta& expires_in) {
859 if (quiet_mode_timer_) { 875 if (quiet_mode_timer_) {
860 // Note that the capital Reset() is the method to restart the timer, not 876 // Note that the capital Reset() is the method to restart the timer, not
861 // scoped_ptr::reset(). 877 // scoped_ptr::reset().
862 quiet_mode_timer_->Reset(); 878 quiet_mode_timer_->Reset();
863 } else { 879 } else {
864 notification_list_->SetQuietMode(true); 880 notification_list_->SetQuietMode(true);
865 FOR_EACH_OBSERVER( 881 FOR_EACH_OBSERVER(
866 MessageCenterObserver, observer_list_, OnQuietModeChanged(true)); 882 MessageCenterObserver, observer_list_, OnQuietModeChanged(true));
(...skipping 22 matching lines...) Expand all
889 } 905 }
890 906
891 void MessageCenterImpl::EnableChangeQueueForTest(bool enable) { 907 void MessageCenterImpl::EnableChangeQueueForTest(bool enable) {
892 if (enable) 908 if (enable)
893 notification_queue_.reset(new internal::ChangeQueue()); 909 notification_queue_.reset(new internal::ChangeQueue());
894 else 910 else
895 notification_queue_.reset(); 911 notification_queue_.reset();
896 } 912 }
897 913
898 } // namespace message_center 914 } // namespace message_center
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698