mirror of
https://github.com/gsantner/dandelion
synced 2024-11-22 12:22:08 +01:00
Added first design of a SettingsActivity
This commit is contained in:
parent
cb3fc08df6
commit
ec922f139f
5 changed files with 126 additions and 1 deletions
|
@ -41,6 +41,12 @@
|
|||
android:theme="@style/AppTheme.NoActionBar"
|
||||
android:label="@string/diaspora">
|
||||
</activity>
|
||||
<activity
|
||||
android:name="com.github.dfa.diaspora_android.activity.SettingsActivity"
|
||||
android:launchMode="singleInstance"
|
||||
android:theme="@style/AppTheme"
|
||||
android:label="@string/jb_settings">
|
||||
</activity>
|
||||
|
||||
<activity
|
||||
android:name="com.github.dfa.diaspora_android.activity.ShareActivity"
|
||||
|
|
|
@ -945,6 +945,7 @@ public class MainActivity extends AppCompatActivity
|
|||
break;
|
||||
|
||||
case R.id.nav_settings_app: {
|
||||
/*
|
||||
final CharSequence[] options = {getString(R.string.settings_font), getString(R.string.settings_view), appSettings.isLoadImages() ?
|
||||
getString(R.string.settings_images_switch_off) : getString(R.string.settings_images_switch_on), getString(R.string.jb_pod)};
|
||||
|
||||
|
@ -984,7 +985,8 @@ public class MainActivity extends AppCompatActivity
|
|||
}).show();
|
||||
} else {
|
||||
Snackbar.make(swipeRefreshLayout, R.string.no_internet, Snackbar.LENGTH_LONG).show();
|
||||
}
|
||||
} */
|
||||
startActivity(new Intent(this, SettingsActivity.class));
|
||||
}
|
||||
break;
|
||||
|
||||
|
|
|
@ -0,0 +1,41 @@
|
|||
package com.github.dfa.diaspora_android.activity;
|
||||
|
||||
import android.content.SharedPreferences;
|
||||
import android.os.Bundle;
|
||||
import android.preference.EditTextPreference;
|
||||
import android.preference.ListPreference;
|
||||
import android.preference.Preference;
|
||||
import android.preference.PreferenceActivity;
|
||||
|
||||
import com.github.dfa.diaspora_android.R;
|
||||
|
||||
/**
|
||||
* @author vanitas
|
||||
*/
|
||||
public class SettingsActivity extends PreferenceActivity implements SharedPreferences.OnSharedPreferenceChangeListener {
|
||||
@Override
|
||||
public void onCreate(Bundle savedInstanceState) {
|
||||
super.onCreate(savedInstanceState);
|
||||
addPreferencesFromResource(R.xml.preferences);
|
||||
getPreferenceScreen().getSharedPreferences().registerOnSharedPreferenceChangeListener(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onSharedPreferenceChanged(SharedPreferences sharedPreferences, String key) {
|
||||
updatePreference(findPreference(key), key);
|
||||
}
|
||||
|
||||
private void updatePreference(Preference preference, String key) {
|
||||
if (preference == null) return;
|
||||
if (preference instanceof EditTextPreference) {
|
||||
EditTextPreference textPref = (EditTextPreference) preference;
|
||||
textPref.setSummary(textPref.getText());
|
||||
return;
|
||||
}
|
||||
if(preference instanceof ListPreference) {
|
||||
ListPreference listPref = (ListPreference) preference;
|
||||
listPref.setSummary(listPref.getEntry());
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
33
app/src/main/res/values/strings-preferences.xml
Normal file
33
app/src/main/res/values/strings-preferences.xml
Normal file
|
@ -0,0 +1,33 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<!-- Categories -->
|
||||
<string name="pref_category_visuals">Look and Feel</string>
|
||||
<string name="pref_category_network">Network</string>
|
||||
|
||||
<!-- Visuals -->
|
||||
<!-- Font size -->
|
||||
<string name="pref_title_font_size">Font size</string>
|
||||
<array name="pref_entries_font_size">
|
||||
<item>Normal</item>
|
||||
<item>Large</item>
|
||||
<item>Huge</item>
|
||||
</array>
|
||||
<array name="pref_entry_values_font_size" translatable="false">
|
||||
<item>normal</item>
|
||||
<item>big</item>
|
||||
<item>huge</item>
|
||||
</array>
|
||||
<!-- Mobile/Desktop view -->
|
||||
<string name="pref_title_desktop_view">Desktop mode</string>
|
||||
<string name="pref_desc_desktop_view">Load full desktop site instead of mobile view</string>
|
||||
|
||||
<!-- Load images -->
|
||||
<string name="pref_title_load_images">Load images</string>
|
||||
<string name="pref_desc_load_images">You can disable image loading to safe mobile data</string>
|
||||
|
||||
<!-- Proxy -->
|
||||
<string name="pref_title_proxy_enabled">Enable Proxy</string>
|
||||
<string name="pref_title_proxy_host">Host</string>
|
||||
<string name="pref_title_proxy_port">Port</string>
|
||||
|
||||
</resources>
|
43
app/src/main/res/xml/preferences.xml
Normal file
43
app/src/main/res/xml/preferences.xml
Normal file
|
@ -0,0 +1,43 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<PreferenceCategory
|
||||
android:title="@string/pref_category_visuals"
|
||||
android:key="pref_key_category_visuals">
|
||||
<ListPreference
|
||||
android:title="@string/pref_title_font_size"
|
||||
android:key="pref_key_font_size"
|
||||
android:dialogTitle="@string/pref_title_font_size"
|
||||
android:entries="@array/pref_entries_font_size"
|
||||
android:entryValues="@array/pref_entry_values_font_size" />
|
||||
<CheckBoxPreference
|
||||
android:title="@string/pref_title_desktop_view"
|
||||
android:summary="@string/pref_desc_desktop_view"
|
||||
android:key="pref_key_desktop_mode"
|
||||
android:defaultValue="false"/>
|
||||
</PreferenceCategory>
|
||||
|
||||
<PreferenceCategory
|
||||
android:title="@string/pref_category_network"
|
||||
android:key="pref_key_category_network">
|
||||
<CheckBoxPreference
|
||||
android:title="@string/pref_title_load_images"
|
||||
android:key="pref_key_load_images"
|
||||
android:summary="@string/pref_desc_load_images"
|
||||
android:defaultValue="true" />
|
||||
|
||||
<CheckBoxPreference
|
||||
android:title="@string/pref_title_proxy_enabled"
|
||||
android:key="pref_key_proxy_enabled"
|
||||
android:defaultValue="false" />
|
||||
<EditTextPreference
|
||||
android:title="@string/pref_title_proxy_host"
|
||||
android:key="pref_key_proxy_host"
|
||||
android:dependency="pref_key_proxy_enabled" />
|
||||
<EditTextPreference
|
||||
android:title="@string/pref_title_proxy_port"
|
||||
android:key="pref_key_proxy_port"
|
||||
android:dependency="pref_key_proxy_enabled"
|
||||
android:inputType="number" />
|
||||
</PreferenceCategory>
|
||||
|
||||
</PreferenceScreen>
|
Loading…
Reference in a new issue