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

Unified Diff: ui/message_center/popup_timer.cc

Issue 2315513002: Reset popup dismissal timers when replacing a notification. (Closed)
Patch Set: Reset popup dismissal timers when replacing a notification. Created 4 years, 3 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
« no previous file with comments | « ui/message_center/popup_timer.h ('k') | ui/message_center/popup_timers_controller.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: ui/message_center/popup_timer.cc
diff --git a/ui/message_center/popup_timer.cc b/ui/message_center/popup_timer.cc
index c79377df32a87c23c20a8504acdacdc996cc9390..66e9b20c34ac8e3ab05f650ae7d50cb9871bf703 100644
--- a/ui/message_center/popup_timer.cc
+++ b/ui/message_center/popup_timer.cc
@@ -12,12 +12,11 @@ PopupTimer::PopupTimer(const std::string& id,
: id_(id),
timeout_(timeout),
timer_delegate_(delegate),
- timer_(new base::OneShotTimer) {}
+ timer_(new base::OneShotTimer) {
+ DCHECK(timer_delegate_);
+}
PopupTimer::~PopupTimer() {
- if (!timer_)
- return;
-
if (timer_->IsRunning())
timer_->Stop();
}
@@ -25,28 +24,22 @@ PopupTimer::~PopupTimer() {
void PopupTimer::Start() {
if (timer_->IsRunning())
return;
+
base::TimeDelta timeout_to_close =
timeout_ <= passed_ ? base::TimeDelta() : timeout_ - passed_;
start_time_ = base::Time::Now();
- DCHECK(timer_delegate_);
timer_->Start(
FROM_HERE, timeout_to_close,
base::Bind(&Delegate::TimerFinished, timer_delegate_, id_));
}
void PopupTimer::Pause() {
- if (!timer_ || !timer_->IsRunning())
+ if (!timer_->IsRunning())
return;
timer_->Stop();
passed_ += base::Time::Now() - start_time_;
}
-void PopupTimer::Reset() {
- if (timer_)
- timer_->Stop();
- passed_ = base::TimeDelta();
-}
-
} // namespace message_center
« no previous file with comments | « ui/message_center/popup_timer.h ('k') | ui/message_center/popup_timers_controller.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698