Fixed bug in extension install code.
parent
2a08722cf3
commit
a1caff2af3
|
|
@ -197,50 +197,46 @@ export default class RoomClient
|
||||||
{
|
{
|
||||||
logger.debug('installExtension()');
|
logger.debug('installExtension()');
|
||||||
|
|
||||||
return Promise.resolve()
|
return new Promise((resolve, reject) =>
|
||||||
.then(() =>
|
{
|
||||||
{
|
window.addEventListener('message', _onExtensionMessage, false);
|
||||||
window.addEventListener('message', _onExtensionMessage, false);
|
// eslint-disable-next-line no-undef
|
||||||
function _onExtensionMessage({ data })
|
chrome.webstore.install(null, _successfulInstall, _failedInstall);
|
||||||
{
|
function _onExtensionMessage({ data })
|
||||||
if (data.type === 'ScreenShareInjected')
|
{
|
||||||
{
|
if (data.type === 'ScreenShareInjected')
|
||||||
logger.debug('installExtension() | installation succeeded');
|
{
|
||||||
|
logger.debug('installExtension() | installation succeeded');
|
||||||
return;
|
|
||||||
}
|
return resolve();
|
||||||
}
|
}
|
||||||
|
}
|
||||||
function _failedInstall(reason)
|
|
||||||
{
|
function _failedInstall(reason)
|
||||||
window.removeEventListener('message', _onExtensionMessage);
|
{
|
||||||
|
window.removeEventListener('message', _onExtensionMessage);
|
||||||
return Promise.reject(
|
|
||||||
new Error('Failed to install extension: %s', reason));
|
return reject(
|
||||||
}
|
new Error('Failed to install extension: %s', reason));
|
||||||
|
}
|
||||||
function _successfulInstall()
|
|
||||||
{
|
function _successfulInstall()
|
||||||
logger.debug('installExtension() | installation accepted');
|
{
|
||||||
}
|
logger.debug('installExtension() | installation accepted');
|
||||||
|
}
|
||||||
// eslint-disable-next-line no-undef
|
})
|
||||||
chrome.webstore.install(null, _successfulInstall, _failedInstall);
|
|
||||||
})
|
|
||||||
.then(() =>
|
.then(() =>
|
||||||
{
|
{
|
||||||
|
// This should be handled better
|
||||||
this._dispatch(stateActions.setScreenCapabilities(
|
this._dispatch(stateActions.setScreenCapabilities(
|
||||||
{
|
{
|
||||||
canShareScreen : true,
|
canShareScreen : this._room.canSend('video'),
|
||||||
needExtension : false
|
needExtension : false
|
||||||
}));
|
}));
|
||||||
})
|
})
|
||||||
.catch((error) =>
|
.catch((error) =>
|
||||||
{
|
{
|
||||||
logger.error('enableScreenSharing() | failed: %o', error);
|
logger.error('installExtension() | failed: %o', error);
|
||||||
|
|
||||||
this._dispatch(
|
|
||||||
stateActions.setScreenShareInProgress(false));
|
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue