Show USB flash drive in storage spinner when it's unmounted
Before this change, USB flash drive is removed from storage spinner
when it's unmounted (by option menu 'Eject'), however, USB flash
drive will show in storage spinner when Storage Settings page is
resumed again.
After this change, USB flash drive will show in storage spinner
even if it's unmounted. It will be removed until it's unplugged
from device.
Bug: 225095144
Test: manual visual
Insert / Eject / Mount / unplug an USB flash drive and
observe UI behavior.
Change-Id: I6b81766216c7850b018997f2de12a19d9d8675be
This commit is contained in:
@@ -26,6 +26,7 @@ import android.os.UserManager;
|
||||
import android.os.storage.DiskInfo;
|
||||
import android.os.storage.StorageManager;
|
||||
import android.os.storage.VolumeInfo;
|
||||
import android.util.Log;
|
||||
import android.view.Menu;
|
||||
import android.view.MenuInflater;
|
||||
import android.view.MenuItem;
|
||||
@@ -53,6 +54,8 @@ import java.util.Objects;
|
||||
public class VolumeOptionMenuController implements LifecycleObserver, OnCreateOptionsMenu,
|
||||
OnPrepareOptionsMenu, OnOptionsItemSelected {
|
||||
|
||||
private static final String TAG = "VolumeOptionMenuController";
|
||||
|
||||
@VisibleForTesting
|
||||
MenuItem mRename;
|
||||
@VisibleForTesting
|
||||
@@ -103,6 +106,17 @@ public class VolumeOptionMenuController implements LifecycleObserver, OnCreateOp
|
||||
mFree = menu.findItem(R.id.storage_free);
|
||||
mForget = menu.findItem(R.id.storage_forget);
|
||||
|
||||
updateOptionsMenu();
|
||||
}
|
||||
|
||||
private void updateOptionsMenu() {
|
||||
if (mRename == null || mMount == null || mUnmount == null || mFormat == null
|
||||
|| mFormatAsPortable == null || mFormatAsInternal == null || mMigrate == null
|
||||
|| mFree == null || mForget == null) {
|
||||
Log.d(TAG, "Menu items are not available");
|
||||
return;
|
||||
}
|
||||
|
||||
mRename.setVisible(false);
|
||||
mMount.setVisible(false);
|
||||
mUnmount.setVisible(false);
|
||||
@@ -253,5 +267,7 @@ public class VolumeOptionMenuController implements LifecycleObserver, OnCreateOp
|
||||
|
||||
public void setSelectedStorageEntry(StorageEntry storageEntry) {
|
||||
mStorageEntry = storageEntry;
|
||||
|
||||
updateOptionsMenu();
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user