Clean-up. Removing some code that is no longer needed.
As the Loader/Fragment solution is now mostly working,
we can remove temporary dependencies on the activity
that we have been maintaining during the refactoring.
Change-Id: I092d99cb174e3bb5c27fd78af2d4a4356e05de68
diff --git a/src/com/android/contacts/ContactsApplicationController.java b/src/com/android/contacts/ContactsApplicationController.java
deleted file mode 100644
index 41daf26..0000000
--- a/src/com/android/contacts/ContactsApplicationController.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
- * Copyright (C) 2010 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;
-
-/**
- * An interface that captures various top-level actions that can be performed in
- * the Contacts app. This is a temporary class to be replaced by individual
- * listeners for various actions.
- */
-@Deprecated
-public interface ContactsApplicationController {
-
- /**
- * This is a temporary bridge to the ContactsListActivity indended to be used ONLY
- * during the refactoring phase.
- */
- @Deprecated
- public void onListItemClick(int position, long id);
-
-}
diff --git a/src/com/android/contacts/ContactsListActivity.java b/src/com/android/contacts/ContactsListActivity.java
index f3660fe..03bf5e7 100644
--- a/src/com/android/contacts/ContactsListActivity.java
+++ b/src/com/android/contacts/ContactsListActivity.java
@@ -24,7 +24,6 @@
import com.android.contacts.list.ContactPickerFragment;
import com.android.contacts.list.ContactsIntentResolver;
import com.android.contacts.list.DefaultContactBrowseListFragment;
-import com.android.contacts.list.DefaultContactListFragment;
import com.android.contacts.list.MultiplePhonePickerFragment;
import com.android.contacts.list.OnContactBrowserActionListener;
import com.android.contacts.list.OnContactPickerActionListener;
@@ -35,9 +34,7 @@
import com.android.contacts.list.StrequentContactListFragment;
import com.android.contacts.model.ContactsSource;
import com.android.contacts.model.Sources;
-import com.android.contacts.ui.ContactsPreferences;
import com.android.contacts.ui.ContactsPreferencesActivity;
-import com.android.contacts.ui.ContactsPreferencesActivity.Prefs;
import com.android.contacts.util.AccountSelectionUtil;
import com.android.contacts.widget.ContextMenuAdapter;
@@ -54,16 +51,12 @@
import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
-import android.content.SharedPreferences;
import android.content.UriMatcher;
import android.content.res.Resources;
-import android.database.ContentObserver;
import android.database.Cursor;
import android.database.MatrixCursor;
import android.net.Uri;
import android.os.Bundle;
-import android.os.Handler;
-import android.preference.PreferenceManager;
import android.provider.ContactsContract;
import android.provider.Settings;
import android.provider.Contacts.ContactMethods;
@@ -74,7 +67,6 @@
import android.provider.ContactsContract.Contacts;
import android.provider.ContactsContract.Data;
import android.provider.ContactsContract.Intents;
-import android.provider.ContactsContract.ProviderStatus;
import android.provider.ContactsContract.RawContacts;
import android.provider.ContactsContract.SearchSnippetColumns;
import android.provider.ContactsContract.CommonDataKinds.Email;
@@ -92,9 +84,7 @@
import android.view.MenuItem;
import android.view.View;
import android.view.ViewGroup;
-import android.view.View.OnClickListener;
import android.widget.ArrayAdapter;
-import android.widget.Button;
import android.widget.ListAdapter;
import android.widget.ListView;
import android.widget.TextView;
@@ -108,9 +98,7 @@
* Displays a list of contacts. Usually is embedded into the ContactsActivity.
*/
@SuppressWarnings("deprecation")
-public class ContactsListActivity extends Activity implements View.OnCreateContextMenuListener,
- View.OnClickListener,
- ContactsApplicationController {
+public class ContactsListActivity extends Activity implements View.OnCreateContextMenuListener {
private static final String TAG = "ContactsListActivity";
@@ -350,11 +338,8 @@
public int mMode = MODE_DEFAULT;
private boolean mRunQueriesSynchronously;
protected QueryHandler mQueryHandler;
- private boolean mJustCreated;
- private boolean mSyncEnabled;
Uri mSelectedContactUri;
-// private boolean mDisplayAll;
public boolean mDisplayOnlyPhones;
private String mGroupName;
@@ -420,7 +405,7 @@
protected CallOrSmsInitiator mCallOrSmsInitiator;
public ContactsListActivity() {
- mIntentResolver = new ContactsIntentResolver(this, this);
+ mIntentResolver = new ContactsIntentResolver(this);
}
/**
@@ -434,13 +419,8 @@
protected void onCreate(Bundle icicle) {
super.onCreate(icicle);
- mQueryHandler = new QueryHandler(this);
- mJustCreated = true;
- mSyncEnabled = true;
-
// Resolve the intent
final Intent intent = getIntent();
-
if (!resolveIntent(intent)) {
return;
}
@@ -477,7 +457,6 @@
mSearchMode = mIntentResolver.mSearchMode;
mShowSearchSnippets = mIntentResolver.mShowSearchSnippets;
mInitialFilter = mIntentResolver.mInitialFilter;
- mDisplayOnlyPhones = mIntentResolver.mDisplayOnlyPhones;
mShortcutAction = mIntentResolver.mShortcutAction;
mSearchResultsMode = mIntentResolver.mSearchResultsMode;
mShowNumberOfContacts = mIntentResolver.mShowNumberOfContacts;
@@ -725,10 +704,7 @@
break;
}
default: {
- mListFragment = new DefaultContactListFragment();
- if (!mSearchMode) {
- mListFragment.setSectionHeaderDisplayEnabled(true);
- }
+ throw new UnsupportedOperationException();
}
}
@@ -740,8 +716,6 @@
mListFragment.setPhotoLoaderEnabled(true);
}
- mListFragment.setContactsApplicationController(this);
-
return true;
}
@@ -757,11 +731,6 @@
finish();
}
- @Deprecated
- public void setupListView(ListAdapter adapter, ListView list) {
- mAdapter = (ContactEntryListAdapter)adapter;
- }
-
public int getSummaryDisplayNameColumnIndex() {
if (mDisplayOrder == ContactsContract.Preferences.DISPLAY_ORDER_PRIMARY) {
return SUMMARY_DISPLAY_NAME_PRIMARY_COLUMN_INDEX;
@@ -770,29 +739,10 @@
}
}
- /** {@inheritDoc} */
- public void onClick(View v) {
- int id = v.getId();
- switch (id) {
- // TODO a better way of identifying the button
- case android.R.id.button1: {
- final int position = (Integer)v.getTag();
- Cursor c = mAdapter.getCursor();
- if (c != null) {
- c.moveToPosition(position);
- callContact(c);
- }
- break;
- }
- }
- }
-
@Override
protected void onStop() {
super.onStop();
- mAdapter.changeCursor(null);
-
if (mMode == MODE_QUERY) {
// Make sure the search box is closed
SearchManager searchManager = (SearchManager) getSystemService(Context.SEARCH_SERVICE);
@@ -1121,7 +1071,7 @@
case SUBACTIVITY_DISPLAY_GROUP:
// Mark as just created so we re-run the view query
- mJustCreated = true;
+// mJustCreated = true;
break;
case SUBACTIVITY_FILTER:
@@ -1482,11 +1432,11 @@
* {@link #mDisplayOnlyPhones} flag.
*/
private String getContactSelection() {
- if (mDisplayOnlyPhones) {
- return CLAUSE_ONLY_VISIBLE + " AND " + CLAUSE_ONLY_PHONES;
- } else {
+// if (mDisplayOnlyPhones) {
+// return CLAUSE_ONLY_VISIBLE + " AND " + CLAUSE_ONLY_PHONES;
+// } else {
return CLAUSE_ONLY_VISIBLE;
- }
+// }
}
protected Uri getContactFilterUri(String filter) {
diff --git a/src/com/android/contacts/MultiplePhonePickerActivity.java b/src/com/android/contacts/MultiplePhonePickerActivity.java
index 1b7f23e..b554166 100644
--- a/src/com/android/contacts/MultiplePhonePickerActivity.java
+++ b/src/com/android/contacts/MultiplePhonePickerActivity.java
@@ -32,7 +32,6 @@
import android.os.Handler;
import android.os.Parcelable;
import android.provider.ContactsContract.Intents;
-import android.provider.ContactsContract.ProviderStatus;
import android.provider.ContactsContract.CommonDataKinds.Phone;
import android.text.TextUtils;
import android.util.SparseIntArray;
@@ -54,7 +53,7 @@
/**
* Displays of phone numbers and allows selection of multiple numbers.
*/
-public class MultiplePhonePickerActivity extends ContactsListActivity {
+public class MultiplePhonePickerActivity extends ContactsListActivity implements OnClickListener {
/**
* User selected phone number and id in MODE_PICK_MULTIPLE_PHONES mode.
*/
@@ -146,8 +145,6 @@
}
}
- /** {@inheritDoc} */
- @Override
public void onClick(View v) {
int id = v.getId();
switch (id) {
diff --git a/src/com/android/contacts/list/ContactEntryListFragment.java b/src/com/android/contacts/list/ContactEntryListFragment.java
index 18a1297..e301c3d 100644
--- a/src/com/android/contacts/list/ContactEntryListFragment.java
+++ b/src/com/android/contacts/list/ContactEntryListFragment.java
@@ -19,8 +19,6 @@
import com.android.contacts.ContactEntryListView;
import com.android.contacts.ContactListEmptyView;
import com.android.contacts.ContactPhotoLoader;
-import com.android.contacts.ContactsApplicationController;
-import com.android.contacts.ContactsListActivity;
import com.android.contacts.R;
import com.android.contacts.ui.ContactsPreferences;
import com.android.contacts.widget.ContextMenuAdapter;
@@ -92,7 +90,6 @@
private boolean mSearchResultsMode;
private String mQueryString;
- private ContactsApplicationController mAppController;
private CursorLoader mLoader;
private T mAdapter;
private View mView;
@@ -280,16 +277,6 @@
}
}
- @Deprecated
- public void setContactsApplicationController(ContactsApplicationController controller) {
- mAppController = controller;
- }
-
- @Deprecated
- public ContactsApplicationController getContactsApplicationController() {
- return mAppController;
- }
-
public void setContextMenuAdapter(ContextMenuAdapter adapter) {
mContextMenuAdapter = adapter;
if (mListView != null) {
@@ -336,7 +323,6 @@
mAdapter.setPhotoLoader(mPhotoLoader);
}
- ((ContactsListActivity)getActivity()).setupListView(mAdapter, mListView);
return mView;
}
@@ -404,6 +390,12 @@
mAdapter.setNameHighlightingEnabled(isNameHighlighingEnabled());
}
+ @Override
+ public void onStop() {
+ super.onStop();
+ mAdapter.changeCursor(null);
+ }
+
private boolean isNameHighlighingEnabled() {
// When sort order and display order contradict each other, we want to
// highlight the part of the name used for sorting.
diff --git a/src/com/android/contacts/list/ContactItemListAdapter.java b/src/com/android/contacts/list/ContactItemListAdapter.java
index aca1ac5..733edab 100644
--- a/src/com/android/contacts/list/ContactItemListAdapter.java
+++ b/src/com/android/contacts/list/ContactItemListAdapter.java
@@ -245,7 +245,7 @@
@Override
public View newView(Context context, Cursor cursor, ViewGroup parent) {
final ContactListItemView view = new ContactListItemView(context, null);
- view.setOnCallButtonClickListener(contactsListActivity);
+// view.setOnCallButtonClickListener(contactsListActivity);
return view;
}
diff --git a/src/com/android/contacts/list/ContactsIntentResolver.java b/src/com/android/contacts/list/ContactsIntentResolver.java
index 1aec32d..888994b 100644
--- a/src/com/android/contacts/list/ContactsIntentResolver.java
+++ b/src/com/android/contacts/list/ContactsIntentResolver.java
@@ -16,7 +16,6 @@
package com.android.contacts.list;
-import com.android.contacts.ContactsApplicationController;
import com.android.contacts.ContactsSearchManager;
import com.android.contacts.JoinContactActivity;
import com.android.contacts.R;
@@ -200,11 +199,8 @@
private static final int QUERY_MODE_MAILTO = 1;
private static final int QUERY_MODE_TEL = 2;
- private final ContactsApplicationController mAppController;
-
- public ContactsIntentResolver(Activity context, ContactsApplicationController appController) {
+ public ContactsIntentResolver(Activity context) {
this.mContext = context;
- this.mAppController = appController;
}
public void setIntent(Intent intent) {
diff --git a/src/com/android/contacts/list/DefaultContactListFragment.java b/src/com/android/contacts/list/DefaultContactListFragment.java
deleted file mode 100644
index 1f02432..0000000
--- a/src/com/android/contacts/list/DefaultContactListFragment.java
+++ /dev/null
@@ -1,57 +0,0 @@
-/*
- * Copyright (C) 2010 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.list;
-
-import com.android.contacts.ContactsListActivity;
-import com.android.contacts.R;
-
-import android.view.LayoutInflater;
-import android.view.View;
-import android.view.ViewGroup;
-
-/**
- * Fragment for the default contact list.
- */
-public class DefaultContactListFragment extends ContactEntryListFragment {
-
- @Override
- protected void onItemClick(int position, long id) {
- // TODO instead of delegating the entire procedure to the ContactsListActivity,
- // figure out what the specific action is and delegate the specific action.
- getContactsApplicationController().onListItemClick(position, id);
- }
-
- @Override
- protected ContactEntryListAdapter createListAdapter() {
- ContactItemListAdapter adapter =
- new ContactItemListAdapter((ContactsListActivity)getActivity());
- adapter.setSectionHeaderDisplayEnabled(isSectionHeaderDisplayEnabled());
- adapter.setDisplayPhotos(isPhotoLoaderEnabled());
- return adapter;
- }
-
- @Override
- protected View inflateView(LayoutInflater inflater, ViewGroup container) {
- if (isSearchMode()) {
- return inflater.inflate(R.layout.contacts_search_content, null);
- } else if (isSearchResultsMode()) {
- return inflater.inflate(R.layout.contacts_list_search_results, null);
- } else {
- return inflater.inflate(R.layout.contacts_list_content, null);
- }
- }
-}