Merge "Remove Modify popup menu for non-admin" into tm-qpr-dev am: 7a8a9e4fba
am: fcd8eefe8f
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/20288324 Change-Id: Ia487fc1634e0e1ceb3db2a6db5f8a59bf35dbcc2 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
@@ -34,6 +34,7 @@ import android.net.wifi.WifiManager;
|
|||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
import android.os.Handler;
|
import android.os.Handler;
|
||||||
import android.os.PowerManager;
|
import android.os.PowerManager;
|
||||||
|
import android.os.UserHandle;
|
||||||
import android.os.UserManager;
|
import android.os.UserManager;
|
||||||
import android.provider.Settings;
|
import android.provider.Settings;
|
||||||
import android.telephony.TelephonyManager;
|
import android.telephony.TelephonyManager;
|
||||||
@@ -609,10 +610,7 @@ public class NetworkProviderSettings extends RestrictedSettingsFragment
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (mSelectedWifiEntry.isSaved() && mSelectedWifiEntry.getConnectedState()
|
addModifyMenuIfSuitable(menu, mSelectedWifiEntry);
|
||||||
!= WifiEntry.CONNECTED_STATE_CONNECTED) {
|
|
||||||
menu.add(Menu.NONE, MENU_ID_MODIFY, 0 /* order */, R.string.wifi_modify);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@VisibleForTesting
|
@VisibleForTesting
|
||||||
@@ -632,6 +630,14 @@ public class NetworkProviderSettings extends RestrictedSettingsFragment
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@VisibleForTesting
|
||||||
|
void addModifyMenuIfSuitable(ContextMenu menu, WifiEntry wifiEntry) {
|
||||||
|
if (mIsAdmin && wifiEntry.isSaved()
|
||||||
|
&& wifiEntry.getConnectedState() != WifiEntry.CONNECTED_STATE_CONNECTED) {
|
||||||
|
menu.add(Menu.NONE, MENU_ID_MODIFY, 0 /* order */, R.string.wifi_modify);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
private boolean canForgetNetwork() {
|
private boolean canForgetNetwork() {
|
||||||
return mSelectedWifiEntry.canForget() && !WifiUtils.isNetworkLockedDown(getActivity(),
|
return mSelectedWifiEntry.canForget() && !WifiUtils.isNetworkLockedDown(getActivity(),
|
||||||
mSelectedWifiEntry.getWifiConfiguration());
|
mSelectedWifiEntry.getWifiConfiguration());
|
||||||
@@ -654,6 +660,12 @@ public class NetworkProviderSettings extends RestrictedSettingsFragment
|
|||||||
() -> launchWifiDppConfiguratorActivity(mSelectedWifiEntry));
|
() -> launchWifiDppConfiguratorActivity(mSelectedWifiEntry));
|
||||||
return true;
|
return true;
|
||||||
case MENU_ID_MODIFY:
|
case MENU_ID_MODIFY:
|
||||||
|
if (!mIsAdmin) {
|
||||||
|
Log.e(TAG, "Can't modify Wi-Fi because the user isn't admin.");
|
||||||
|
EventLog.writeEvent(0x534e4554, "237672190", UserHandle.myUserId(),
|
||||||
|
"User isn't admin");
|
||||||
|
return true;
|
||||||
|
}
|
||||||
showDialog(mSelectedWifiEntry, WifiConfigUiBase2.MODE_MODIFY);
|
showDialog(mSelectedWifiEntry, WifiConfigUiBase2.MODE_MODIFY);
|
||||||
return true;
|
return true;
|
||||||
default:
|
default:
|
||||||
|
@@ -17,9 +17,11 @@ package com.android.settings.network;
|
|||||||
|
|
||||||
import static com.android.settings.network.NetworkProviderSettings.MENU_ID_DISCONNECT;
|
import static com.android.settings.network.NetworkProviderSettings.MENU_ID_DISCONNECT;
|
||||||
import static com.android.settings.network.NetworkProviderSettings.MENU_ID_FORGET;
|
import static com.android.settings.network.NetworkProviderSettings.MENU_ID_FORGET;
|
||||||
|
import static com.android.settings.network.NetworkProviderSettings.MENU_ID_MODIFY;
|
||||||
import static com.android.settings.network.NetworkProviderSettings.MENU_ID_SHARE;
|
import static com.android.settings.network.NetworkProviderSettings.MENU_ID_SHARE;
|
||||||
import static com.android.settings.wifi.WifiConfigUiBase2.MODE_CONNECT;
|
import static com.android.settings.wifi.WifiConfigUiBase2.MODE_CONNECT;
|
||||||
import static com.android.settings.wifi.WifiConfigUiBase2.MODE_MODIFY;
|
import static com.android.settings.wifi.WifiConfigUiBase2.MODE_MODIFY;
|
||||||
|
import static com.android.wifitrackerlib.WifiEntry.CONNECTED_STATE_DISCONNECTED;
|
||||||
|
|
||||||
import static com.google.common.truth.Truth.assertThat;
|
import static com.google.common.truth.Truth.assertThat;
|
||||||
|
|
||||||
@@ -732,6 +734,28 @@ public class NetworkProviderSettingsTest {
|
|||||||
verify(mContextMenu, never()).add(anyInt(), eq(MENU_ID_FORGET), anyInt(), anyInt());
|
verify(mContextMenu, never()).add(anyInt(), eq(MENU_ID_FORGET), anyInt(), anyInt());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void addModifyMenuIfSuitable_isAdmin_addMenu() {
|
||||||
|
mNetworkProviderSettings.mIsAdmin = true;
|
||||||
|
when(mWifiEntry.isSaved()).thenReturn(true);
|
||||||
|
when(mWifiEntry.getConnectedState()).thenReturn(CONNECTED_STATE_DISCONNECTED);
|
||||||
|
|
||||||
|
mNetworkProviderSettings.addModifyMenuIfSuitable(mContextMenu, mWifiEntry);
|
||||||
|
|
||||||
|
verify(mContextMenu).add(anyInt(), eq(MENU_ID_MODIFY), anyInt(), anyInt());
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void addModifyMenuIfSuitable_isNotAdmin_notAddMenu() {
|
||||||
|
mNetworkProviderSettings.mIsAdmin = false;
|
||||||
|
when(mWifiEntry.isSaved()).thenReturn(true);
|
||||||
|
when(mWifiEntry.getConnectedState()).thenReturn(CONNECTED_STATE_DISCONNECTED);
|
||||||
|
|
||||||
|
mNetworkProviderSettings.addModifyMenuIfSuitable(mContextMenu, mWifiEntry);
|
||||||
|
|
||||||
|
verify(mContextMenu, never()).add(anyInt(), eq(MENU_ID_MODIFY), anyInt(), anyInt());
|
||||||
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void getNonIndexableKeys_allowedChangeWifiState_keyNotReturned() {
|
public void getNonIndexableKeys_allowedChangeWifiState_keyNotReturned() {
|
||||||
when(mWifiRestriction.isChangeWifiStateAllowed(mContext)).thenReturn(true);
|
when(mWifiRestriction.isChangeWifiStateAllowed(mContext)).thenReturn(true);
|
||||||
|
Reference in New Issue
Block a user