summaryrefslogtreecommitdiffhomepage
path: root/gui/src/renderer
diff options
context:
space:
mode:
Diffstat (limited to 'gui/src/renderer')
-rw-r--r--gui/src/renderer/app.tsx4
-rw-r--r--gui/src/renderer/components/Connect.tsx2
-rw-r--r--gui/src/renderer/components/TunnelControl.tsx1
-rw-r--r--gui/src/renderer/containers/ConnectPage.tsx7
4 files changed, 14 insertions, 0 deletions
diff --git a/gui/src/renderer/app.tsx b/gui/src/renderer/app.tsx
index 5fb48f701f..58243ce22a 100644
--- a/gui/src/renderer/app.tsx
+++ b/gui/src/renderer/app.tsx
@@ -276,6 +276,10 @@ export default class AppRenderer {
return IpcRendererEventChannel.tunnel.disconnect();
}
+ public reconnectTunnel(): Promise<void> {
+ return IpcRendererEventChannel.tunnel.reconnect();
+ }
+
public updateRelaySettings(relaySettings: RelaySettingsUpdate) {
return IpcRendererEventChannel.settings.updateRelaySettings(relaySettings);
}
diff --git a/gui/src/renderer/components/Connect.tsx b/gui/src/renderer/components/Connect.tsx
index 7f73fb7ea0..4cb63c6a5b 100644
--- a/gui/src/renderer/components/Connect.tsx
+++ b/gui/src/renderer/components/Connect.tsx
@@ -23,6 +23,7 @@ interface IProps {
onSelectLocation: () => void;
onConnect: () => void;
onDisconnect: () => void;
+ onReconnect: () => void;
onExternalLinkWithAuth: (url: string) => Promise<void>;
}
@@ -163,6 +164,7 @@ export default class Connect extends Component<IProps, IState> {
country={this.props.connection.country}
onConnect={this.props.onConnect}
onDisconnect={this.props.onDisconnect}
+ onReconnect={this.props.onReconnect}
onSelectLocation={this.props.onSelectLocation}
/>
diff --git a/gui/src/renderer/components/TunnelControl.tsx b/gui/src/renderer/components/TunnelControl.tsx
index 700603bd2e..aa7c762d17 100644
--- a/gui/src/renderer/components/TunnelControl.tsx
+++ b/gui/src/renderer/components/TunnelControl.tsx
@@ -14,6 +14,7 @@ interface ITunnelControlProps {
country?: string;
onConnect: () => void;
onDisconnect: () => void;
+ onReconnect: () => void;
onSelectLocation: () => void;
}
diff --git a/gui/src/renderer/containers/ConnectPage.tsx b/gui/src/renderer/containers/ConnectPage.tsx
index e5261a161a..e4c37f19cc 100644
--- a/gui/src/renderer/containers/ConnectPage.tsx
+++ b/gui/src/renderer/containers/ConnectPage.tsx
@@ -99,6 +99,13 @@ const mapDispatchToProps = (dispatch: ReduxDispatch, props: IAppContext) => {
log.error(`Failed to disconnect the tunnel: ${error.message}`);
}
},
+ onReconnect: async () => {
+ try {
+ await props.app.reconnectTunnel();
+ } catch (error) {
+ log.error(`Failed to reconnect the tunnel: ${error.message}`);
+ }
+ },
onExternalLinkWithAuth: (url: string) => props.app.openLinkWithAuth(url),
};
};