Move PhoneNumberFormatter to common.
Bug: 6993891
Change-Id: I2b617a5c57e8f51ecba193613447ec834cfcf6fe
diff --git a/src/com/android/contacts/editor/TextFieldsEditorView.java b/src/com/android/contacts/editor/TextFieldsEditorView.java
index 8558b11..e48ba51 100644
--- a/src/com/android/contacts/editor/TextFieldsEditorView.java
+++ b/src/com/android/contacts/editor/TextFieldsEditorView.java
@@ -41,7 +41,7 @@
import com.android.contacts.model.RawContactDelta.ValuesDelta;
import com.android.contacts.model.account.AccountType.EditField;
import com.android.contacts.model.dataitem.DataKind;
-import com.android.contacts.util.PhoneNumberFormatter;
+import com.android.contacts.common.util.PhoneNumberFormatter;
/**
* Simple editor that handles labels and any {@link EditField} defined for the
diff --git a/src/com/android/contacts/util/PhoneNumberFormatter.java b/src/com/android/contacts/util/PhoneNumberFormatter.java
deleted file mode 100644
index 2a8ac3b..0000000
--- a/src/com/android/contacts/util/PhoneNumberFormatter.java
+++ /dev/null
@@ -1,73 +0,0 @@
-/*
- * Copyright (C) 2011 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.android.contacts.util;
-
-import android.content.Context;
-import android.os.AsyncTask;
-import android.telephony.PhoneNumberFormattingTextWatcher;
-import android.widget.TextView;
-
-import com.android.contacts.common.GeoUtil;
-
-public final class PhoneNumberFormatter {
- private PhoneNumberFormatter() {}
-
- /**
- * Load {@link TextWatcherLoadAsyncTask} in a worker thread and set it to a {@link TextView}.
- */
- private static class TextWatcherLoadAsyncTask extends
- AsyncTask<Void, Void, PhoneNumberFormattingTextWatcher> {
- private final String mCountryCode;
- private final TextView mTextView;
-
- public TextWatcherLoadAsyncTask(String countryCode, TextView textView) {
- mCountryCode = countryCode;
- mTextView = textView;
- }
-
- @Override
- protected PhoneNumberFormattingTextWatcher doInBackground(Void... params) {
- return new PhoneNumberFormattingTextWatcher(mCountryCode);
- }
-
- @Override
- protected void onPostExecute(PhoneNumberFormattingTextWatcher watcher) {
- if (watcher == null || isCancelled()) {
- return; // May happen if we cancel the task.
- }
- // Setting a text changed listener is safe even after the view is detached.
- mTextView.addTextChangedListener(watcher);
-
- // Note changes the user made before onPostExecute() will not be formatted, but
- // once they type the next letter we format the entire text, so it's not a big deal.
- // (And loading PhoneNumberFormattingTextWatcher is usually fast enough.)
- // We could use watcher.afterTextChanged(mTextView.getEditableText()) to force format
- // the existing content here, but that could cause unwanted results.
- // (e.g. the contact editor thinks the user changed the content, and would save
- // when closed even when the user didn't make other changes.)
- }
- }
-
- /**
- * Delay-set {@link PhoneNumberFormattingTextWatcher} to a {@link TextView}.
- */
- public static final void setPhoneNumberFormattingTextWatcher(Context context,
- TextView textView) {
- new TextWatcherLoadAsyncTask(GeoUtil.getCurrentCountryIso(context), textView)
- .executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR, (Void[]) null);
- }
-}