diff options
author | Joram Wilander <jwawilander@gmail.com> | 2015-12-28 09:02:20 -0500 |
---|---|---|
committer | Joram Wilander <jwawilander@gmail.com> | 2015-12-28 09:02:20 -0500 |
commit | 2f04ea6dd292e2b11e1fc4149ae1ea759d31bea5 (patch) | |
tree | 37dbea76dbe274d417b14226e7527a1c610d20d6 /web/react/utils/delayed_action.jsx | |
parent | 0b55c5f86186ee5cce9cf29f3f560b2dd5b15277 (diff) | |
parent | cf0052556500dcb76b32e570a7806634cfe955da (diff) | |
download | chat-2f04ea6dd292e2b11e1fc4149ae1ea759d31bea5.tar.gz chat-2f04ea6dd292e2b11e1fc4149ae1ea759d31bea5.tar.bz2 chat-2f04ea6dd292e2b11e1fc4149ae1ea759d31bea5.zip |
Merge pull request #1740 from hmhealey/plt730
PLT-730/PLT-731 Added remaining mobile UI V2 components
Diffstat (limited to 'web/react/utils/delayed_action.jsx')
-rw-r--r-- | web/react/utils/delayed_action.jsx | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/web/react/utils/delayed_action.jsx b/web/react/utils/delayed_action.jsx new file mode 100644 index 000000000..4f6239ad0 --- /dev/null +++ b/web/react/utils/delayed_action.jsx @@ -0,0 +1,27 @@ +// Copyright (c) 2015 Mattermost, Inc. All Rights Reserved. +// See License.txt for license information. + +export default class DelayedAction { + constructor(action) { + this.action = action; + + this.timer = -1; + + // bind fire since it doesn't get passed the correct this value with setTimeout + this.fire = this.fire.bind(this); + } + + fire() { + this.action(); + + this.timer = -1; + } + + fireAfter(timeout) { + if (this.timer >= 0) { + window.clearTimeout(this.timer); + } + + this.timer = window.setTimeout(this.fire, timeout); + } +} |