Use analytics activities and fragments
All Contacts's activities and fragments now inherit from
analytics base classes.
Bug: 18039620
Change-Id: Ia550263640f60bc3f7daa7e85cd9f612f0dfc8a8
diff --git a/src/com/android/contacts/activities/ConfirmAddDetailActivity.java b/src/com/android/contacts/activities/ConfirmAddDetailActivity.java
index e3fa7e2..a1ff6d9 100644
--- a/src/com/android/contacts/activities/ConfirmAddDetailActivity.java
+++ b/src/com/android/contacts/activities/ConfirmAddDetailActivity.java
@@ -58,6 +58,7 @@
import android.widget.TextView;
import android.widget.Toast;
+import com.android.contacts.ContactsActivity;
import com.android.contacts.R;
import com.android.contacts.editor.Editor;
import com.android.contacts.editor.EditorUiUtils;
@@ -102,7 +103,7 @@
* Note when there's no accounts, it *is* okay to show the picker / dialog, because the local-only
* contacts are writable.
*/
-public class ConfirmAddDetailActivity extends Activity implements
+public class ConfirmAddDetailActivity extends ContactsActivity implements
DialogManager.DialogShowingViewActivity {
private static final String TAG = "ConfirmAdd"; // The class name is too long to be a tag.
diff --git a/src/com/android/contacts/activities/ContactEditorAccountsChangedActivity.java b/src/com/android/contacts/activities/ContactEditorAccountsChangedActivity.java
index bf3b1c1..197d3bd 100644
--- a/src/com/android/contacts/activities/ContactEditorAccountsChangedActivity.java
+++ b/src/com/android/contacts/activities/ContactEditorAccountsChangedActivity.java
@@ -28,6 +28,7 @@
import android.widget.ListView;
import android.widget.TextView;
+import com.android.contacts.ContactsActivity;
import com.android.contacts.R;
import com.android.contacts.editor.ContactEditorUtils;
import com.android.contacts.common.model.AccountTypeManager;
@@ -45,7 +46,7 @@
* the new contact in. If the activity result doesn't contain intent data, then there is no
* account for this contact.
*/
-public class ContactEditorAccountsChangedActivity extends Activity {
+public class ContactEditorAccountsChangedActivity extends ContactsActivity {
private static final String TAG = ContactEditorAccountsChangedActivity.class.getSimpleName();
diff --git a/src/com/android/contacts/activities/PhotoSelectionActivity.java b/src/com/android/contacts/activities/PhotoSelectionActivity.java
index da0d2e4..a773f11 100644
--- a/src/com/android/contacts/activities/PhotoSelectionActivity.java
+++ b/src/com/android/contacts/activities/PhotoSelectionActivity.java
@@ -19,7 +19,6 @@
import android.animation.AnimatorListenerAdapter;
import android.animation.ObjectAnimator;
import android.animation.PropertyValuesHolder;
-import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.content.res.Configuration;
@@ -33,6 +32,7 @@
import android.widget.FrameLayout.LayoutParams;
import android.widget.ImageView;
+import com.android.contacts.ContactsActivity;
import com.android.contacts.common.ContactPhotoManager;
import com.android.contacts.ContactSaveService;
import com.android.contacts.R;
@@ -44,7 +44,7 @@
/**
* Popup activity for choosing a contact photo within the Contacts app.
*/
-public class PhotoSelectionActivity extends Activity {
+public class PhotoSelectionActivity extends ContactsActivity {
private static final String TAG = "PhotoSelectionActivity";
diff --git a/src/com/android/contacts/editor/ContactEditorFragment.java b/src/com/android/contacts/editor/ContactEditorFragment.java
index ed2520d..a2e32c9 100644
--- a/src/com/android/contacts/editor/ContactEditorFragment.java
+++ b/src/com/android/contacts/editor/ContactEditorFragment.java
@@ -93,6 +93,8 @@
import com.android.contacts.util.HelpUtils;
import com.android.contacts.util.PhoneCapabilityTester;
import com.android.contacts.util.UiClosables;
+import com.android.contacts.commonbind.analytics.AnalyticsFragment;
+
import com.google.common.collect.ImmutableList;
import com.google.common.collect.Lists;
@@ -102,7 +104,7 @@
import java.util.Comparator;
import java.util.List;
-public class ContactEditorFragment extends Fragment implements
+public class ContactEditorFragment extends AnalyticsFragment implements
SplitContactConfirmationDialogFragment.Listener,
AggregationSuggestionEngine.Listener, AggregationSuggestionView.Listener,
RawContactReadOnlyEditorView.Listener {
diff --git a/src/com/android/contacts/editor/SplitContactConfirmationDialogFragment.java b/src/com/android/contacts/editor/SplitContactConfirmationDialogFragment.java
index c790e0b..423052e 100644
--- a/src/com/android/contacts/editor/SplitContactConfirmationDialogFragment.java
+++ b/src/com/android/contacts/editor/SplitContactConfirmationDialogFragment.java
@@ -24,6 +24,7 @@
import android.os.Bundle;
import com.android.contacts.R;
+import com.android.contacts.commonbind.analytics.AnalyticsDialogFragment;
/**
* Shows a dialog asking the user whether to split the contact. The result is passed back
@@ -31,7 +32,7 @@
* has to implement {@link SplitContactConfirmationDialogFragment.Listener}.
* Does not split the contact itself.
*/
-public class SplitContactConfirmationDialogFragment extends DialogFragment {
+public class SplitContactConfirmationDialogFragment extends AnalyticsDialogFragment {
public static final String TAG = "SplitContactConfirmationDialog";
public SplitContactConfirmationDialogFragment() {
diff --git a/src/com/android/contacts/group/GroupBrowseListFragment.java b/src/com/android/contacts/group/GroupBrowseListFragment.java
index 81cc28c..e511d52 100644
--- a/src/com/android/contacts/group/GroupBrowseListFragment.java
+++ b/src/com/android/contacts/group/GroupBrowseListFragment.java
@@ -47,11 +47,12 @@
import com.android.contacts.group.GroupBrowseListAdapter.GroupListItemViewCache;
import com.android.contacts.common.ContactsUtils;
import com.android.contacts.common.list.AutoScrollListView;
+import com.android.contacts.commonbind.analytics.AnalyticsFragment;
/**
* Fragment to display the list of groups.
*/
-public class GroupBrowseListFragment extends Fragment
+public class GroupBrowseListFragment extends AnalyticsFragment
implements OnFocusChangeListener, OnTouchListener {
/**
diff --git a/src/com/android/contacts/group/GroupDetailFragment.java b/src/com/android/contacts/group/GroupDetailFragment.java
index c12595d..b8f8975 100644
--- a/src/com/android/contacts/group/GroupDetailFragment.java
+++ b/src/com/android/contacts/group/GroupDetailFragment.java
@@ -57,11 +57,12 @@
import com.android.contacts.list.GroupMemberTileAdapter;
import com.android.contacts.common.model.AccountTypeManager;
import com.android.contacts.common.model.account.AccountType;
+import com.android.contacts.commonbind.analytics.AnalyticsFragment;
/**
* Displays the details of a group and shows a list of actions possible for the group.
*/
-public class GroupDetailFragment extends Fragment implements OnScrollListener {
+public class GroupDetailFragment extends AnalyticsFragment implements OnScrollListener {
public static interface Listener {
/**
diff --git a/src/com/android/contacts/group/GroupEditorFragment.java b/src/com/android/contacts/group/GroupEditorFragment.java
index 3d13bdd..1b91ab8 100644
--- a/src/com/android/contacts/group/GroupEditorFragment.java
+++ b/src/com/android/contacts/group/GroupEditorFragment.java
@@ -72,13 +72,15 @@
import com.android.contacts.common.model.AccountTypeManager;
import com.android.contacts.common.util.AccountsListAdapter.AccountListFilter;
import com.android.contacts.common.util.ViewUtil;
+import com.android.contacts.commonbind.analytics.AnalyticsFragment;
import com.google.common.base.Objects;
import java.util.ArrayList;
import java.util.List;
-public class GroupEditorFragment extends Fragment implements SelectAccountDialogFragment.Listener {
+public class GroupEditorFragment extends AnalyticsFragment
+ implements SelectAccountDialogFragment.Listener {
private static final String TAG = "GroupEditorFragment";
private static final String LEGACY_CONTACTS_AUTHORITY = "contacts";
diff --git a/src/com/android/contacts/interactions/GroupDeletionDialogFragment.java b/src/com/android/contacts/interactions/GroupDeletionDialogFragment.java
index 2df7fe2..7925ac0 100644
--- a/src/com/android/contacts/interactions/GroupDeletionDialogFragment.java
+++ b/src/com/android/contacts/interactions/GroupDeletionDialogFragment.java
@@ -17,18 +17,18 @@
import android.app.AlertDialog;
import android.app.Dialog;
-import android.app.DialogFragment;
import android.app.FragmentManager;
import android.content.DialogInterface;
import android.os.Bundle;
import com.android.contacts.ContactSaveService;
import com.android.contacts.R;
+import com.android.contacts.commonbind.analytics.AnalyticsDialogFragment;
/**
* A dialog for deleting a group.
*/
-public class GroupDeletionDialogFragment extends DialogFragment {
+public class GroupDeletionDialogFragment extends AnalyticsDialogFragment {
private static final String ARG_GROUP_ID = "groupId";
private static final String ARG_LABEL = "label";
diff --git a/src/com/android/contacts/interactions/GroupNameDialogFragment.java b/src/com/android/contacts/interactions/GroupNameDialogFragment.java
index b0ad9c9..8059fd4 100644
--- a/src/com/android/contacts/interactions/GroupNameDialogFragment.java
+++ b/src/com/android/contacts/interactions/GroupNameDialogFragment.java
@@ -31,11 +31,12 @@
import android.widget.EditText;
import com.android.contacts.R;
+import com.android.contacts.commonbind.analytics.AnalyticsDialogFragment;
/**
* A common superclass for creating and renaming groups.
*/
-public abstract class GroupNameDialogFragment extends DialogFragment {
+public abstract class GroupNameDialogFragment extends AnalyticsDialogFragment {
protected abstract int getTitleResourceId();
protected abstract void initializeGroupLabelEditText(EditText editText);
protected abstract void onCompleted(String groupLabel);
diff --git a/src/com/android/contacts/list/ContactTileListFragment.java b/src/com/android/contacts/list/ContactTileListFragment.java
index 189cfd3..77c22e0 100644
--- a/src/com/android/contacts/list/ContactTileListFragment.java
+++ b/src/com/android/contacts/list/ContactTileListFragment.java
@@ -39,7 +39,7 @@
import com.android.contacts.common.list.ContactTileAdapter.DisplayType;
import com.android.contacts.common.list.ContactTileView;
import com.android.contacts.common.util.ContactListViewUtils;
-import com.android.contacts.common.util.SchedulingUtils;
+import com.android.contacts.commonbind.analytics.AnalyticsFragment;
/**
* Fragment containing a list of starred contacts followed by a list of frequently contacted.
@@ -49,7 +49,7 @@
* (i.e. adding header views to the ListViews in the fragment). This work was started
* by creating {@link ContactTileFrequentFragment}.
*/
-public class ContactTileListFragment extends Fragment {
+public class ContactTileListFragment extends AnalyticsFragment {
private static final String TAG = ContactTileListFragment.class.getSimpleName();
public interface Listener {
diff --git a/src/com/android/contacts/list/ContactsUnavailableFragment.java b/src/com/android/contacts/list/ContactsUnavailableFragment.java
index 70d224a..46f2138 100644
--- a/src/com/android/contacts/list/ContactsUnavailableFragment.java
+++ b/src/com/android/contacts/list/ContactsUnavailableFragment.java
@@ -15,7 +15,6 @@
*/
package com.android.contacts.list;
-import android.app.Fragment;
import android.content.Context;
import android.os.Bundle;
import android.provider.ContactsContract.ProviderStatus;
@@ -29,12 +28,13 @@
import android.widget.TextView;
import com.android.contacts.R;
+import com.android.contacts.commonbind.analytics.AnalyticsFragment;
/**
* Fragment shown when contacts are unavailable. It contains provider status
* messaging as well as instructions for the user.
*/
-public class ContactsUnavailableFragment extends Fragment implements OnClickListener {
+public class ContactsUnavailableFragment extends AnalyticsFragment implements OnClickListener {
private View mView;
private TextView mMessageView;
diff --git a/src/com/android/contacts/preference/ContactsPreferenceActivity.java b/src/com/android/contacts/preference/ContactsPreferenceActivity.java
index d47cb22..3ddffbb 100644
--- a/src/com/android/contacts/preference/ContactsPreferenceActivity.java
+++ b/src/com/android/contacts/preference/ContactsPreferenceActivity.java
@@ -20,18 +20,18 @@
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
-import android.preference.PreferenceActivity;
import android.view.MenuItem;
import com.android.contacts.R;
import com.android.contacts.activities.PeopleActivity;
+import com.android.contacts.commonbind.analytics.AnalyticsPreferenceActivity;
import java.util.List;
/**
* Contacts settings.
*/
-public final class ContactsPreferenceActivity extends PreferenceActivity {
+public final class ContactsPreferenceActivity extends AnalyticsPreferenceActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {