X-Git-Url: http://gitweb.fperrin.net/?a=blobdiff_plain;f=src%2Fcom%2Fhughes%2Fandroid%2Fdictionary%2FDictionaryActivity.java;h=b02eb7d4fddd1d31a7fbdd72c71333b373d5cd0a;hb=508690e7885b6542f8a0122c9bcbecf7ae9d7859;hp=5ea0e271093673edc0562bbc4dc95b430861a64a;hpb=2a3dcff682048f3385952261496c44e0548356c0;p=Dictionary.git diff --git a/src/com/hughes/android/dictionary/DictionaryActivity.java b/src/com/hughes/android/dictionary/DictionaryActivity.java index 5ea0e27..b02eb7d 100644 --- a/src/com/hughes/android/dictionary/DictionaryActivity.java +++ b/src/com/hughes/android/dictionary/DictionaryActivity.java @@ -108,6 +108,7 @@ import java.util.Locale; import java.util.Random; import java.util.Set; import java.util.concurrent.Executor; +import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; import java.util.concurrent.ThreadFactory; import java.util.concurrent.atomic.AtomicBoolean; @@ -135,7 +136,7 @@ public class DictionaryActivity extends ActionBarActivity { final Handler uiHandler = new Handler(); - private final Executor searchExecutor = Executors.newSingleThreadExecutor(new ThreadFactory() { + private final ExecutorService searchExecutor = Executors.newSingleThreadExecutor(new ThreadFactory() { @Override public Thread newThread(Runnable r) { return new Thread(r, "searchExecutor"); @@ -198,6 +199,7 @@ public class DictionaryActivity extends ActionBarActivity { intent.putExtra(C.DICT_FILE, dictFile.getPath()); intent.putExtra(C.INDEX_SHORT_NAME, indexShortName); intent.putExtra(C.SEARCH_TOKEN, searchToken); + intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_CLEAR_TASK | Intent.FLAG_ACTIVITY_NEW_TASK); return intent; } @@ -701,6 +703,7 @@ public class DictionaryActivity extends ActionBarActivity { currentSearchOperation = null; searchOperation.interrupted.set(true); } + searchExecutor.shutdownNow(); try { Log.d(LOG, "Closing RAF.");