summaryrefslogtreecommitdiffstats
path: root/src/org/lineageos/eleven/ui/activities/SettingsActivity.java
diff options
context:
space:
mode:
authorMichael Bestas <mkbestas@lineageos.org>2018-01-22 21:02:42 +0200
committerMichael Bestas <mkbestas@lineageos.org>2018-01-23 19:35:52 +0200
commita907407e035b52e8dcdd4ac3ae48b533c7942d5a (patch)
treeef031b8478effd2fd828495832260359486950f4 /src/org/lineageos/eleven/ui/activities/SettingsActivity.java
parentda200d369e4e43f2587273e9dd7af9c91048cf68 (diff)
downloadandroid_packages_apps_Eleven-a907407e035b52e8dcdd4ac3ae48b533c7942d5a.tar.gz
android_packages_apps_Eleven-a907407e035b52e8dcdd4ac3ae48b533c7942d5a.tar.bz2
android_packages_apps_Eleven-a907407e035b52e8dcdd4ac3ae48b533c7942d5a.zip
Eleven: rebrand step 1: update paths
Change-Id: Iab35e4024e20c48e7439e78d1c6efe0ef4f730ca
Diffstat (limited to 'src/org/lineageos/eleven/ui/activities/SettingsActivity.java')
-rw-r--r--src/org/lineageos/eleven/ui/activities/SettingsActivity.java117
1 files changed, 117 insertions, 0 deletions
diff --git a/src/org/lineageos/eleven/ui/activities/SettingsActivity.java b/src/org/lineageos/eleven/ui/activities/SettingsActivity.java
new file mode 100644
index 0000000..cf33054
--- /dev/null
+++ b/src/org/lineageos/eleven/ui/activities/SettingsActivity.java
@@ -0,0 +1,117 @@
+/*
+ * Copyright (C) 2012 Andrew Neal
+ * Copyright (C) 2014 The CyanogenMod Project
+ * Licensed under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with the
+ * License. You may obtain a copy of the License at
+ * http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law
+ * or agreed to in writing, software distributed under the License is
+ * distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the specific language
+ * governing permissions and limitations under the License.
+ */
+
+package com.cyanogenmod.eleven.ui.activities;
+
+import android.app.AlertDialog;
+import android.content.DialogInterface;
+import android.content.DialogInterface.OnClickListener;
+import android.content.SharedPreferences;
+import android.content.SharedPreferences.OnSharedPreferenceChangeListener;
+import android.os.Bundle;
+import android.preference.Preference;
+import android.preference.Preference.OnPreferenceClickListener;
+import android.preference.PreferenceActivity;
+import android.preference.PreferenceManager;
+import android.view.MenuItem;
+
+import com.cyanogenmod.eleven.R;
+import com.cyanogenmod.eleven.cache.ImageFetcher;
+import com.cyanogenmod.eleven.utils.MusicUtils;
+import com.cyanogenmod.eleven.utils.PreferenceUtils;
+
+/**
+ * Settings.
+ *
+ * @author Andrew Neal (andrewdneal@gmail.com)
+ */
+@SuppressWarnings("deprecation")
+public class SettingsActivity extends PreferenceActivity implements OnSharedPreferenceChangeListener{
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ protected void onCreate(final Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ // Fade it in
+ overridePendingTransition(android.R.anim.fade_in, android.R.anim.fade_out);
+
+ // UP
+ getActionBar().setDisplayHomeAsUpEnabled(true);
+
+ // Add the preferences
+ addPreferencesFromResource(R.xml.settings);
+
+ // Removes the cache entries
+ deleteCache();
+
+ PreferenceUtils.getInstance(this).setOnSharedPreferenceChangeListener(this);
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public boolean onOptionsItemSelected(final MenuItem item) {
+ switch (item.getItemId()) {
+ case android.R.id.home:
+ onBackPressed();
+ finish();
+ return true;
+ default:
+ break;
+ }
+ return super.onOptionsItemSelected(item);
+ }
+
+ /**
+ * Removes all of the cache entries.
+ */
+ private void deleteCache() {
+ final Preference deleteCache = findPreference("delete_cache");
+ deleteCache.setOnPreferenceClickListener(new OnPreferenceClickListener() {
+ @Override
+ public boolean onPreferenceClick(final Preference preference) {
+ new AlertDialog.Builder(SettingsActivity.this).setMessage(R.string.delete_warning)
+ .setPositiveButton(android.R.string.ok, new OnClickListener() {
+ @Override
+ public void onClick(final DialogInterface dialog, final int which) {
+ ImageFetcher.getInstance(SettingsActivity.this).clearCaches();
+ }
+ })
+ .setNegativeButton(R.string.cancel, new OnClickListener() {
+ @Override
+ public void onClick(final DialogInterface dialog, final int which) {
+ dialog.dismiss();
+ }
+ })
+ .create().show();
+ return true;
+ }
+ });
+ }
+
+ @Override
+ public void onSharedPreferenceChanged(SharedPreferences sharedPreferences,
+ String key) {
+ if (key.equals(PreferenceUtils.SHOW_VISUALIZER) &&
+ sharedPreferences.getBoolean(key, false) && !PreferenceUtils.canRecordAudio(this)) {
+ PreferenceUtils.requestRecordAudio(this);
+ } if (key.equals(PreferenceUtils.SHAKE_TO_PLAY)) {
+ MusicUtils.setShakeToPlayEnabled(sharedPreferences.getBoolean(key, false));
+ } else if (key.equals(PreferenceUtils.SHOW_ALBUM_ART_ON_LOCKSCREEN)) {
+ MusicUtils.setShowAlbumArtOnLockscreen(sharedPreferences.getBoolean(key, true));
+ }
+ }
+}