Merge "Make ContactSelectionActivity useable"
diff --git a/res/values-sw600dp-land/donottranslate_config.xml b/res/values-sw600dp-land/donottranslate_config.xml
deleted file mode 100644
index fe09771..0000000
--- a/res/values-sw600dp-land/donottranslate_config.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 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.
-*/
--->
-
-<resources>
- <bool name="config_browse_list_show_images">true</bool>
- <bool name="config_use_two_panes_in_favorites">true</bool>
- <bool name="config_browse_list_reverse_images">false</bool>
-</resources>
diff --git a/res/values-sw600dp/donottranslate_config.xml b/res/values-sw600dp/donottranslate_config.xml
deleted file mode 100644
index bbf37c1..0000000
--- a/res/values-sw600dp/donottranslate_config.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 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.
-*/
--->
-
-<resources>
- <bool name="config_use_two_panes">true</bool>
- <bool name="config_use_two_panes_in_favorites">false</bool>
- <bool name="show_home_icon">true</bool>
- <bool name="config_browse_list_show_images">false</bool>
- <bool name="config_browse_list_reverse_images">false</bool>
-</resources>
diff --git a/res/values/donottranslate_config.xml b/res/values/donottranslate_config.xml
index 0d09967..5fc4f89 100644
--- a/res/values/donottranslate_config.xml
+++ b/res/values/donottranslate_config.xml
@@ -19,25 +19,9 @@
<resources>
- <!-- Flag indicating whether to show images in browse list -->
- <bool name="config_browse_list_show_images">true</bool>
-
- <!-- Whether to show images in the reverse from the default position in the browse list. -->
- <bool name="config_browse_list_reverse_images">false</bool>
-
<!-- If true, phonetic name is included in the contact editor by default -->
<bool name="config_editor_include_phonetic_name">false</bool>
- <!-- If true, Contacts uses two panes: List and Detail. If false, Details are
- shown in their own screens. This flag must be in sync with the layout definitions. -->
- <bool name="config_use_two_panes">false</bool>
-
- <!-- If true, Contacts uses two panes in the favorites view, one for starred and one for
- frequently contacted. If false, only one list is shown with starred on top and frequently
- contacted listed below. Note: This should not be true if config_use_two_panes is
- false. -->
- <bool name="config_use_two_panes_in_favorites">false</bool>
-
<!-- If true, the "home" icon on the action bar will be shown. -->
<bool name="show_home_icon">false</bool>
diff --git a/src/com/android/contacts/NfcHandler.java b/src/com/android/contacts/NfcHandler.java
index 3cd4b08..07b3f06 100644
--- a/src/com/android/contacts/NfcHandler.java
+++ b/src/com/android/contacts/NfcHandler.java
@@ -18,6 +18,7 @@
import android.app.Activity;
import android.content.ContentResolver;
+import android.content.Context;
import android.net.Uri;
import android.nfc.NdefMessage;
import android.nfc.NdefRecord;
@@ -27,8 +28,6 @@
import android.provider.ContactsContract.Profile;
import android.util.Log;
-import com.android.contacts.detail.ContactDetailFragment;
-
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.InputStream;
@@ -45,27 +44,28 @@
private static final String TAG = "ContactNfcHandler";
private static final String PROFILE_LOOKUP_KEY = "profile";
- private final ContactDetailFragment mContactFragment;
+ private final Context mContext;
+ private final Uri mContactUri;
- public static void register(Activity activity, ContactDetailFragment contactFragment) {
+ /* Register NFC handler. This should be called in activities' onCreate(), or similar methods */
+ public static void register(Activity activity, Uri contactUri) {
NfcAdapter adapter = NfcAdapter.getDefaultAdapter(activity.getApplicationContext());
if (adapter == null) {
return; // NFC not available on this device
}
- adapter.setNdefPushMessageCallback(new NfcHandler(contactFragment), activity);
+ adapter.setNdefPushMessageCallback(new NfcHandler(activity, contactUri), activity);
}
- public NfcHandler(ContactDetailFragment contactFragment) {
- mContactFragment = contactFragment;
+ public NfcHandler(Context context, Uri contactUri) {
+ mContext = context;
+ mContactUri = contactUri;
}
@Override
public NdefMessage createNdefMessage(NfcEvent event) {
- // Get the current contact URI
- Uri contactUri = mContactFragment.getUri();
- ContentResolver resolver = mContactFragment.getActivity().getContentResolver();
- if (contactUri != null) {
- final String lookupKey = Uri.encode(contactUri.getPathSegments().get(2));
+ ContentResolver resolver = mContext.getContentResolver();
+ if (mContactUri != null) {
+ final String lookupKey = Uri.encode(mContactUri.getPathSegments().get(2));
final Uri shareUri;
// TODO find out where to get this constant from, or find another way
// of determining this.
diff --git a/src/com/android/contacts/detail/ContactDetailLayoutController.java b/src/com/android/contacts/detail/ContactDetailLayoutController.java
index 098d950..d563baf 100644
--- a/src/com/android/contacts/detail/ContactDetailLayoutController.java
+++ b/src/com/android/contacts/detail/ContactDetailLayoutController.java
@@ -23,7 +23,6 @@
import android.view.View;
import android.view.ViewPropertyAnimator;
-import com.android.contacts.NfcHandler;
import com.android.contacts.R.id;
import com.android.contacts.activities.ContactDetailActivity.FragmentKeyListener;
import com.android.contacts.common.model.Contact;
@@ -73,7 +72,6 @@
.findFragmentById(id.contact_detail_about_fragment);
mDetailFragment.setListener(mContactDetailFragmentListener);
- NfcHandler.register(mActivity, mDetailFragment);
if (savedState != null) {
mContactUri = savedState.getParcelable(KEY_CONTACT_URI);
diff --git a/src/com/android/contacts/list/DefaultContactBrowseListFragment.java b/src/com/android/contacts/list/DefaultContactBrowseListFragment.java
index 3154f8a..335a564 100644
--- a/src/com/android/contacts/list/DefaultContactBrowseListFragment.java
+++ b/src/com/android/contacts/list/DefaultContactBrowseListFragment.java
@@ -100,14 +100,11 @@
protected ContactListAdapter createListAdapter() {
DefaultContactListAdapter adapter = new DefaultContactListAdapter(getContext());
adapter.setSectionHeaderDisplayEnabled(isSectionHeaderDisplayEnabled());
- boolean showPhoto = getResources().getBoolean(R.bool.config_browse_list_show_images);
mContactAllListShowCardFrame = getResources().getBoolean(
R.bool.contact_all_list_show_card_frame);
- adapter.setDisplayPhotos(showPhoto);
- if (showPhoto) {
- boolean reverse = getResources().getBoolean(R.bool.config_browse_list_reverse_images);
- adapter.setPhotoPosition(ContactListItemView.getDefaultPhotoPosition(reverse));
- }
+ adapter.setDisplayPhotos(true);
+ adapter.setPhotoPosition(
+ ContactListItemView.getDefaultPhotoPosition(/* opposite = */ false));
return adapter;
}
diff --git a/src/com/android/contacts/quickcontact/QuickContactActivity.java b/src/com/android/contacts/quickcontact/QuickContactActivity.java
index 5b1fa10..bc7dc1f 100644
--- a/src/com/android/contacts/quickcontact/QuickContactActivity.java
+++ b/src/com/android/contacts/quickcontact/QuickContactActivity.java
@@ -80,6 +80,7 @@
import com.android.contacts.ContactSaveService;
import com.android.contacts.ContactsActivity;
+import com.android.contacts.NfcHandler;
import com.android.contacts.R;
import com.android.contacts.common.CallUtil;
import com.android.contacts.common.Collapser;
@@ -627,6 +628,8 @@
getLoaderManager().destroyLoader(interactionLoaderId);
}
}
+
+ NfcHandler.register(this, mLookupUri);
}
private void runEntranceAnimation() {
@@ -1474,6 +1477,7 @@
return uri;
}
}
+
private void shareContact() {
final String lookupKey = mContactData.getLookupKey();
Uri shareUri = Uri.withAppendedPath(Contacts.CONTENT_VCARD_URI, lookupKey);