Use toolbar in editor
am: 15646ce3e2
Change-Id: Ia6ecb04c9d2115d351e1a49c43fc3ee9bfbc53bc
diff --git a/res/layout/contact_editor_activity.xml b/res/layout/contact_editor_activity.xml
index 595f381..326e802 100644
--- a/res/layout/contact_editor_activity.xml
+++ b/res/layout/contact_editor_activity.xml
@@ -19,4 +19,17 @@
android:id="@+id/fragment_container"
android:layout_width="match_parent"
android:layout_height="match_parent"
- android:orientation="vertical"/>
+ android:orientation="vertical">
+
+ <Toolbar
+ android:id="@+id/toolbar"
+ style="@style/EditorActionBarStyle"
+ android:layout_width="match_parent"
+ android:layout_height="?android:attr/actionBarSize"
+ android:background="?android:attr/colorPrimary"
+ android:elevation="4dp"
+ android:navigationContentDescription="@string/cancel_button_content_description"
+ android:navigationIcon="@drawable/ic_close_dk"
+ android:title="@string/contact_editor_title_existing_contact" />
+
+</LinearLayout>
\ No newline at end of file
diff --git a/res/values/strings.xml b/res/values/strings.xml
index f53d970..81871e4 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -564,6 +564,12 @@
<!-- The title of the Edit-Contact screen -->
<string name="edit_contact">Edit contact</string>
+ <!-- Content description for a cancel button. [CHAR LIMIT=NONE] -->
+ <string name="cancel_button_content_description">Cancel</string>
+
+ <!-- Content description for a back button. [CHAR LIMIT=NONE] -->
+ <string name="back_arrow_content_description">Back</string>
+
<!-- Content description for the fake action menu up button as used
inside edit or select. [CHAR LIMIT=NONE] -->
<string name="action_menu_back_from_edit_select">close</string>
diff --git a/res/values/styles.xml b/res/values/styles.xml
index b762177..0d9e44f 100644
--- a/res/values/styles.xml
+++ b/res/values/styles.xml
@@ -19,6 +19,8 @@
<item name="android:listViewStyle">@style/ListViewStyle</item>
<item name="android:actionBarStyle">@style/EditorActionBarStyle</item>
<item name="android:colorButtonNormal">@color/background_primary</item>
+ <item name="android:windowActionBar">false</item>
+ <item name="android:windowNoTitle">true</item>
</style>
<style name="Theme">
@@ -221,6 +223,8 @@
<style name="EditorActionBarStyle" parent="@style/ContactsActionBarStyle">
<item name="android:contentInsetStart">72dp</item>
+ <item name="android:contentInsetStartWithNavigation">72dp</item>
+ <item name="android:titleTextAppearance">@style/ContactsActionBarTitleText</item>
</style>
<!-- When this style was added, android:toolbarStyle was private. Therefore, this style
diff --git a/src/com/android/contacts/activities/ContactEditorActivity.java b/src/com/android/contacts/activities/ContactEditorActivity.java
index 7cbae7a..d38b980 100644
--- a/src/com/android/contacts/activities/ContactEditorActivity.java
+++ b/src/com/android/contacts/activities/ContactEditorActivity.java
@@ -16,7 +16,6 @@
package com.android.contacts.activities;
-import android.app.ActionBar;
import android.app.Dialog;
import android.app.FragmentTransaction;
import android.content.ContentValues;
@@ -27,6 +26,7 @@
import android.util.Log;
import android.view.View;
import android.view.inputmethod.InputMethodManager;
+import android.widget.Toolbar;
import com.android.contacts.ContactSaveService;
import com.android.contacts.ContactsActivity;
@@ -255,6 +255,7 @@
private int mActionBarTitleResId;
private ContactEditor mFragment;
+ private Toolbar mToolbar;
private boolean mFinishActivityOnSaveCompleted;
private DialogManager mDialogManager = new DialogManager(this);
@@ -344,20 +345,15 @@
return;
}
- final ActionBar actionBar = getActionBar();
- if (actionBar != null) {
- if (Intent.ACTION_EDIT.equals(action)) {
- mActionBarTitleResId = R.string.contact_editor_title_existing_contact;
- } else {
- mActionBarTitleResId = R.string.contact_editor_title_new_contact;
- }
- actionBar.setTitle(getResources().getString(mActionBarTitleResId));
- actionBar.setDisplayShowHomeEnabled(true);
- actionBar.setDisplayHomeAsUpEnabled(true);
- actionBar.setHomeAsUpIndicator(R.drawable.ic_close_dk);
- }
-
setContentView(R.layout.contact_editor_activity);
+ mToolbar = (Toolbar) findViewById(R.id.toolbar);
+ if (Intent.ACTION_EDIT.equals(action)) {
+ mActionBarTitleResId = R.string.contact_editor_title_existing_contact;
+ } else {
+ mActionBarTitleResId = R.string.contact_editor_title_new_contact;
+ }
+ mToolbar.setTitle(mActionBarTitleResId);
+ setActionBar(mToolbar);
if (savedState == null) {
// Create the editor and photo selection fragments
@@ -376,7 +372,7 @@
.findFragmentByTag(TAG_EDITOR_FRAGMENT);
final FragmentTransaction fragmentTransaction = getFragmentManager().beginTransaction();
fragmentTransaction.show(getEditorFragment()).commit();
- getActionBar().setTitle(getResources().getString(mActionBarTitleResId));
+ mToolbar.setTitle(mActionBarTitleResId);
}
// Set listeners
@@ -474,6 +470,10 @@
PhotoSourceDialogFragment.show(this, mPhotoMode);
}
+ public Toolbar getToolbar() {
+ return mToolbar;
+ }
+
@Override
public void onRemovePictureChosen() {
getPhotoSelectionHandler().getListener().onRemovePictureChosen();
diff --git a/src/com/android/contacts/editor/ContactEditorFragment.java b/src/com/android/contacts/editor/ContactEditorFragment.java
index 384c163..d0de7b4 100644
--- a/src/com/android/contacts/editor/ContactEditorFragment.java
+++ b/src/com/android/contacts/editor/ContactEditorFragment.java
@@ -17,7 +17,6 @@
package com.android.contacts.editor;
import android.accounts.Account;
-import android.app.ActionBar;
import android.app.Activity;
import android.app.Fragment;
import android.app.LoaderManager;
@@ -55,6 +54,7 @@
import android.widget.LinearLayout;
import android.widget.ListPopupWindow;
import android.widget.Toast;
+import android.widget.Toolbar;
import com.android.contacts.ContactSaveService;
import com.android.contacts.GroupMetaDataLoader;
@@ -1247,10 +1247,11 @@
mHasNewContact, mIsUserProfile, mAccountWithDataSet,
mRawContactIdToDisplayAlone);
if (isEditingReadOnlyRawContact()) {
- final ActionBar actionBar = getEditorActivity().getActionBar();
- if (actionBar != null) {
- actionBar.setTitle(R.string.contact_editor_title_read_only_contact);
- actionBar.setHomeAsUpIndicator(R.drawable.ic_back_arrow);
+ final Toolbar toolbar = getEditorActivity().getToolbar();
+ if (toolbar != null) {
+ toolbar.setTitle(R.string.contact_editor_title_read_only_contact);
+ toolbar.setNavigationIcon(R.drawable.ic_back_arrow);
+ toolbar.setNavigationContentDescription(R.string.back_arrow_content_description);
}
}