diff --git a/java/src/com/android/inputmethod/dictionarypack/DictionaryProvider.java b/java/src/com/android/inputmethod/dictionarypack/DictionaryProvider.java index 659fe5c51..308b123e1 100644 --- a/java/src/com/android/inputmethod/dictionarypack/DictionaryProvider.java +++ b/java/src/com/android/inputmethod/dictionarypack/DictionaryProvider.java @@ -243,14 +243,8 @@ public final class DictionaryProvider extends ContentProvider { // Fall through case DICTIONARY_V1_DICT_INFO: final String locale = uri.getLastPathSegment(); - // If LatinIME does not have a dictionary for this locale at all, it will - // send us true for this value. In this case, we may prompt the user for - // a decision about downloading a dictionary even over a metered connection. - final String mayPromptValue = - uri.getQueryParameter(QUERY_PARAMETER_MAY_PROMPT_USER); - final boolean mayPrompt = QUERY_PARAMETER_TRUE.equals(mayPromptValue); final Collection dictFiles = - getDictionaryWordListsForLocale(clientId, locale, mayPrompt); + getDictionaryWordListsForLocale(clientId, locale); // TODO: pass clientId to the following function DictionaryService.updateNowIfNotUpdatedInAVeryLongTime(getContext()); if (null != dictFiles && dictFiles.size() > 0) { @@ -343,11 +337,10 @@ public final class DictionaryProvider extends ContentProvider { * * @param clientId the ID of the client requesting the list * @param locale the locale for which we want the list, as a String - * @param mayPrompt true if we are allowed to prompt the user for arbitration via notification * @return a collection of ids. It is guaranteed to be non-null, but may be empty. */ private Collection getDictionaryWordListsForLocale(final String clientId, - final String locale, final boolean mayPrompt) { + final String locale) { final Context context = getContext(); final Cursor results = MetadataDbHelper.queryInstalledOrDeletingOrAvailableDictionaryMetadata(context, @@ -412,8 +405,7 @@ public final class DictionaryProvider extends ContentProvider { } } else if (MetadataDbHelper.STATUS_AVAILABLE == wordListStatus) { // The locale is the id for the main dictionary. - UpdateHandler.installIfNeverRequested(context, clientId, wordListId, - mayPrompt); + UpdateHandler.installIfNeverRequested(context, clientId, wordListId); continue; } final WordListInfo currentBestMatch = dicts.get(wordListCategory); diff --git a/java/src/com/android/inputmethod/dictionarypack/DownloadOverMeteredDialog.java b/java/src/com/android/inputmethod/dictionarypack/DownloadOverMeteredDialog.java index 91ed673ae..908d931a0 100644 --- a/java/src/com/android/inputmethod/dictionarypack/DownloadOverMeteredDialog.java +++ b/java/src/com/android/inputmethod/dictionarypack/DownloadOverMeteredDialog.java @@ -80,8 +80,7 @@ public final class DownloadOverMeteredDialog extends Activity { @SuppressWarnings("unused") public void onClickAllow(final View v) { UpdateHandler.setDownloadOverMeteredSetting(this, true); - UpdateHandler.installIfNeverRequested(this, mClientId, mWordListToDownload, - false /* mayPrompt */); + UpdateHandler.installIfNeverRequested(this, mClientId, mWordListToDownload); finish(); } } diff --git a/java/src/com/android/inputmethod/dictionarypack/UpdateHandler.java b/java/src/com/android/inputmethod/dictionarypack/UpdateHandler.java index df3fd4060..a02203d31 100644 --- a/java/src/com/android/inputmethod/dictionarypack/UpdateHandler.java +++ b/java/src/com/android/inputmethod/dictionarypack/UpdateHandler.java @@ -907,9 +907,9 @@ public final class UpdateHandler { // list because it may only install the latest version we know about for this specific // word list ID / client ID combination. public static void installIfNeverRequested(final Context context, final String clientId, - final String wordlistId, final boolean mayPrompt) { + final String wordlistId) { Log.i(TAG, "installIfNeverRequested() : ClientId = " + clientId - + " : WordListId = " + wordlistId + " : MayPrompt = " + mayPrompt); + + " : WordListId = " + wordlistId); final String[] idArray = wordlistId.split(DictionaryProvider.ID_CATEGORY_SEPARATOR); // If we have a new-format dictionary id (category:manual_id), then use the // specified category. Otherwise, it is a main dictionary, so force the @@ -942,17 +942,6 @@ public final class UpdateHandler { return; } - if (mayPrompt - && DOWNLOAD_OVER_METERED_SETTING_UNKNOWN - == getDownloadOverMeteredSetting(context)) { - final ConnectivityManager cm = - (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE); - if (ConnectivityManagerCompatUtils.isActiveNetworkMetered(cm)) { - showDictionaryAvailableNotification(context, clientId, installCandidate); - return; - } - } - // We decided against prompting the user for a decision. This may be because we were // explicitly asked not to, or because we are currently on wi-fi anyway, or because we // already know the answer to the question. We'll enqueue a request ; StartDownloadAction @@ -969,14 +958,12 @@ public final class UpdateHandler { final String localeString = installCandidate.getAsString(MetadataDbHelper.LOCALE_COLUMN); // We are in a content provider: we can't do any UI at all. We have to defer the displaying // itself to the service. Also, we only display this when the user does not have a - // dictionary for this language already: we know that from the mayPrompt argument. - if (mayPrompt) { - final Intent intent = new Intent(); - intent.setClass(context, DictionaryService.class); - intent.setAction(DictionaryService.SHOW_DOWNLOAD_TOAST_INTENT_ACTION); - intent.putExtra(DictionaryService.LOCALE_INTENT_ARGUMENT, localeString); - context.startService(intent); - } + // dictionary for this language already. + final Intent intent = new Intent(); + intent.setClass(context, DictionaryService.class); + intent.setAction(DictionaryService.SHOW_DOWNLOAD_TOAST_INTENT_ACTION); + intent.putExtra(DictionaryService.LOCALE_INTENT_ARGUMENT, localeString); + context.startService(intent); Log.i(TAG, "installIfNeverRequested() : StartDownloadAction for " + metadata); actions.execute(context, new LogProblemReporter(TAG)); }