add a setting for toggling displaying week numbers, disabled by default

This commit is contained in:
tibbi 2016-10-04 23:44:56 +02:00
parent 1a1fde0d5f
commit 5392ea00d4
10 changed files with 54 additions and 1 deletions

View File

@ -40,4 +40,12 @@ public class Config {
public void setIsSundayFirst(boolean sundayFirst) {
mPrefs.edit().putBoolean(Constants.SUNDAY_FIRST, sundayFirst).apply();
}
public boolean getDisplayWeekNumbers() {
return mPrefs.getBoolean(Constants.WEEK_NUMBERS, false);
}
public void setDisplayWeekNumbers(boolean displayWeekNumbers) {
mPrefs.edit().putBoolean(Constants.WEEK_NUMBERS, displayWeekNumbers).apply();
}
}

View File

@ -17,6 +17,7 @@ public class Constants {
public static final String IS_FIRST_RUN = "is_first_run";
public static final String IS_DARK_THEME = "is_dark_theme";
public static final String SUNDAY_FIRST = "sunday_first";
public static final String WEEK_NUMBERS = "week_numbers";
public static final String WIDGET_BG_COLOR = "widget_bg_color";
public static final String WIDGET_TEXT_COLOR = "widget_text_color";
}

View File

@ -14,6 +14,7 @@ import butterknife.OnClick;
public class SettingsActivity extends SimpleActivity {
@BindView(R.id.settings_dark_theme) SwitchCompat mDarkThemeSwitch;
@BindView(R.id.settings_sunday_first) SwitchCompat mSundayFirstSwitch;
@BindView(R.id.settings_week_numbers) SwitchCompat mWeekNumbersSwitch;
private static Config mConfig;
@ -26,6 +27,7 @@ public class SettingsActivity extends SimpleActivity {
setupDarkTheme();
setupSundayFirst();
setupWeekNumbers();
}
private void setupDarkTheme() {
@ -36,6 +38,10 @@ public class SettingsActivity extends SimpleActivity {
mSundayFirstSwitch.setChecked(mConfig.getIsSundayFirst());
}
private void setupWeekNumbers() {
mWeekNumbersSwitch.setChecked(mConfig.getDisplayWeekNumbers());
}
@OnClick(R.id.settings_dark_theme_holder)
public void handleDarkTheme() {
mDarkThemeSwitch.setChecked(!mDarkThemeSwitch.isChecked());
@ -49,6 +55,12 @@ public class SettingsActivity extends SimpleActivity {
mConfig.setIsSundayFirst(mSundayFirstSwitch.isChecked());
}
@OnClick(R.id.settings_week_numbers_holder)
public void handleWeekNumbers() {
mWeekNumbersSwitch.setChecked(!mWeekNumbersSwitch.isChecked());
mConfig.setDisplayWeekNumbers(mWeekNumbersSwitch.isChecked());
}
private void restartActivity() {
TaskStackBuilder.create(getApplicationContext()).addNextIntentWithParentStack(getIntent()).startActivities();
}

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<ScrollView
android:id="@+id/settings_scrollview"
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/settings_scrollview"
android:layout_width="match_parent"
android:layout_height="wrap_content">
@ -62,5 +62,31 @@
android:clickable="false"/>
</RelativeLayout>
<RelativeLayout
android:id="@+id/settings_week_numbers_holder"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/settings_padding"
android:background="?attr/selectableItemBackground"
android:padding="@dimen/activity_margin">
<TextView
android:id="@+id/settings_week_numbers_label"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:paddingLeft="@dimen/settings_padding"
android:text="@string/week_numbers"/>
<android.support.v7.widget.SwitchCompat
android:id="@+id/settings_week_numbers"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:background="@null"
android:clickable="false"/>
</RelativeLayout>
</LinearLayout>
</ScrollView>

View File

@ -51,6 +51,7 @@
<string name="settings">Einstellungen</string>
<string name="dark_theme">Dunkles Thema</string>
<string name="sunday_first">Sunday as first day</string>
<string name="week_numbers">Display week numbers</string>
<!-- License -->
<string name="notice">Diese App nutzt die folgenden Drittanbieterbibliotheken, die mein Leben einfacher machen. Danke.</string>

View File

@ -51,6 +51,7 @@
<string name="settings">Impostazioni</string>
<string name="dark_theme">Tema scuro</string>
<string name="sunday_first">Sunday as first day</string>
<string name="week_numbers">Display week numbers</string>
<!-- License -->
<string name="notice">Questa app usa le seguenti librerie di terze parti per semplificarmi la vita. Grazie.</string>

View File

@ -51,6 +51,7 @@
<string name="settings">設定</string>
<string name="dark_theme">ダークテーマ</string>
<string name="sunday_first">Sunday as first day</string>
<string name="week_numbers">Display week numbers</string>
<!-- License -->
<string name="notice">このアプリは、私の人生を容易にするために、次のサードパーティのライブラリーを使用しています。 ありがとうございます。</string>

View File

@ -51,6 +51,7 @@
<string name="settings">Definições</string>
<string name="dark_theme">Tema escuro</string>
<string name="sunday_first">Domingo como primeiro dia</string>
<string name="week_numbers">Display week numbers</string>
<!-- License -->
<string name="notice">Esta aplicação usa as seguintes bibliotecas de terceiros para facilitar a minha vida. Obrigado.</string>

View File

@ -51,6 +51,7 @@
<string name="settings">Inställningar</string>
<string name="dark_theme">Mörkt tema</string>
<string name="sunday_first">Sunday as first day</string>
<string name="week_numbers">Display week numbers</string>
<!-- License -->
<string name="notice">Denna app använder följande tredjepartsbibliotek för att göra mitt liv enklare. Tack.</string>

View File

@ -52,6 +52,7 @@
<string name="settings">Settings</string>
<string name="dark_theme">Dark theme</string>
<string name="sunday_first">Sunday as first day</string>
<string name="week_numbers">Display week numbers</string>
<!-- License -->
<string name="notice">This app uses the following third party libraries to make my life easier. Thank you.</string>