X-Git-Url: https://gitweb.stoutner.com/?p=PrivacyBrowserAndroid.git;a=blobdiff_plain;f=app%2Fsrc%2Fmain%2Fjava%2Fcom%2Fstoutner%2Fprivacybrowser%2Fhelpers%2FOrbotProxyHelper.java;h=02f76466a7aeb592e84e3a73c8eeba4323457a18;hp=9852dd0bdd37c717928644fe507e1157f35f9376;hb=418b3169ab1aa4ebd05e041f29dafccac84540e1;hpb=ba632a37a66aad3feeac8fcf12afdbe38032049d diff --git a/app/src/main/java/com/stoutner/privacybrowser/helpers/OrbotProxyHelper.java b/app/src/main/java/com/stoutner/privacybrowser/helpers/OrbotProxyHelper.java index 9852dd0b..02f76466 100644 --- a/app/src/main/java/com/stoutner/privacybrowser/helpers/OrbotProxyHelper.java +++ b/app/src/main/java/com/stoutner/privacybrowser/helpers/OrbotProxyHelper.java @@ -1,5 +1,5 @@ /* - * Copyright © 2016-2018 Soren Stoutner . + * Copyright © 2016-2019 Soren Stoutner . * * This file is part of Privacy Browser . * @@ -24,12 +24,15 @@ import android.app.Activity; import android.content.Context; import android.content.DialogInterface; import android.content.Intent; +import android.content.SharedPreferences; import android.content.pm.PackageManager; import android.net.Proxy; -import android.support.v7.app.AlertDialog; +import android.preference.PreferenceManager; import android.util.ArrayMap; import android.util.Log; +import androidx.appcompat.app.AlertDialog; + import com.stoutner.privacybrowser.activities.MainWebViewActivity; import com.stoutner.privacybrowser.R; @@ -39,15 +42,21 @@ import java.lang.reflect.Method; public class OrbotProxyHelper { public static void setProxy(Context privacyBrowserContext, Activity parentActivity, String proxyHost, String proxyPort) { - // Set the proxy values - System.setProperty("proxyHost", proxyHost); - System.setProperty("proxyPort", proxyPort); + if (proxyPort.equals("0")) { + // Clear the proxy values. + System.clearProperty("proxyHost"); + System.clearProperty("proxyPort"); + } else { + // Set the proxy values + System.setProperty("proxyHost", proxyHost); + System.setProperty("proxyPort", proxyPort); + } // These entries shouldn't be needed if the above general settings are applied. They are here for troubleshooting just in case. - //System.setProperty("http.proxyHost", proxyHost); - //System.setProperty("http.proxyPort", proxyPort); - //System.setProperty("https.proxyHost", proxyHost); - //System.setProperty("https.proxyPort", proxyPort); + // System.setProperty("http.proxyHost", proxyHost); + // System.setProperty("http.proxyPort", proxyPort); + // System.setProperty("https.proxyHost", proxyHost); + // System.setProperty("https.proxyPort", proxyPort); // Use reflection to apply the new proxy values. try { @@ -115,8 +124,14 @@ public class OrbotProxyHelper { // Use `AlertDialog.Builder` to create the `AlertDialog`. AlertDialog.Builder dialogBuilder; + // Get a handle for the shared preferences. + SharedPreferences sharedPreferences = PreferenceManager.getDefaultSharedPreferences(privacyBrowserContext); + + // Get the theme preference. + boolean darkTheme = sharedPreferences.getBoolean("dark_theme", false); + // Set the style according to the theme. - if (MainWebViewActivity.darkTheme) { + if (darkTheme) { dialogBuilder = new AlertDialog.Builder(parentActivity, R.style.PrivacyBrowserAlertDialogDark); } else { dialogBuilder = new AlertDialog.Builder(parentActivity, R.style.PrivacyBrowserAlertDialogLight);