aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--main/res/values-es/strings.xml8
-rw-r--r--main/res/values-lv/strings.xml2
-rw-r--r--main/res/values/changelog_release.xml2
-rw-r--r--main/src/cgeo/geocaching/MainActivity.java5
-rw-r--r--main/src/cgeo/geocaching/filter/FilterUserInterface.java5
-rw-r--r--main/src/cgeo/geocaching/utils/DatabaseBackupUtils.java7
-rw-r--r--main/src/cgeo/geocaching/utils/TextUtils.java13
7 files changed, 32 insertions, 10 deletions
diff --git a/main/res/values-es/strings.xml b/main/res/values-es/strings.xml
index 6f64efc..890b4c0 100644
--- a/main/res/values-es/strings.xml
+++ b/main/res/values-es/strings.xml
@@ -56,7 +56,7 @@
<string name="log_attended">Asistí</string>
<string name="log_retrieved">Recogido</string>
<string name="log_placed">Depositado</string>
- <string name="log_grabbed">Recogido de alguna parte</string>
+ <string name="log_grabbed">Cogido de otro sitio</string>
<string name="log_movecollection">Mover a la colección</string>
<string name="log_moveinventory">Mover al inventario</string>
<string name="log_maintained">Mantenimiento efectuado</string>
@@ -243,7 +243,7 @@
<item quantity="other">%d minutos</item>
</plurals>
<string name="caches_store_offline">Usar sin conexión luego</string>
- <string name="caches_store_selected">Almacenamiento seleccionado</string>
+ <string name="caches_store_selected">Guardar seleccionados</string>
<string name="caches_history">Historial</string>
<string name="caches_on_map">Ver en mapa</string>
<string name="caches_sort">Ordenar</string>
@@ -526,7 +526,7 @@
<string name="feature_online_logging">Registro online</string>
<string name="feature_log_images">Adjuntar imágenes a los registros</string>
<string name="feature_watch_list">Lista de seguimiento</string>
- <string name="feature_own_coordinates">Almacenamiento de coordenadas modificadas</string>
+ <string name="feature_own_coordinates">Almacenar coordenadas modificadas</string>
<string name="feature_search_keyword">Buscar por palabra clave</string>
<string name="feature_search_live_map">Mapa en vivo</string>
<string name="feature_search_center">Búsqueda por posición</string>
@@ -1086,7 +1086,7 @@
<string name="attribute_arithmetic_no">No es un problema aritmético</string>
<string name="attribute_other_cache_yes">Caché de otro tipo</string>
<string name="attribute_other_cache_no">No es caché de otro tipo</string>
- <string name="attribute_ask_owner_yes">Pregunta al propietario las las condiciones iniciales</string>
+ <string name="attribute_ask_owner_yes">Pregunta al propietario las condiciones iniciales</string>
<string name="attribute_ask_owner_no">No es necesario preguntar al propietario las condiciones iniciales</string>
<string name="attribute_unknown_yes">Hay un atributo desconocido</string>
<string name="attribute_unknown_no">No hay atributo desconocido</string>
diff --git a/main/res/values-lv/strings.xml b/main/res/values-lv/strings.xml
index 436024f..4b047fd 100644
--- a/main/res/values-lv/strings.xml
+++ b/main/res/values-lv/strings.xml
@@ -559,7 +559,7 @@
<string name="cache_dialog_loading_details_status_cache">Apkopo datus</string>
<string name="cache_dialog_loading_details_status_render">Gatavo attēlošanai</string>
<string name="cache_dialog_offline_save_title">Bezsaistes režīmā</string>
- <string name="cache_dialog_offline_save_message">Saglabā slēpni bezsaistes lietošanai...</string>
+ <string name="cache_dialog_offline_save_message">Saglabā slēpni bezsaistes lietošanai…</string>
<string name="cache_dialog_offline_drop_title">Bezsaistes režīmā</string>
<string name="cache_dialog_offline_drop_message">Notiek slēpņa izdzēšana no ierīces atmiņas…</string>
<string name="cache_dialog_refresh_title">Atjaunot</string>
diff --git a/main/res/values/changelog_release.xml b/main/res/values/changelog_release.xml
index b0a7286..0930567 100644
--- a/main/res/values/changelog_release.xml
+++ b/main/res/values/changelog_release.xml
@@ -4,6 +4,8 @@
<string name="changelog_release" translatable="false">\n
<b>Next release</b>\n
· Fix: Crash exporting GPX for lab caches\n
+ · Fix: Crash restoring non-existing database backup\n
+ · Fix: Bad sort order for filter names in some languages\n
\n
\n
<b>2015.01.20:</b>\n
diff --git a/main/src/cgeo/geocaching/MainActivity.java b/main/src/cgeo/geocaching/MainActivity.java
index 85ae585..45ce698 100644
--- a/main/src/cgeo/geocaching/MainActivity.java
+++ b/main/src/cgeo/geocaching/MainActivity.java
@@ -70,6 +70,7 @@ import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.TextView;
+import java.text.Collator;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
@@ -463,11 +464,11 @@ public class MainActivity extends AbstractActionBarActivity {
sorted.addAll(Arrays.asList(CacheType.values()));
sorted.removeAll(cacheTypes);
+ final Collator collator = TextUtils.getCollator();
Collections.sort(sorted, new Comparator<CacheType>() {
-
@Override
public int compare(final CacheType left, final CacheType right) {
- return left.getL10n().compareToIgnoreCase(right.getL10n());
+ return collator.compare(left.getL10n(), right.getL10n());
}
});
diff --git a/main/src/cgeo/geocaching/filter/FilterUserInterface.java b/main/src/cgeo/geocaching/filter/FilterUserInterface.java
index 590a726..2d7dafc 100644
--- a/main/src/cgeo/geocaching/filter/FilterUserInterface.java
+++ b/main/src/cgeo/geocaching/filter/FilterUserInterface.java
@@ -5,6 +5,7 @@ import cgeo.geocaching.R;
import cgeo.geocaching.enumerations.CacheType;
import cgeo.geocaching.settings.Settings;
import cgeo.geocaching.utils.Log;
+import cgeo.geocaching.utils.TextUtils;
import rx.functions.Action1;
@@ -14,6 +15,7 @@ import android.content.DialogInterface;
import android.content.res.Resources;
import android.widget.ArrayAdapter;
+import java.text.Collator;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
@@ -62,11 +64,12 @@ public final class FilterUserInterface {
register(R.string.caches_filter_rating, RatingFilter.class);
// sort by localized names
+ final Collator collator = TextUtils.getCollator();
Collections.sort(registry, new Comparator<FactoryEntry>() {
@Override
public int compare(final FactoryEntry lhs, final FactoryEntry rhs) {
- return lhs.name.compareToIgnoreCase(rhs.name);
+ return collator.compare(lhs.name, rhs.name);
}
});
diff --git a/main/src/cgeo/geocaching/utils/DatabaseBackupUtils.java b/main/src/cgeo/geocaching/utils/DatabaseBackupUtils.java
index e7e793f..ab27264 100644
--- a/main/src/cgeo/geocaching/utils/DatabaseBackupUtils.java
+++ b/main/src/cgeo/geocaching/utils/DatabaseBackupUtils.java
@@ -32,6 +32,9 @@ public class DatabaseBackupUtils {
* calling activity
*/
public static void restoreDatabase(final Activity activity) {
+ if (!hasBackup()) {
+ return;
+ }
final Resources res = activity.getResources();
final ProgressDialog dialog = ProgressDialog.show(activity, res.getString(R.string.init_backup_restore), res.getString(R.string.init_restore_running), true, false);
final AtomicBoolean restoreSuccessful = new AtomicBoolean(false);
@@ -44,8 +47,8 @@ public class DatabaseBackupUtils {
@Override
public void call() {
dialog.dismiss();
- boolean restored = restoreSuccessful.get();
- String message = restored ? res.getString(R.string.init_restore_success) : res.getString(R.string.init_restore_failed);
+ final boolean restored = restoreSuccessful.get();
+ final String message = restored ? res.getString(R.string.init_restore_success) : res.getString(R.string.init_restore_failed);
Dialogs.message(activity, R.string.init_backup_restore, message);
if (activity instanceof MainActivity) {
((MainActivity) activity).updateCacheCounter();
diff --git a/main/src/cgeo/geocaching/utils/TextUtils.java b/main/src/cgeo/geocaching/utils/TextUtils.java
index 04a9007..9fc960c 100644
--- a/main/src/cgeo/geocaching/utils/TextUtils.java
+++ b/main/src/cgeo/geocaching/utils/TextUtils.java
@@ -8,6 +8,7 @@ import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
import org.eclipse.jdt.annotation.Nullable;
import java.nio.charset.Charset;
+import java.text.Collator;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import java.util.zip.CRC32;
@@ -183,4 +184,16 @@ public final class TextUtils {
checksum.update(input.getBytes(CHARSET_UTF8));
return checksum.getValue();
}
+
+ /**
+ * Build a Collator instance appropriate for comparing strings using the default locale while ignoring the casing.
+ *
+ * @return a collator
+ */
+ public static Collator getCollator() {
+ final Collator collator = Collator.getInstance();
+ collator.setDecomposition(Collator.CANONICAL_DECOMPOSITION);
+ collator.setStrength(Collator.TERTIARY);
+ return collator;
+ }
}