Merge "Remove the second target for ConnectedApPreference"

This commit is contained in:
TreeHugger Robot
2018-02-07 05:06:23 +00:00
committed by Android (Google) Code Review
4 changed files with 37 additions and 21 deletions

View File

@@ -0,0 +1,27 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2018 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.
-->
<!-- Settings button -->
<ImageView
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/settings_button"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="center"
android:scaleType="center"
android:src="@drawable/ic_settings"
android:contentDescription="@string/settings_button" />

View File

@@ -36,6 +36,7 @@ public class ConnectedAccessPointPreference extends AccessPointPreference implem
public ConnectedAccessPointPreference(AccessPoint accessPoint, Context context,
UserBadgeCache cache, @DrawableRes int iconResId, boolean forSavedNetworks) {
super(accessPoint, context, cache, iconResId, forSavedNetworks);
setWidgetLayoutResource(R.layout.preference_widget_gear_no_bg);
}
public void setOnGearClickListener(OnGearClickListener l) {
@@ -43,26 +44,6 @@ public class ConnectedAccessPointPreference extends AccessPointPreference implem
notifyChanged();
}
@Override
protected int getSecondTargetResId() {
return R.layout.preference_widget_gear;
}
@Override
protected boolean shouldHideSecondTarget() {
return mOnGearClickListener == null;
}
@Override
public void onBindViewHolder(PreferenceViewHolder holder) {
super.onBindViewHolder(holder);
final View gear = holder.findViewById(R.id.settings_button);
if (gear != null) {
gear.setOnClickListener(this);
}
setDividerVisibility(holder, View.VISIBLE);
}
@Override
public void onClick(View v) {
if (v.getId() == R.id.settings_button) {

View File

@@ -884,13 +884,14 @@ public class WifiSettings extends RestrictedSettingsFragment
connectedAp);
// Launch details page on click.
pref.setOnGearClickListener(l -> {
pref.setOnPreferenceClickListener(preference -> {
pref.getAccessPoint().saveWifiState(pref.getExtras());
SettingsActivity activity = (SettingsActivity) WifiSettings.this.getActivity();
activity.startPreferencePanel(this,
WifiNetworkDetailsFragment.class.getName(), pref.getExtras(),
-1 /* resId */, pref.getTitle(), null, 0 /* resultRequestCode */);
return true;
});
pref.refresh();

View File

@@ -16,6 +16,8 @@
package com.android.settings.wifi;
import static com.google.common.truth.Truth.assertThat;
import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.never;
import static org.mockito.Mockito.verify;
@@ -75,4 +77,9 @@ public class ConnectedAccessPointPreferenceTest {
verify(mOnGearClickListener, never()).onGearClick(mConnectedAccessPointPreference);
}
@Test
public void testWidgetLayoutPreference() {
assertThat(mConnectedAccessPointPreference.getWidgetLayoutResource()).isEqualTo(
R.layout.preference_widget_gear_no_bg);
}
}