From fb7e7cf34cf0a67207acc8a68a502b9ab8bef5e3 Mon Sep 17 00:00:00 2001 From: Scott Nonnenberg Date: Tue, 6 Jun 2017 15:16:45 -0700 Subject: [PATCH] TimerView: don't continue to update after expiration FREEBIE --- js/models/messages.js | 3 +++ js/views/message_view.js | 3 +++ 2 files changed, 6 insertions(+) diff --git a/js/models/messages.js b/js/models/messages.js index 7d2bcfde4..9829ebf13 100644 --- a/js/models/messages.js +++ b/js/models/messages.js @@ -508,6 +508,9 @@ isExpiring: function() { return this.get('expireTimer') && this.get('expirationStartTimestamp'); }, + isExpired: function() { + return this.msTilExpire() <= 0; + }, msTilExpire: function() { if (!this.isExpiring()) { return Infinity; diff --git a/js/views/message_view.js b/js/views/message_view.js index d01cfe0e0..3b446547c 100644 --- a/js/views/message_view.js +++ b/js/views/message_view.js @@ -36,6 +36,9 @@ clearTimeout(this.timeout); this.timeout = null; } + if (this.model.isExpired()) { + return this; + } if (this.model.isExpiring()) { this.render(); var totalTime = this.model.get('expireTimer') * 1000;