Exit to Settings when removing the only account for a type.
Skip over the ManageAccounts screen which shows the list of accounts for a particular type, if there are no accounts there. Bug: 6630827 Also fix text alignment in top-level of settings. Change-Id: Icd446babc131e7052fc9e95514214fffe6e6e113
This commit is contained in:
66
res/layout/preference_header_item.xml
Normal file
66
res/layout/preference_header_item.xml
Normal file
@@ -0,0 +1,66 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Copyright (C) 2012 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.
|
||||
-->
|
||||
|
||||
<!-- Layout of a header item in PreferenceActivity. -->
|
||||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:minHeight="48dp"
|
||||
android:background="?android:attr/activatedBackgroundIndicator"
|
||||
android:gravity="center_vertical"
|
||||
android:paddingRight="?android:attr/scrollbarSize">
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="@dimen/header_icon_width"
|
||||
android:layout_marginLeft="6dip"
|
||||
android:layout_marginRight="6dip"
|
||||
android:layout_height="wrap_content">
|
||||
<ImageView
|
||||
android:id="@+id/icon"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="center" />
|
||||
</LinearLayout>
|
||||
|
||||
<RelativeLayout
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginLeft="2dip"
|
||||
android:layout_marginRight="6dip"
|
||||
android:layout_marginTop="6dip"
|
||||
android:layout_marginBottom="6dip"
|
||||
android:layout_weight="1">
|
||||
|
||||
<TextView android:id="@+android:id/title"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:singleLine="true"
|
||||
android:textAppearance="?android:attr/textAppearanceMedium"
|
||||
android:ellipsize="marquee"
|
||||
android:fadingEdge="horizontal" />
|
||||
|
||||
<TextView android:id="@+android:id/summary"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_below="@android:id/title"
|
||||
android:layout_alignLeft="@android:id/title"
|
||||
android:textAppearance="?android:attr/textAppearanceSmall"
|
||||
android:ellipsize="end"
|
||||
android:maxLines="2" />
|
||||
|
||||
</RelativeLayout>
|
||||
|
||||
</LinearLayout>
|
@@ -23,14 +23,17 @@
|
||||
android:gravity="center_vertical"
|
||||
android:paddingRight="?android:attr/scrollbarSize">
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/icon"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
<LinearLayout
|
||||
android:layout_width="@dimen/header_icon_width"
|
||||
android:layout_marginLeft="6dip"
|
||||
android:layout_marginRight="6dip"
|
||||
android:layout_gravity="center"
|
||||
android:contentDescription="@null" />
|
||||
android:layout_height="wrap_content">
|
||||
<ImageView
|
||||
android:id="@+id/icon"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="center" />
|
||||
</LinearLayout>
|
||||
|
||||
<RelativeLayout
|
||||
android:layout_width="wrap_content"
|
||||
|
@@ -625,9 +625,9 @@ public class Settings extends PreferenceActivity
|
||||
|
||||
case HEADER_TYPE_NORMAL:
|
||||
view = mInflater.inflate(
|
||||
com.android.internal.R.layout.preference_header_item, parent,
|
||||
R.layout.preference_header_item, parent,
|
||||
false);
|
||||
holder.icon = (ImageView) view.findViewById(com.android.internal.R.id.icon);
|
||||
holder.icon = (ImageView) view.findViewById(R.id.icon);
|
||||
holder.title = (TextView)
|
||||
view.findViewById(com.android.internal.R.id.title);
|
||||
holder.summary = (TextView)
|
||||
|
@@ -23,7 +23,6 @@ import android.content.Context;
|
||||
import android.content.pm.PackageManager;
|
||||
import android.content.res.Resources;
|
||||
import android.graphics.drawable.Drawable;
|
||||
import android.graphics.drawable.ScaleDrawable;
|
||||
import android.util.Log;
|
||||
|
||||
import java.util.ArrayList;
|
||||
@@ -32,7 +31,7 @@ import java.util.Map;
|
||||
|
||||
public class AuthenticatorHelper {
|
||||
|
||||
private static final String TAG = "AccountTypesHelper";
|
||||
private static final String TAG = "AuthenticatorHelper";
|
||||
private Map<String, AuthenticatorDescription> mTypeToAuthDescription
|
||||
= new HashMap<String, AuthenticatorDescription>();
|
||||
private AuthenticatorDescription[] mAuthDescs;
|
||||
|
@@ -333,6 +333,11 @@ public class ManageAccountsSettings extends AccountPreferenceBase
|
||||
}
|
||||
if (mAccountType != null && mFirstAccount != null) {
|
||||
addAuthenticatorSettings();
|
||||
} else {
|
||||
// There's no account, reset to top-level of settings
|
||||
Intent settingsTop = new Intent(android.provider.Settings.ACTION_SETTINGS);
|
||||
settingsTop.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
|
||||
getActivity().startActivity(settingsTop);
|
||||
}
|
||||
onSyncStateUpdated();
|
||||
}
|
||||
|
Reference in New Issue
Block a user