Pass screenAfterLogin through SSO in the callback url

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
This commit is contained in:
Michael Telatynski 2020-05-13 06:24:05 +01:00
parent d44808e0e6
commit 6348b17e23

View File

@ -448,15 +448,16 @@ export default class ElectronPlatform extends VectorBasePlatform {
}); });
} }
getSSOCallbackUrl(hsUrl: string, isUrl: string): URL { getSSOCallbackUrl(hsUrl: string, isUrl: string, fragmentAfterLogin: string): URL {
const url = super.getSSOCallbackUrl(hsUrl, isUrl); const url = super.getSSOCallbackUrl(hsUrl, isUrl, fragmentAfterLogin);
url.protocol = "riot"; url.protocol = "riot";
url.searchParams.set("riot-desktop-ssoid", this.ssoID); url.searchParams.set("riot-desktop-ssoid", this.ssoID);
return url; return url;
} }
startSingleSignOn(mxClient: MatrixClient, loginType: "sso" | "cas") { startSingleSignOn(mxClient: MatrixClient, loginType: "sso" | "cas", fragmentAfterLogin: string) {
super.startSingleSignOn(mxClient, loginType); // this will get intercepted by electron-main will-navigate // this will get intercepted by electron-main will-navigate
super.startSingleSignOn(mxClient, loginType, fragmentAfterLogin);
Modal.createTrackedDialog('Electron', 'SSO', InfoDialog, { Modal.createTrackedDialog('Electron', 'SSO', InfoDialog, {
title: _t("Go to your browser to complete Sign In"), title: _t("Go to your browser to complete Sign In"),
description: <Spinner />, description: <Spinner />,