Added ChanPreferences, a central way to find out user's preferences

captchafix
Florens Douwes 12 years ago
parent 8ddb486999
commit 37c0f56261
  1. 3
      Chan/src/org/floens/chan/ChanApplication.java
  2. 5
      Chan/src/org/floens/chan/fragment/ReplyFragment.java
  3. 11
      Chan/src/org/floens/chan/fragment/SettingsFragment.java
  4. 9
      Chan/src/org/floens/chan/manager/BoardManager.java
  5. 4
      Chan/src/org/floens/chan/manager/ThreadManager.java
  6. 17
      Chan/src/org/floens/chan/utils/ChanPreferences.java

@ -22,7 +22,6 @@ public class ChanApplication extends Application {
private static ChanApplication instance; private static ChanApplication instance;
private static RequestQueue volleyRequestQueue; private static RequestQueue volleyRequestQueue;
private static ImageLoader imageLoader; private static ImageLoader imageLoader;
private static DatabaseManager databaseManager;
public ChanApplication() { public ChanApplication() {
instance = this; instance = this;
@ -72,8 +71,8 @@ public class ChanApplication extends Application {
volleyRequestQueue = Volley.newRequestQueue(this); volleyRequestQueue = Volley.newRequestQueue(this);
imageLoader = new ImageLoader(volleyRequestQueue, new BitmapLruImageCache(1024 * 1024 * 8)); imageLoader = new ImageLoader(volleyRequestQueue, new BitmapLruImageCache(1024 * 1024 * 8));
// These manager need a Context
new DatabaseManager(this); new DatabaseManager(this);
new BoardManager(this); new BoardManager(this);
new PinnedManager(this); new PinnedManager(this);
new ReplyManager(this); new ReplyManager(this);

@ -9,6 +9,7 @@ import org.floens.chan.manager.ReplyManager.ReplyResponse;
import org.floens.chan.model.Loadable; import org.floens.chan.model.Loadable;
import org.floens.chan.model.Reply; import org.floens.chan.model.Reply;
import org.floens.chan.net.ChanUrls; import org.floens.chan.net.ChanUrls;
import org.floens.chan.utils.ChanPreferences;
import org.floens.chan.utils.ImageDecoder; import org.floens.chan.utils.ImageDecoder;
import org.floens.chan.utils.LoadView; import org.floens.chan.utils.LoadView;
import org.floens.chan.utils.ViewFlipperAnimations; import org.floens.chan.utils.ViewFlipperAnimations;
@ -122,11 +123,11 @@ public class ReplyFragment extends DialogFragment {
Reply draft = ReplyManager.getInstance().getReplyDraft(); Reply draft = ReplyManager.getInstance().getReplyDraft();
if (TextUtils.isEmpty(draft.name)) { if (TextUtils.isEmpty(draft.name)) {
draft.name = ChanApplication.getPreferences().getString("preference_default_name", ""); draft.name = ChanPreferences.getDefaultName();
} }
if (TextUtils.isEmpty(draft.email)) { if (TextUtils.isEmpty(draft.email)) {
draft.email = ChanApplication.getPreferences().getString("preference_default_email", ""); draft.email = ChanPreferences.getDefaultEmail();
} }
nameView.setText(draft.name); nameView.setText(draft.name);

@ -1,20 +1,17 @@
package org.floens.chan.fragment; package org.floens.chan.fragment;
import org.floens.chan.ChanApplication;
import org.floens.chan.R; import org.floens.chan.R;
import org.floens.chan.activity.AboutActivity; import org.floens.chan.activity.AboutActivity;
import android.content.Intent; import android.content.Intent;
import android.content.SharedPreferences;
import android.content.pm.PackageManager.NameNotFoundException; import android.content.pm.PackageManager.NameNotFoundException;
import android.os.Bundle; import android.os.Bundle;
import android.preference.Preference; import android.preference.Preference;
import android.preference.Preference.OnPreferenceClickListener; import android.preference.Preference.OnPreferenceClickListener;
import android.preference.PreferenceFragment; import android.preference.PreferenceFragment;
import android.widget.Toast;
public class SettingsFragment extends PreferenceFragment { public class SettingsFragment extends PreferenceFragment {
private int clickCount = 0; private final int clickCount = 0;
@Override @Override
public void onCreate(Bundle savedInstanceState) { public void onCreate(Bundle savedInstanceState) {
@ -36,7 +33,7 @@ public class SettingsFragment extends PreferenceFragment {
Preference aboutVersion = findPreference("about_version"); Preference aboutVersion = findPreference("about_version");
if (aboutVersion != null) { if (aboutVersion != null) {
aboutVersion.setOnPreferenceClickListener(new OnPreferenceClickListener() { /*aboutVersion.setOnPreferenceClickListener(new OnPreferenceClickListener() {
@Override @Override
public boolean onPreferenceClick(Preference preference) { public boolean onPreferenceClick(Preference preference) {
if (++clickCount >= 5) { if (++clickCount >= 5) {
@ -51,12 +48,12 @@ public class SettingsFragment extends PreferenceFragment {
* if (PreferenceManager.getDefaultSharedPreferences(baseActivity).getBoolean("preference_br", false)) { * if (PreferenceManager.getDefaultSharedPreferences(baseActivity).getBoolean("preference_br", false)) {
view.animate().setDuration(1000).rotation(Math.random() < 0.5d ? 540f : -360f).setInterpolator(new DecelerateInterpolator(4f)); view.animate().setDuration(1000).rotation(Math.random() < 0.5d ? 540f : -360f).setInterpolator(new DecelerateInterpolator(4f));
} }
*/
} }
return true; return true;
} }
}); });*/
String version = ""; String version = "";
try { try {

@ -10,7 +10,6 @@ import org.floens.chan.net.BoardsRequest;
import org.floens.chan.net.ChanUrls; import org.floens.chan.net.ChanUrls;
import android.content.Context; import android.content.Context;
import android.content.SharedPreferences;
import android.util.Log; import android.util.Log;
import android.widget.Toast; import android.widget.Toast;
@ -176,11 +175,11 @@ public class BoardManager {
total += board.key + "|" + board.value + "\n"; total += board.key + "|" + board.value + "\n";
} }
getPreferences().edit().putString(key, total).commit(); ChanApplication.getPreferences().edit().putString(key, total).commit();
} }
private ArrayList<Board> getBoardListFromDatabase(String key) { private ArrayList<Board> getBoardListFromDatabase(String key) {
String total = getPreferences().getString(key, null); String total = ChanApplication.getPreferences().getString(key, null);
if (total == null) return null; if (total == null) return null;
ArrayList<Board> list = new ArrayList<Board>(); ArrayList<Board> list = new ArrayList<Board>();
@ -229,10 +228,6 @@ public class BoardManager {
} }
})); }));
} }
private SharedPreferences getPreferences() {
return ChanApplication.getPreferences();
}
} }

@ -3,13 +3,13 @@ package org.floens.chan.manager;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
import org.floens.chan.ChanApplication;
import org.floens.chan.R; import org.floens.chan.R;
import org.floens.chan.fragment.PostRepliesFragment; import org.floens.chan.fragment.PostRepliesFragment;
import org.floens.chan.model.Loadable; import org.floens.chan.model.Loadable;
import org.floens.chan.model.Post; import org.floens.chan.model.Post;
import org.floens.chan.model.PostLinkable; import org.floens.chan.model.PostLinkable;
import org.floens.chan.net.ThreadLoader; import org.floens.chan.net.ThreadLoader;
import org.floens.chan.utils.ChanPreferences;
import android.app.Activity; import android.app.Activity;
import android.app.AlertDialog; import android.app.AlertDialog;
@ -271,7 +271,7 @@ public class ThreadManager {
if (linkable.type == PostLinkable.Type.QUOTE) { if (linkable.type == PostLinkable.Type.QUOTE) {
showPostReply(linkable); showPostReply(linkable);
} else if (linkable.type == PostLinkable.Type.LINK) { } else if (linkable.type == PostLinkable.Type.LINK) {
if (ChanApplication.getPreferences().getBoolean("preference_open_link_confirmation", true)) { if (ChanPreferences.getOpenLinkConfirmation()) {
AlertDialog dialog = new AlertDialog.Builder(activity) AlertDialog dialog = new AlertDialog.Builder(activity)
.setNegativeButton(android.R.string.cancel, new DialogInterface.OnClickListener() { .setNegativeButton(android.R.string.cancel, new DialogInterface.OnClickListener() {
@Override @Override

@ -0,0 +1,17 @@
package org.floens.chan.utils;
import org.floens.chan.ChanApplication;
public class ChanPreferences {
public static boolean getOpenLinkConfirmation() {
return ChanApplication.getPreferences().getBoolean("preference_open_link_confirmation", true);
}
public static String getDefaultName() {
return ChanApplication.getPreferences().getString("preference_default_name", "");
}
public static String getDefaultEmail() {
return ChanApplication.getPreferences().getString("preference_default_email", "");
}
}
Loading…
Cancel
Save