diff --git a/src/main/java/com/b44t/messenger/DcContext.java b/src/main/java/com/b44t/messenger/DcContext.java index fd537691f..1cbb6c65f 100644 --- a/src/main/java/com/b44t/messenger/DcContext.java +++ b/src/main/java/com/b44t/messenger/DcContext.java @@ -278,6 +278,11 @@ public class DcContext { return oauth2url.startsWith("https://accounts.google.com/"); } + public void restartIo() { + stopIo(); + startIo(); + } + /** * @return true if at least one chat has location streaming enabled */ diff --git a/src/main/java/org/thoughtcrime/securesms/proxy/ProxySettingsActivity.java b/src/main/java/org/thoughtcrime/securesms/proxy/ProxySettingsActivity.java index 3dcb023e3..60310f3e0 100644 --- a/src/main/java/org/thoughtcrime/securesms/proxy/ProxySettingsActivity.java +++ b/src/main/java/org/thoughtcrime/securesms/proxy/ProxySettingsActivity.java @@ -58,7 +58,7 @@ public class ProxySettingsActivity extends BaseActionBarActivity showAddProxyDialog(); } else { DcHelper.set(this, CONFIG_PROXY_ENABLED, proxySwitch.isChecked()? "1" : "0"); - restartIO(); + DcHelper.getContext(this).restartIo(); } }); @@ -96,7 +96,7 @@ public class ProxySettingsActivity extends BaseActionBarActivity @Override public void onItemClick(String proxyUrl) { if (DcHelper.getContext(this).setConfigFromQr(proxyUrl)) { - restartIO(); + DcHelper.getContext(this).restartIo(); adapter.setSelectedProxy(proxyUrl); proxySwitch.setChecked(DcHelper.getInt(this, CONFIG_PROXY_ENABLED) == 1); } else { @@ -137,7 +137,7 @@ public class ProxySettingsActivity extends BaseActionBarActivity } String proxyUrls = String.join("\n", proxies); DcHelper.set(this, CONFIG_PROXY_URL, proxyUrls); - restartIO(); + DcHelper.getContext(this).restartIo(); adapter.changeData(proxyUrls); } @@ -156,7 +156,7 @@ public class ProxySettingsActivity extends BaseActionBarActivity final DcLot qrParsed = dcContext.checkQr(newProxy); if (qrParsed.getState() == DcContext.DC_QR_PROXY) { dcContext.setConfigFromQr(newProxy); - restartIO(); + DcHelper.getContext(this).restartIo(); adapter.changeData(DcHelper.get(this, CONFIG_PROXY_URL)); } else { Toast.makeText(this, R.string.proxy_invalid, Toast.LENGTH_LONG).show(); @@ -173,12 +173,6 @@ public class ProxySettingsActivity extends BaseActionBarActivity .show(); } - private void restartIO() { - DcContext dcContext = DcHelper.getContext(this); - dcContext.stopIo(); - dcContext.startIo(); - } - @Override public void handleEvent(@NonNull DcEvent event) { if (event.getId() == DcContext.DC_EVENT_CONNECTIVITY_CHANGED) { diff --git a/src/main/java/org/thoughtcrime/securesms/qr/QrCodeHandler.java b/src/main/java/org/thoughtcrime/securesms/qr/QrCodeHandler.java index 94a929fbe..98a344986 100644 --- a/src/main/java/org/thoughtcrime/securesms/qr/QrCodeHandler.java +++ b/src/main/java/org/thoughtcrime/securesms/qr/QrCodeHandler.java @@ -94,8 +94,7 @@ public class QrCodeHandler { builder.setMessage(activity.getString(R.string.proxy_use_proxy_confirm, qrParsed.getText1())); builder.setPositiveButton(R.string.proxy_use_proxy, (dlg, btn) -> { dcContext.setConfigFromQr(rawString); - dcContext.stopIo(); - dcContext.startIo(); + dcContext.restartIo(); }); builder.setNegativeButton(R.string.cancel, null); builder.setCancelable(false);