From 65244e6784b8359af081b839643dfda7f07fb098 Mon Sep 17 00:00:00 2001 From: Peter Serwylo Date: Tue, 23 Jul 2013 09:03:02 +1000 Subject: [PATCH] Refactored the compact layout preference in AppListAdapter. Moved it to a getter, instead of directly accessing the property throughout. --- .../fdroid/fdroid/views/AppListAdapter.java | 25 +++++++++++-------- 1 file changed, 14 insertions(+), 11 deletions(-) diff --git a/src/org/fdroid/fdroid/views/AppListAdapter.java b/src/org/fdroid/fdroid/views/AppListAdapter.java index 85c4e2d95..32fdba919 100644 --- a/src/org/fdroid/fdroid/views/AppListAdapter.java +++ b/src/org/fdroid/fdroid/views/AppListAdapter.java @@ -1,7 +1,5 @@ package org.fdroid.fdroid.views; -import org.fdroid.fdroid.Utils; - import java.io.File; import java.util.ArrayList; import java.util.List; @@ -22,7 +20,9 @@ abstract public class AppListAdapter extends BaseAdapter { private List items = new ArrayList(); private Context mContext; - Boolean pref_compactlayout = null; + + private boolean prefCompactLayoutInitialized = false; + private boolean prefCompactLayout = false; public AppListAdapter(Context context) { mContext = context; @@ -55,6 +55,15 @@ abstract public class AppListAdapter extends BaseAdapter { return position; } + protected boolean hasCompactLayout() { + if (!prefCompactLayoutInitialized) { + prefCompactLayoutInitialized = true; + SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(mContext); + prefCompactLayout = prefs.getBoolean("compactlayout", false); + } + return prefCompactLayout; + } + @Override public View getView(int position, View convertView, ViewGroup parent) { boolean init = false; @@ -92,13 +101,7 @@ abstract public class AppListAdapter extends BaseAdapter { if (init) { - if (pref_compactlayout == null) { - SharedPreferences prefs = PreferenceManager - .getDefaultSharedPreferences(mContext); - pref_compactlayout = prefs.getBoolean("compactlayout", false); - } - - if (pref_compactlayout == true) { + if (hasCompactLayout()) { iconInstalled.setImageResource(R.drawable.ic_cab_done_holo_dark); iconUpdates.setImageResource(R.drawable.ic_menu_refresh); @@ -118,7 +121,7 @@ abstract public class AppListAdapter extends BaseAdapter { } } - if (pref_compactlayout == true) { + if (hasCompactLayout()) { if (app.hasUpdates && showStatusUpdate()) { iconUpdates.setVisibility(View.VISIBLE);