add Dark Theme

This commit is contained in:
tibbi
2016-07-20 18:51:12 +02:00
parent 37871e9bdc
commit c28308b1e3
16 changed files with 123 additions and 11 deletions

View File

@ -1,7 +1,7 @@
package com.simplemobiletools.camera.activities;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.support.v4.app.TaskStackBuilder;
import android.support.v7.widget.AppCompatSpinner;
import android.support.v7.widget.SwitchCompat;
@ -13,7 +13,8 @@ import butterknife.ButterKnife;
import butterknife.OnClick;
import butterknife.OnItemSelected;
public class SettingsActivity extends AppCompatActivity {
public class SettingsActivity extends SimpleActivity {
@BindView(R.id.settings_dark_theme) SwitchCompat mDarkThemeSwitch;
@BindView(R.id.settings_long_tap) SwitchCompat mLongTapSwitch;
@BindView(R.id.settings_focus_before_capture) SwitchCompat mFocusBeforeCaptureSwitch;
@BindView(R.id.settings_sound) SwitchCompat mSoundSwitch;
@ -29,6 +30,7 @@ public class SettingsActivity extends AppCompatActivity {
mConfig = Config.newInstance(getApplicationContext());
ButterKnife.bind(this);
setupDarkTheme();
setupLongTap();
setupFocusBeforeCapture();
setupSound();
@ -36,6 +38,10 @@ public class SettingsActivity extends AppCompatActivity {
setupMaxResolution();
}
private void setupDarkTheme() {
mDarkThemeSwitch.setChecked(mConfig.getIsDarkTheme());
}
private void setupLongTap() {
mLongTapSwitch.setChecked(mConfig.getLongTapEnabled());
}
@ -56,6 +62,13 @@ public class SettingsActivity extends AppCompatActivity {
mMaxResolutionSpinner.setSelection(mConfig.getMaxResolution());
}
@OnClick(R.id.settings_dark_theme_holder)
public void handleDarkTheme() {
mDarkThemeSwitch.setChecked(!mDarkThemeSwitch.isChecked());
mConfig.setIsDarkTheme(mDarkThemeSwitch.isChecked());
restartActivity();
}
@OnClick(R.id.settings_long_tap_holder)
public void handleLongTapToTrigger() {
mLongTapSwitch.setChecked(!mLongTapSwitch.isChecked());
@ -84,4 +97,8 @@ public class SettingsActivity extends AppCompatActivity {
public void handleMaxResolution() {
mConfig.setMaxResolution(mMaxResolutionSpinner.getSelectedItemPosition());
}
private void restartActivity() {
TaskStackBuilder.create(getApplicationContext()).addNextIntentWithParentStack(getIntent()).startActivities();
}
}