From 705f49dfbb8c1853b1d7e2a0d4ee57f21d70a9b2 Mon Sep 17 00:00:00 2001 From: Bananeweizen Date: Sat, 14 Sep 2013 17:33:12 +0200 Subject: fix #3257: Switch from history to other list by title click --- main/src/cgeo/geocaching/CacheListActivity.java | 12 ++++------ .../geocaching/enumerations/CacheListType.java | 27 ++++++++++++++-------- 2 files changed, 22 insertions(+), 17 deletions(-) (limited to 'main') diff --git a/main/src/cgeo/geocaching/CacheListActivity.java b/main/src/cgeo/geocaching/CacheListActivity.java index c4c7f6e..0f44f86 100644 --- a/main/src/cgeo/geocaching/CacheListActivity.java +++ b/main/src/cgeo/geocaching/CacheListActivity.java @@ -435,7 +435,7 @@ public class CacheListActivity extends AbstractListActivity implements FilteredA @Override public void onClick(View v) { - selectList(v); + selectList(); } }); @@ -735,7 +735,7 @@ public class CacheListActivity extends AbstractListActivity implements FilteredA invalidateOptionsMenuCompatible(); return false; case MENU_SWITCH_LIST: - selectList(null); + selectList(); invalidateOptionsMenuCompatible(); return false; case MENU_FILTER: @@ -1444,12 +1444,8 @@ public class CacheListActivity extends AbstractListActivity implements FilteredA } } - /** - * @param view - * unused here but needed since this method is referenced from XML layout - */ - public void selectList(View view) { - if (type != CacheListType.OFFLINE) { + public void selectList() { + if (!type.canSwitch) { return; } new StoredList.UserInterface(this).promptForListSelection(R.string.list_title, getListSwitchingRunnable()); diff --git a/main/src/cgeo/geocaching/enumerations/CacheListType.java b/main/src/cgeo/geocaching/enumerations/CacheListType.java index 641947d..b75c118 100644 --- a/main/src/cgeo/geocaching/enumerations/CacheListType.java +++ b/main/src/cgeo/geocaching/enumerations/CacheListType.java @@ -1,13 +1,22 @@ package cgeo.geocaching.enumerations; public enum CacheListType { - OFFLINE, - HISTORY, - NEAREST, - COORDINATE, - KEYWORD, - ADDRESS, - USERNAME, - OWNER, - MAP; + OFFLINE(true), + HISTORY(true), + NEAREST(false), + COORDINATE(false), + KEYWORD(false), + ADDRESS(false), + USERNAME(false), + OWNER(false), + MAP(false); + + /** + * whether or not this list allows switching to another list + */ + public final boolean canSwitch; + + private CacheListType(final boolean canSwitch) { + this.canSwitch = canSwitch; + } } -- cgit v1.1