Moving JoinContactActivity and updating style
Change-Id: Ie42a751d53f8ad8911bcb796754889514cc665ea
diff --git a/AndroidManifest.xml b/AndroidManifest.xml
index f8fccae..7d1b2c7 100644
--- a/AndroidManifest.xml
+++ b/AndroidManifest.xml
@@ -298,7 +298,7 @@
/>
<!-- An activity for joining contacts -->
- <activity android:name="JoinContactActivity"
+ <activity android:name=".activities.JoinContactActivity"
android:theme="@style/JoinContactActivityTheme"
android:clearTaskOnLaunch="true"
>
diff --git a/res/layout/join_contact_picker.xml b/res/layout/join_contact_picker.xml
new file mode 100644
index 0000000..e0a6c2a
--- /dev/null
+++ b/res/layout/join_contact_picker.xml
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- 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.
+-->
+
+<view
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ class="com.android.contacts.widget.FullHeightLinearLayout"
+ style="@style/ContactPickerLayout"
+ android:paddingLeft="20dip"
+ android:paddingRight="20dip"
+ android:orientation="vertical">
+ <FrameLayout
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:id="@+id/list_container">
+ </FrameLayout>
+</view>
diff --git a/src/com/android/contacts/JoinContactActivity.java b/src/com/android/contacts/activities/JoinContactActivity.java
similarity index 81%
rename from src/com/android/contacts/JoinContactActivity.java
rename to src/com/android/contacts/activities/JoinContactActivity.java
index 5089b8c..388a4ff 100644
--- a/src/com/android/contacts/JoinContactActivity.java
+++ b/src/com/android/contacts/activities/JoinContactActivity.java
@@ -14,14 +14,16 @@
* limitations under the License.
*/
-package com.android.contacts;
+package com.android.contacts.activities;
+import com.android.contacts.R;
import com.android.contacts.list.ContactEntryListFragment;
import com.android.contacts.list.JoinContactListFragment;
import com.android.contacts.list.OnContactPickerActionListener;
import android.app.Activity;
+import android.app.Fragment;
import android.app.FragmentTransaction;
import android.content.Intent;
import android.net.Uri;
@@ -54,11 +56,21 @@
*/
public static final String EXTRA_TARGET_CONTACT_ID = "com.android.contacts.action.CONTACT_ID";
+ private static final String KEY_TARGET_CONTACT_ID = "targetContactId";
+
private long mTargetContactId;
private JoinContactListFragment mListFragment;
@Override
+ public void onAttachFragment(Fragment fragment) {
+ if (fragment instanceof JoinContactListFragment) {
+ mListFragment = (JoinContactListFragment) fragment;
+ setupActionListener();
+ }
+ }
+
+ @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
@@ -72,7 +84,16 @@
return;
}
+ setContentView(R.layout.join_contact_picker);
+
mListFragment = new JoinContactListFragment();
+
+ FragmentTransaction transaction = getFragmentManager().openTransaction();
+ transaction.add(R.id.list_container, mListFragment);
+ transaction.commit();
+ }
+
+ public void setupActionListener() {
mListFragment.setTargetContactId(mTargetContactId);
mListFragment.setOnContactPickerActionListener(new OnContactPickerActionListener() {
@Override
@@ -94,10 +115,18 @@
public void onEditContactAction(Uri contactLookupUri) {
}
});
+ }
- FragmentTransaction transaction = getFragmentManager().openTransaction();
- transaction.add(android.R.id.content, mListFragment);
- transaction.commit();
+ @Override
+ protected void onSaveInstanceState(Bundle outState) {
+ super.onSaveInstanceState(outState);
+ outState.putLong(KEY_TARGET_CONTACT_ID, mTargetContactId);
+ }
+
+ @Override
+ protected void onRestoreInstanceState(Bundle savedInstanceState) {
+ super.onRestoreInstanceState(savedInstanceState);
+ mTargetContactId = savedInstanceState.getLong(KEY_TARGET_CONTACT_ID);
}
@Override
diff --git a/src/com/android/contacts/views/editor/ContactEditorFragment.java b/src/com/android/contacts/views/editor/ContactEditorFragment.java
index 6596d5e..21f185a 100644
--- a/src/com/android/contacts/views/editor/ContactEditorFragment.java
+++ b/src/com/android/contacts/views/editor/ContactEditorFragment.java
@@ -16,8 +16,8 @@
package com.android.contacts.views.editor;
-import com.android.contacts.JoinContactActivity;
import com.android.contacts.R;
+import com.android.contacts.activities.JoinContactActivity;
import com.android.contacts.model.AccountTypes;
import com.android.contacts.model.BaseAccountType;
import com.android.contacts.model.EntityDelta;