From 356d29939c1deb2ce07694e653e0ee3c6d581d09 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Wed, 3 May 2017 16:25:27 +0100 Subject: [PATCH] also warn when quitting mid-call Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- src/components/structures/RoomStatusBar.js | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/components/structures/RoomStatusBar.js b/src/components/structures/RoomStatusBar.js index 0389b606aa..0cb246973b 100644 --- a/src/components/structures/RoomStatusBar.js +++ b/src/components/structures/RoomStatusBar.js @@ -100,6 +100,10 @@ module.exports = React.createClass({ this._checkSize(); }, + componentDidMount: function() { + window.addEventListener('beforeunload', this.onPageUnload); + }, + componentDidUpdate: function() { this._checkSize(); }, @@ -111,6 +115,7 @@ module.exports = React.createClass({ client.removeListener("sync", this.onSyncStateChange); client.removeListener("RoomMember.typing", this.onRoomMemberTyping); } + window.removeEventListener('beforeunload', this.onPageUnload); }, onSyncStateChange: function(state, prevState) { @@ -128,6 +133,13 @@ module.exports = React.createClass({ }); }, + onPageUnload(event) { + if (this.props.hasActiveCall) { + return event.returnValue = + 'You seem to be in a call, are you sure you want to quit?'; + } + }, + // Check whether current size is greater than 0, if yes call props.onVisible _checkSize: function () { if (this.props.onVisible && this._getSize()) {