From: Reimar Döffinger Date: Sat, 29 Oct 2016 14:41:07 +0000 (+0200) Subject: Add option to sort downloaded dictionaries. X-Git-Url: http://gitweb.fperrin.net/?p=Dictionary.git;a=commitdiff_plain;h=51adf3a1cb11c9be99558e27162f2eb51c6c62ea Add option to sort downloaded dictionaries. --- diff --git a/res/values/strings.xml b/res/values/strings.xml index 38824a8..818bc83 100644 --- a/res/values/strings.xml +++ b/res/values/strings.xml @@ -15,6 +15,7 @@ Dictionary manager Dictionaries on device Downloadable dictionaries + Sort dictionaries %.1fMB Update! Move to top diff --git a/src/com/hughes/android/dictionary/DictionaryApplication.java b/src/com/hughes/android/dictionary/DictionaryApplication.java index e15dfff..d6db166 100644 --- a/src/com/hughes/android/dictionary/DictionaryApplication.java +++ b/src/com/hughes/android/dictionary/DictionaryApplication.java @@ -564,6 +564,11 @@ public class DictionaryApplication extends Application { PersistentObjectCache.getInstance().write(C.DICTIONARY_CONFIGS, dictionaryConfig); } + public synchronized void sortDictionaries() { + Collections.sort(dictionaryConfig.dictionaryFilesOrdered, uncompressedFilenameComparator); + PersistentObjectCache.getInstance().write(C.DICTIONARY_CONFIGS, dictionaryConfig); + } + public synchronized void deleteDictionary(final DictionaryInfo dictionaryInfo) { while (dictionaryConfig.dictionaryFilesOrdered.remove(dictionaryInfo.uncompressedFilename)) { } diff --git a/src/com/hughes/android/dictionary/DictionaryManagerActivity.java b/src/com/hughes/android/dictionary/DictionaryManagerActivity.java index 6741b9b..0139c47 100644 --- a/src/com/hughes/android/dictionary/DictionaryManagerActivity.java +++ b/src/com/hughes/android/dictionary/DictionaryManagerActivity.java @@ -30,6 +30,7 @@ import android.os.Bundle; import android.os.Environment; import android.os.Handler; import android.preference.PreferenceManager; +import android.support.v4.view.MenuItemCompat; import android.support.v7.app.ActionBar; import android.support.v7.app.ActionBarActivity; import android.support.v7.widget.SearchView; @@ -42,6 +43,7 @@ import android.view.ContextMenu; import android.view.ContextMenu.ContextMenuInfo; import android.view.LayoutInflater; import android.view.Menu; +import android.view.MenuItem; import android.view.View; import android.view.View.OnClickListener; import android.view.ViewGroup; @@ -409,6 +411,16 @@ public class DictionaryManagerActivity extends ActionBarActivity { @Override public boolean onCreateOptionsMenu(final Menu menu) { + final MenuItem sort = menu.add(getString(R.string.sortDicts)); + MenuItemCompat.setShowAsAction(sort, MenuItem.SHOW_AS_ACTION_NEVER); + sort.setOnMenuItemClickListener(new MenuItem.OnMenuItemClickListener() { + public boolean onMenuItemClick(final MenuItem menuItem) { + application.sortDictionaries(); + setMyListAdapater(); + return true; + } + }); + application.onCreateGlobalOptionsMenu(this, menu); return true; }