Fix items in StorageProfileFragment can not be clicked

- The root cause is passing wrong userId to StorageProfileFragment

Bug: 141601408
Test: manual
Change-Id: I317109a7d7ee4859ea9b8e3f97f6c9acaaf13256
This commit is contained in:
Raff Tsai
2019-11-21 12:04:06 +08:00
parent 7d2d92df21
commit b5a56789b3

View File

@@ -16,14 +16,15 @@
package com.android.settings.dashboard.profileselector; package com.android.settings.dashboard.profileselector;
import android.content.pm.UserInfo;
import android.os.Bundle; import android.os.Bundle;
import android.os.UserHandle;
import android.os.UserManager; import android.os.UserManager;
import android.os.storage.VolumeInfo; import android.os.storage.VolumeInfo;
import androidx.fragment.app.Fragment; import androidx.fragment.app.Fragment;
import com.android.settings.R; import com.android.settings.R;
import com.android.settings.Utils;
import com.android.settings.deviceinfo.StorageDashboardFragment; import com.android.settings.deviceinfo.StorageDashboardFragment;
import com.android.settings.deviceinfo.StorageProfileFragment; import com.android.settings.deviceinfo.StorageProfileFragment;
@@ -41,16 +42,11 @@ public class ProfileSelectStorageFragment extends ProfileSelectFragment {
final Fragment storageDashboardFragment = new StorageDashboardFragment(); final Fragment storageDashboardFragment = new StorageDashboardFragment();
storageDashboardFragment.setArguments(storageBundle); storageDashboardFragment.setArguments(storageBundle);
UserInfo targetUser = null; final UserHandle userHandle = Utils.getManagedProfile(UserManager.get(getActivity()));
for (UserInfo info : UserManager.get(getActivity()).getUsers()) { if (userHandle != null) {
if (!info.isPrimary()) { storageBundle.putInt(StorageProfileFragment.USER_ID_EXTRA, userHandle.getIdentifier());
targetUser = info;
break;
}
}
if (targetUser != null) {
storageBundle.putInt(StorageProfileFragment.USER_ID_EXTRA, targetUser.id);
} }
final Fragment storageProfileFragment = new StorageProfileFragment(); final Fragment storageProfileFragment = new StorageProfileFragment();
storageProfileFragment.setArguments(storageBundle); storageProfileFragment.setArguments(storageBundle);