aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSammysHP <sven@sammyshp.de>2011-09-15 13:08:55 +0200
committerSamuel Tardieu <sam@rfc1149.net>2011-09-15 13:25:33 +0200
commita911557a58b251a93e6c76606c0aff8e81e72055 (patch)
tree1027a3f75727f88d9d13a767f8dbc11f44ec159c
parent468aab3b54b628800776fe156668d9a9fcb7c5cd (diff)
downloadcgeo-a911557a58b251a93e6c76606c0aff8e81e72055.zip
cgeo-a911557a58b251a93e6c76606c0aff8e81e72055.tar.gz
cgeo-a911557a58b251a93e6c76606c0aff8e81e72055.tar.bz2
Fix #347 (wrong context-menu in cgeocaches)
-rw-r--r--src/cgeo/geocaching/cgeocaches.java11
1 files changed, 10 insertions, 1 deletions
diff --git a/src/cgeo/geocaching/cgeocaches.java b/src/cgeo/geocaching/cgeocaches.java
index 9f670c0..0353420 100644
--- a/src/cgeo/geocaching/cgeocaches.java
+++ b/src/cgeo/geocaching/cgeocaches.java
@@ -546,6 +546,11 @@ public class cgeocaches extends AbstractListActivity {
*/
private boolean contextMenuMoveToList = false;
+ /**
+ * flag indicating whether we shall show the filter context menu
+ */
+ private boolean contextMenuShowFilter = false;
+
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
@@ -1010,11 +1015,15 @@ public class cgeocaches extends AbstractListActivity {
return true;
case SUBMENU_FILTER_TYPE:
selectedFilter = res.getString(R.string.caches_filter_type);
+ contextMenuShowFilter = true;
openContextMenu(getListView());
+ contextMenuShowFilter = false;
return false;
case SUBMENU_FILTER_SIZE:
selectedFilter = res.getString(R.string.caches_filter_size);
+ contextMenuShowFilter = true;
openContextMenu(getListView());
+ contextMenuShowFilter = false;
return false;
case MENU_FILTER_TRACKABLES:
setFilter(new cgFilterByTrackables(res.getString(R.string.caches_filter_track)));
@@ -1071,7 +1080,7 @@ public class cgeocaches extends AbstractListActivity {
Log.w(cgSettings.tag, "cgeocaches.onCreateContextMenu: " + e.toString());
}
- if ((adapterInfo == null || adapterInfo.position < 0) && selectedFilter != null) {
+ if ((adapterInfo == null || adapterInfo.position < 0 || contextMenuShowFilter) && selectedFilter != null) {
// Context menu opened by selecting an option on the filter submenu
if (selectedFilter.equals(res.getString(R.string.caches_filter_size))) {