diff options
author | Dirk Hohndel <dirk@hohndel.org> | 2014-08-16 07:09:11 -0600 |
---|---|---|
committer | Dirk Hohndel <dirk@hohndel.org> | 2014-08-16 07:09:11 -0600 |
commit | c58d136d3313692d275c73cdab44b9e71f637f09 (patch) | |
tree | f8956bba9137883b7ea73a0cea499fade9f54fb7 /qt-ui/maintab.cpp | |
parent | bb39a8730bae923e01f8cbcf1384e5dc54c49b2d (diff) | |
download | subsurface-c58d136d3313692d275c73cdab44b9e71f637f09.tar.gz |
Dive edit: allow the user to explicitly clear a GPS location
If the GPS coordinates for a dive were incorrect for some reason and the
user wanted to clear them in order to then re-download / apply GPS
information from the Subsurface webservice, prior to this patch we would
always match the location name and re-populate the GPS coordinates, making
it impossible to clear a GPS location without also changing the location
name.
This patch fixes this - but if you have multiple dives with the incorrect
name / GPS location pair, the next edit to a dive that had the GPS
coordinates cleared will re-populate the GPS coordinates (at that point
Subsurface can no longer tell that this was intentional).
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
Diffstat (limited to 'qt-ui/maintab.cpp')
-rw-r--r-- | qt-ui/maintab.cpp | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/qt-ui/maintab.cpp b/qt-ui/maintab.cpp index e8087c7cc..e403e0b93 100644 --- a/qt-ui/maintab.cpp +++ b/qt-ui/maintab.cpp @@ -1026,9 +1026,12 @@ void MainTab::on_location_textChanged(const QString &text) // If we have GPS data for the location entered, add it. void MainTab::on_location_editingFinished() { + // if we have a location and no GPS data, look up the GPS data; + // but if the GPS data was intentionally cleared then don't if (!currentTrip && !same_string(displayed_dive.location, "") && - ui.coordinates->text().trimmed().isEmpty()) { + ui.coordinates->text().trimmed().isEmpty() && + !(editMode == DIVE && dive_has_gps_location(current_dive))) { struct dive *dive; int i = 0; for_each_dive (i, dive) { |