diff --git a/app/src/main/java/com/github/dfa/diaspora_android/activity/SettingsActivity.java b/app/src/main/java/com/github/dfa/diaspora_android/activity/SettingsActivity.java
index 88f13171..a1af7b9d 100644
--- a/app/src/main/java/com/github/dfa/diaspora_android/activity/SettingsActivity.java
+++ b/app/src/main/java/com/github/dfa/diaspora_android/activity/SettingsActivity.java
@@ -78,12 +78,12 @@ public class SettingsActivity extends AppCompatActivity {
sharedPreferences.registerOnSharedPreferenceChangeListener(this);
setPreferenceSummaries();
sharedPreferences.edit().putBoolean(getString(R.string.pref_key__proxy_was_enabled),
- sharedPreferences.getBoolean(getString(R.string.pref_key__proxy_enabled), false)).apply();
+ sharedPreferences.getBoolean(getString(R.string.pref_key__http_proxy_enabled), false)).apply();
}
private void setPreferenceSummaries() {
String[] editTextKeys = new String[]{
- getString(R.string.pref_key__proxy_host), getString(R.string.pref_key__proxy_port)
+ getString(R.string.pref_key__http_proxy_host), getString(R.string.pref_key__http_proxy_port)
};
for (String key : editTextKeys) {
EditTextPreference p = (EditTextPreference) findPreference(key);
@@ -98,9 +98,9 @@ public class SettingsActivity extends AppCompatActivity {
key.equals(getString(R.string.pref_key__font_size)) ||
key.equals(getString(R.string.pref_key__load_images)) ||
key.equals(getString(R.string.pref_key__intellihide_toolbars)) ||
- key.equals(getString(R.string.pref_key__proxy_enabled)) ||
- key.equals(getString(R.string.pref_key__proxy_host)) ||
- key.equals(getString(R.string.pref_key__proxy_port)) ||
+ key.equals(getString(R.string.pref_key__http_proxy_enabled)) ||
+ key.equals(getString(R.string.pref_key__http_proxy_host)) ||
+ key.equals(getString(R.string.pref_key__http_proxy_port)) ||
key.startsWith("pref_key__visibility_nav__"))) {
((SettingsActivity) getActivity()).setActivityRestartRequired();
}
@@ -123,8 +123,11 @@ public class SettingsActivity extends AppCompatActivity {
@Override
public boolean onPreferenceTreeClick(PreferenceScreen screen, Preference preference) {
+ App app = ((App) getActivity().getApplication());
+ AppSettings appSettings = app.getSettings();
Intent intent = new Intent(getActivity(), MainActivity.class);
- String podDomain = ((App) getActivity().getApplication()).getSettings().getPodDomain();
+ String podDomain = appSettings.getPodDomain();
+
switch (preference.getTitleRes()) {
case R.string.pref_title__personal_settings: {
intent.setAction(MainActivity.ACTION_OPEN_URL);
@@ -158,6 +161,11 @@ public class SettingsActivity extends AppCompatActivity {
.show();
return true;
}
+ case R.string.pref_title__http_proxy_load_tor_preset: {
+ ((EditTextPreference)findPreference(getString(R.string.pref_key__http_proxy_host))).setText("127.0.0.1");
+ ((EditTextPreference)findPreference(getString(R.string.pref_key__http_proxy_port))).setText("8118");
+ return true;
+ }
default: {
intent = null;
diff --git a/app/src/main/java/com/github/dfa/diaspora_android/data/AppSettings.java b/app/src/main/java/com/github/dfa/diaspora_android/data/AppSettings.java
index da5839c9..8d0160dd 100644
--- a/app/src/main/java/com/github/dfa/diaspora_android/data/AppSettings.java
+++ b/app/src/main/java/com/github/dfa/diaspora_android/data/AppSettings.java
@@ -202,7 +202,7 @@ public class AppSettings {
@SuppressLint("CommitPrefEdits")
public void setProxyEnabled(boolean enabled) {
//commit instead of apply because the app is likely to be killed before apply is called.
- prefApp.edit().putBoolean(context.getString(R.string.pref_key__proxy_enabled), enabled).commit();
+ prefApp.edit().putBoolean(context.getString(R.string.pref_key__http_proxy_enabled), enabled).commit();
}
/**
@@ -211,7 +211,7 @@ public class AppSettings {
* @return whether proxy is enabled or not
*/
public boolean isProxyEnabled() {
- return getBoolean(prefApp, R.string.pref_key__proxy_enabled, false);
+ return getBoolean(prefApp, R.string.pref_key__http_proxy_enabled, false);
}
public boolean wasProxyEnabled() {
@@ -235,9 +235,12 @@ public class AppSettings {
* @return proxy host
*/
public String getProxyHost() {
- return getString(prefApp, R.string.pref_key__proxy_host, "");
+ return getString(prefApp, R.string.pref_key__http_proxy_host, "");
}
+ public void setProxyHttpHost(String value) {
+ setString(prefApp, R.string.pref_key__http_proxy_host, value);
+ }
/**
* Default value: 0
*
@@ -245,13 +248,17 @@ public class AppSettings {
*/
public int getProxyPort() {
try {
- return Integer.parseInt(getString(prefApp, R.string.pref_key__proxy_port, "0"));
+ return Integer.parseInt(getString(prefApp, R.string.pref_key__http_proxy_port, "0"));
} catch (Exception e) {
- setString(prefApp, R.string.pref_key__proxy_port, "0");
+ setString(prefApp, R.string.pref_key__http_proxy_port, "0");
return 0;
}
}
+ public void setProxyHttpPort(int value) {
+ setInt(prefApp, R.string.pref_key__http_proxy_port, value);
+ }
+
public boolean isIntellihideToolbars() {
return getBoolean(prefApp, R.string.pref_key__intellihide_toolbars, false);
}
diff --git a/app/src/main/res/drawable/tor_onion.xml b/app/src/main/res/drawable/tor_onion.xml
new file mode 100644
index 00000000..7df39ce0
--- /dev/null
+++ b/app/src/main/res/drawable/tor_onion.xml
@@ -0,0 +1,13 @@
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/app/src/main/res/values-de/strings-preferences.xml b/app/src/main/res/values-de/strings-preferences.xml
index ed3586f7..c629a28e 100644
--- a/app/src/main/res/values-de/strings-preferences.xml
+++ b/app/src/main/res/values-de/strings-preferences.xml
@@ -22,9 +22,9 @@
Deaktiviere das Laden von Bildern, um den Datenverbrauch zu verringern
Aktiviere Netzwerkproxy
- Nutze einen Proxyserver, um Firewalls zu umgehen
- Host
- Port
+ Nutze einen Proxyserver, um Firewalls zu umgehen
+ Host
+ Port
Chrome Custom Tabs
Externe Links mit Chrome Custom Tabs öffnen. Für dieses Feature muss Chromium oder Google Chrome installiert sein
diff --git a/app/src/main/res/values-es/strings-preferences.xml b/app/src/main/res/values-es/strings-preferences.xml
index 6a6b67c1..9cab7553 100644
--- a/app/src/main/res/values-es/strings-preferences.xml
+++ b/app/src/main/res/values-es/strings-preferences.xml
@@ -22,9 +22,9 @@
Desactivar la carga de de imágenes a datos móviles seguros
Activar Proxy
- El tráfico proxificado de Diaspora para evitar firewalls.\nPuede necesitar reiniciarse
- Anfitrión
- Puerto
+ El tráfico proxificado de Diaspora para evitar firewalls.\nPuede necesitar reiniciarse
+ Anfitrión
+ Puerto
Configuración personal
diff --git a/app/src/main/res/values-fr/strings-preferences.xml b/app/src/main/res/values-fr/strings-preferences.xml
index 48b8d71d..2ff27c03 100644
--- a/app/src/main/res/values-fr/strings-preferences.xml
+++ b/app/src/main/res/values-fr/strings-preferences.xml
@@ -22,9 +22,9 @@
Désactiver le chargements des images pour préserver la data mobile
Activer Proxy
- Serveur Proxy.\n(Nécessite un redémarrage)
- Hôte
- Port
+ Serveur Proxy.\n(Nécessite un redémarrage)
+ Hôte
+ Port
Onglets personnalisés de Chrome
Ouvrir les liens externes avec les onglets personnalisés. Chromium ou Google Chrome doit être installé pour cette fonctionnalité
diff --git a/app/src/main/res/values-it/strings-preferences.xml b/app/src/main/res/values-it/strings-preferences.xml
index 01fbf921..7ace8cf5 100644
--- a/app/src/main/res/values-it/strings-preferences.xml
+++ b/app/src/main/res/values-it/strings-preferences.xml
@@ -22,9 +22,9 @@
Disabilita il caricamento delle immagini per risparmiare la rete dati
Attiva proxy
- Traffico del proxy di Diaspora per bypassare i firewall.\nPuò essere necessario il riavvio dell\'app
- Host
- Porta
+ Traffico del proxy di Diaspora per bypassare i firewall.\nPuò essere necessario il riavvio dell\'app
+ Host
+ Porta
Impostazioni personali
diff --git a/app/src/main/res/values-ja/strings-preferences.xml b/app/src/main/res/values-ja/strings-preferences.xml
index 909ff218..de7154e6 100644
--- a/app/src/main/res/values-ja/strings-preferences.xml
+++ b/app/src/main/res/values-ja/strings-preferences.xml
@@ -22,9 +22,9 @@
安全なモバイルデータのため、画像の読み込みを無効にします
プロキシを有効にする
- Diaspora の通信をプロキシして、ファイアウォールに回避します。\n再起動が必要になることがあります
- ホスト
- ポート
+ Diaspora の通信をプロキシして、ファイアウォールに回避します。\n再起動が必要になることがあります
+ ホスト
+ ポート
Chrome カスタムタブ
Chrome カスタム タブで外部リンクを開きます。この機能は Chromium または Google Chrome をインストールする必要があります
diff --git a/app/src/main/res/values-ml/strings-preferences.xml b/app/src/main/res/values-ml/strings-preferences.xml
index 390a9139..decc542a 100644
--- a/app/src/main/res/values-ml/strings-preferences.xml
+++ b/app/src/main/res/values-ml/strings-preferences.xml
@@ -22,9 +22,9 @@
മൊബൈൽ ഡാറ്റ ഉപഭോഗം കുറയ്ക്കാനായി ചിത്രങ്ങൾ ലോഡ് ചെയ്യാതിരിക്കുക
പ്രോക്സി അനുവദിക്കൂ
- ഫയർവാളുകളെ മറികടക്കാൻ ഡയസ്പോറ ട്രാഫിക് പ്രോക്സി ചെയ്യൂ.\nപുനരാരംഭിക്കേണ്ടി വന്നേക്കാം
- ആഥിതേയൻ
- പോർട്ട്
+ ഫയർവാളുകളെ മറികടക്കാൻ ഡയസ്പോറ ട്രാഫിക് പ്രോക്സി ചെയ്യൂ.\nപുനരാരംഭിക്കേണ്ടി വന്നേക്കാം
+ ആഥിതേയൻ
+ പോർട്ട്
സ്വകാര്യ സജ്ജീകരണങ്ങൾ
diff --git a/app/src/main/res/values-nl/strings-preferences.xml b/app/src/main/res/values-nl/strings-preferences.xml
index 47b807ca..8526b891 100644
--- a/app/src/main/res/values-nl/strings-preferences.xml
+++ b/app/src/main/res/values-nl/strings-preferences.xml
@@ -21,9 +21,9 @@
Afbeelding laden uitschakelen om mobiele data te besparen
Proxy inschakelen
- Gebruik een Proxy voor Diaspora om de firewalls te omzeilen.\nRestart nodig
- Host
- Poort
+ Gebruik een Proxy voor Diaspora om de firewalls te omzeilen.\nRestart nodig
+ Host
+ Poort
Persoonlijke instellingen
diff --git a/app/src/main/res/values-pt-rBR/strings-preferences.xml b/app/src/main/res/values-pt-rBR/strings-preferences.xml
index ee8eebc8..1fbd4608 100644
--- a/app/src/main/res/values-pt-rBR/strings-preferences.xml
+++ b/app/src/main/res/values-pt-rBR/strings-preferences.xml
@@ -22,9 +22,9 @@
Desabilitar o carregamento de imagens para economizar seus créditos
Habilitar o Proxy
- Usar proxy para o tráfego da diáspora para contornar firewalls.\nPode requerer reinicialização
- Servidor
- Porta
+ Usar proxy para o tráfego da diáspora para contornar firewalls.\nPode requerer reinicialização
+ Servidor
+ Porta
Configurações pessoais
diff --git a/app/src/main/res/values-ru/strings-preferences.xml b/app/src/main/res/values-ru/strings-preferences.xml
index 3bc04e85..0b924029 100644
--- a/app/src/main/res/values-ru/strings-preferences.xml
+++ b/app/src/main/res/values-ru/strings-preferences.xml
@@ -22,9 +22,9 @@
Отключить загрузку изображений для экономии траффика
Использовать прокси
- Перенаправить трафик Диаспоры в обход брандмауэров.\nМожет потребовать перезапуска
- Хост
- Порт
+ Перенаправить трафик Диаспоры в обход брандмауэров.\nМожет потребовать перезапуска
+ Хост
+ Порт
Личные настройки
diff --git a/app/src/main/res/values/strings-preferences.xml b/app/src/main/res/values/strings-preferences.xml
index fe4e728b..225eb33b 100644
--- a/app/src/main/res/values/strings-preferences.xml
+++ b/app/src/main/res/values/strings-preferences.xml
@@ -15,11 +15,12 @@
pref_key_load_images
pref_key_clear_cache
pref_key__chrome_custom_tabs_enabled
+ pref_key__http_proxy_load_tor_preset
pref_key_append_shared_via_app
- pref_key_proxy_enabled
- pref_key_proxy_host
- pref_key_proxy_port
+ pref_key_proxy_enabled
+ pref_key_proxy_host
+ pref_key_proxy_port
wasProxyEnabled
@@ -81,12 +82,16 @@
Disable image loading to safe mobile data
+ Load Tor Preset
+ Load proxy settings for Tor (Orbot) HTTP Proxy
Proxy
- @string/pref_desc__proxy_enabled
+ @string/pref_desc__http_proxy_enabled
Enable Proxy
- Proxy Diaspora\'s traffic to circumvent firewalls.\nMay require restart
- Host
- Port
+ Proxy Diaspora\'s traffic to circumvent firewalls.\nMay require restart
+ Host
+ Port
+ HTTP
+ SOCKS5
diff --git a/app/src/main/res/xml/preferences.xml b/app/src/main/res/xml/preferences.xml
index 4bbc7b4c..fca5961e 100644
--- a/app/src/main/res/xml/preferences.xml
+++ b/app/src/main/res/xml/preferences.xml
@@ -129,21 +129,34 @@
-
-
-
+
+
+
+
+
+
+
+
+
+