DO NOT MERGE - Merge ab/7272582

Bug: 190855093
Merged-In: I1cc3796f31e7db3d8f062436ebc618d93db19822
Change-Id: I2b6c7d579bfa1ce3d3fb4432d92906dc739dde1b
This commit is contained in:
Xin Li
2021-06-14 21:52:00 -07:00
29 changed files with 336 additions and 101 deletions

View File

@@ -25,6 +25,7 @@ import android.content.pm.PackageManager;
import android.net.wifi.WifiManager;
import android.os.Bundle;
import android.text.TextUtils;
import android.view.WindowManager;
import androidx.appcompat.app.AlertDialog;
import androidx.fragment.app.DialogFragment;
@@ -43,6 +44,8 @@ public class WifiScanModeActivity extends FragmentActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
getWindow().addSystemFlags(
WindowManager.LayoutParams.SYSTEM_FLAG_HIDE_NON_SYSTEM_OVERLAY_WINDOWS);
Intent intent = getIntent();
if (savedInstanceState == null) {
if (intent != null && WifiManager.ACTION_REQUEST_SCAN_ALWAYS_AVAILABLE

View File

@@ -75,7 +75,8 @@ public class WifiNetworkDetailsFragment2 extends DashboardFragment implements
// Interval between initiating SavedNetworkTracker scans
private static final long SCAN_INTERVAL_MILLIS = 10_000;
private NetworkDetailsTracker mNetworkDetailsTracker;
@VisibleForTesting
NetworkDetailsTracker mNetworkDetailsTracker;
private HandlerThread mWorkerThread;
private WifiDetailPreferenceController2 mWifiDetailPreferenceController2;
private List<WifiDialog2.WifiDialog2Listener> mWifiDialogListeners = new ArrayList<>();
@@ -125,9 +126,11 @@ public class WifiNetworkDetailsFragment2 extends DashboardFragment implements
@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
MenuItem item = menu.add(0, Menu.FIRST, 0, R.string.wifi_modify);
item.setIcon(com.android.internal.R.drawable.ic_mode_edit);
item.setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS);
if (isEditable()) {
MenuItem item = menu.add(0, Menu.FIRST, 0, R.string.wifi_modify);
item.setIcon(com.android.internal.R.drawable.ic_mode_edit);
item.setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS);
}
super.onCreateOptionsMenu(menu, inflater);
}
@@ -253,6 +256,17 @@ public class WifiNetworkDetailsFragment2 extends DashboardFragment implements
getArguments().getString(KEY_CHOSEN_WIFIENTRY_KEY));
}
private boolean isEditable() {
if (mNetworkDetailsTracker == null) {
return false;
}
final WifiEntry wifiEntry = mNetworkDetailsTracker.getWifiEntry();
if (wifiEntry == null) {
return false;
}
return wifiEntry.isSaved();
}
/**
* API call for refreshing the preferences in this fragment.
*/