diff options
Diffstat (limited to 'main/src/cgeo/geocaching/EditWaypointActivity.java')
| -rw-r--r-- | main/src/cgeo/geocaching/EditWaypointActivity.java | 20 |
1 files changed, 11 insertions, 9 deletions
diff --git a/main/src/cgeo/geocaching/EditWaypointActivity.java b/main/src/cgeo/geocaching/EditWaypointActivity.java index 9acc9ed..ea3a966 100644 --- a/main/src/cgeo/geocaching/EditWaypointActivity.java +++ b/main/src/cgeo/geocaching/EditWaypointActivity.java @@ -81,8 +81,8 @@ public class EditWaypointActivity extends AbstractActivity { else { ((EditText) findViewById(R.id.note)).setText(StringUtils.trimToEmpty(waypoint.getNote())); } - - setUploadingCheckBoxVisibleByConnector(ConnectorFactory.getConnector(geocode)); + cgCache cache = cgData.loadCache(geocode, LoadFlags.LOAD_CACHE_ONLY); + setCoordsCheckBoxesVisibility(ConnectorFactory.getConnector(geocode), cache); } if (own) { @@ -160,10 +160,8 @@ public class EditWaypointActivity extends AbstractActivity { if (geocode != null) { cgCache cache = cgData.loadCache(geocode, LoadFlags.LOAD_CACHE_OR_DB); - if (cache != null && (cache.getType() == CacheType.MYSTERY || cache.getType() == CacheType.MULTI)) { - IConnector con = ConnectorFactory.getConnector(geocode); - setUploadingCheckBoxVisibleByConnector(con); - } + IConnector con = ConnectorFactory.getConnector(geocode); + setCoordsCheckBoxesVisibility(con, cache); } initializeDistanceUnitSelector(); @@ -171,9 +169,13 @@ public class EditWaypointActivity extends AbstractActivity { disableSuggestions((EditText) findViewById(R.id.distance)); } - private void setUploadingCheckBoxVisibleByConnector(IConnector con) { - if (con.supportsOwnCoordinates()) { - findViewById(R.id.uploadCoordsToWebsiteCheckBox).setVisibility(View.VISIBLE); + private void setCoordsCheckBoxesVisibility(IConnector con, cgCache cache) { + if (cache != null && (cache.getType() == CacheType.MYSTERY || cache.getType() == CacheType.MULTI)) { + findViewById(R.id.setAsCacheCoordsLayout).setVisibility(View.VISIBLE); + findViewById(R.id.uploadCoordsToWebsiteLayout).setVisibility(con.supportsOwnCoordinates() ? View.VISIBLE : View.GONE); + } else { + findViewById(R.id.setAsCacheCoordsLayout).setVisibility(View.GONE); + findViewById(R.id.uploadCoordsToWebsiteLayout).setVisibility(View.GONE); } } |
