Merge "Enable optional divider in AccessPointPreference" into pi-dev
This commit is contained in:
96
packages/SettingsLib/res/layout/preference_access_point.xml
Normal file
96
packages/SettingsLib/res/layout/preference_access_point.xml
Normal file
@@ -0,0 +1,96 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--
|
||||
Copyright (C) 2017 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.
|
||||
-->
|
||||
|
||||
<!-- Based off preference_two_target.xml with Material ripple moved to parent for full ripple. -->
|
||||
<LinearLayout
|
||||
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:settings="http://schemas.android.com/apk/res-auto"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:minHeight="?android:attr/listPreferredItemHeightSmall"
|
||||
android:gravity="center_vertical"
|
||||
android:background="?android:attr/selectableItemBackground"
|
||||
android:clipToPadding="false">
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="match_parent"
|
||||
android:layout_weight="1"
|
||||
android:gravity="start|center_vertical"
|
||||
android:clipToPadding="false"
|
||||
android:paddingStart="?android:attr/listPreferredItemPaddingStart"
|
||||
android:paddingEnd="?android:attr/listPreferredItemPaddingEnd">
|
||||
|
||||
<LinearLayout
|
||||
android:id="@+id/icon_frame"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:gravity="start|center_vertical"
|
||||
android:minWidth="56dp"
|
||||
android:orientation="horizontal"
|
||||
android:clipToPadding="false"
|
||||
android:paddingTop="4dp"
|
||||
android:paddingBottom="4dp">
|
||||
<android.support.v7.internal.widget.PreferenceImageView
|
||||
android:id="@android:id/icon"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
settings:maxWidth="48dp"
|
||||
settings:maxHeight="48dp" />
|
||||
</LinearLayout>
|
||||
|
||||
<RelativeLayout
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="1"
|
||||
android:paddingTop="16dp"
|
||||
android:paddingBottom="16dp">
|
||||
|
||||
<TextView
|
||||
android:id="@android:id/title"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:singleLine="true"
|
||||
android:textAppearance="?android:attr/textAppearanceListItem"
|
||||
android:ellipsize="marquee" />
|
||||
|
||||
<TextView
|
||||
android:id="@android:id/summary"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_below="@android:id/title"
|
||||
android:layout_alignStart="@android:id/title"
|
||||
android:textAppearance="?android:attr/textAppearanceListItemSecondary"
|
||||
android:textColor="?android:attr/textColorSecondary"
|
||||
android:maxLines="10" />
|
||||
|
||||
</RelativeLayout>
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
<include layout="@layout/preference_two_target_divider" />
|
||||
|
||||
<!-- Preference should place its actual preference widget here. -->
|
||||
<LinearLayout
|
||||
android:id="@android:id/widget_frame"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="match_parent"
|
||||
android:minWidth="64dp"
|
||||
android:gravity="center"
|
||||
android:orientation="vertical" />
|
||||
|
||||
</LinearLayout>
|
||||
@@ -68,6 +68,7 @@ public class AccessPointPreference extends Preference {
|
||||
private final UserBadgeCache mBadgeCache;
|
||||
private final IconInjector mIconInjector;
|
||||
private TextView mTitleView;
|
||||
private boolean mShowDivider;
|
||||
|
||||
private boolean mForSavedNetworks = false;
|
||||
private AccessPoint mAccessPoint;
|
||||
@@ -115,7 +116,8 @@ public class AccessPointPreference extends Preference {
|
||||
int iconResId, boolean forSavedNetworks, StateListDrawable frictionSld,
|
||||
int level, IconInjector iconInjector) {
|
||||
super(context);
|
||||
setWidgetLayoutResource(R.layout.access_point_friction_widget);
|
||||
setLayoutResource(R.layout.preference_access_point);
|
||||
setWidgetLayoutResource(getWidgetLayoutResourceId());
|
||||
mBadgeCache = cache;
|
||||
mAccessPoint = accessPoint;
|
||||
mForSavedNetworks = forSavedNetworks;
|
||||
@@ -128,6 +130,10 @@ public class AccessPointPreference extends Preference {
|
||||
.getDimensionPixelSize(R.dimen.wifi_preference_badge_padding);
|
||||
}
|
||||
|
||||
protected int getWidgetLayoutResourceId() {
|
||||
return R.layout.access_point_friction_widget;
|
||||
}
|
||||
|
||||
public AccessPoint getAccessPoint() {
|
||||
return mAccessPoint;
|
||||
}
|
||||
@@ -154,6 +160,18 @@ public class AccessPointPreference extends Preference {
|
||||
|
||||
ImageView frictionImageView = (ImageView) view.findViewById(R.id.friction_icon);
|
||||
bindFrictionImage(frictionImageView);
|
||||
|
||||
final View divider = view.findViewById(R.id.two_target_divider);
|
||||
divider.setVisibility(shouldShowDivider() ? View.VISIBLE : View.INVISIBLE);
|
||||
}
|
||||
|
||||
public boolean shouldShowDivider() {
|
||||
return mShowDivider;
|
||||
}
|
||||
|
||||
public void setShowDivider(boolean showDivider) {
|
||||
mShowDivider = showDivider;
|
||||
notifyChanged();
|
||||
}
|
||||
|
||||
protected void updateIcon(int level, Context context) {
|
||||
|
||||
Reference in New Issue
Block a user