Merge "[User Switcher] Ensure unlocked when launching" into tm-qpr-dev am: 6ecea86660
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/19066343 Change-Id: I29e62c8fc9038b705816e1d19eada3228677878e Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
@@ -31,6 +31,7 @@ import androidx.annotation.Nullable;
|
|||||||
|
|
||||||
import com.android.settingslib.users.EditUserInfoController;
|
import com.android.settingslib.users.EditUserInfoController;
|
||||||
import com.android.systemui.R;
|
import com.android.systemui.R;
|
||||||
|
import com.android.systemui.plugins.ActivityStarter;
|
||||||
|
|
||||||
import javax.inject.Inject;
|
import javax.inject.Inject;
|
||||||
|
|
||||||
@@ -55,15 +56,18 @@ public class CreateUserActivity extends Activity {
|
|||||||
private final UserCreator mUserCreator;
|
private final UserCreator mUserCreator;
|
||||||
private final EditUserInfoController mEditUserInfoController;
|
private final EditUserInfoController mEditUserInfoController;
|
||||||
private final IActivityManager mActivityManager;
|
private final IActivityManager mActivityManager;
|
||||||
|
private final ActivityStarter mActivityStarter;
|
||||||
|
|
||||||
private Dialog mSetupUserDialog;
|
private Dialog mSetupUserDialog;
|
||||||
|
|
||||||
@Inject
|
@Inject
|
||||||
public CreateUserActivity(UserCreator userCreator,
|
public CreateUserActivity(UserCreator userCreator,
|
||||||
EditUserInfoController editUserInfoController, IActivityManager activityManager) {
|
EditUserInfoController editUserInfoController, IActivityManager activityManager,
|
||||||
|
ActivityStarter activityStarter) {
|
||||||
mUserCreator = userCreator;
|
mUserCreator = userCreator;
|
||||||
mEditUserInfoController = editUserInfoController;
|
mEditUserInfoController = editUserInfoController;
|
||||||
mActivityManager = activityManager;
|
mActivityManager = activityManager;
|
||||||
|
mActivityStarter = activityStarter;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -104,10 +108,7 @@ public class CreateUserActivity extends Activity {
|
|||||||
|
|
||||||
return mEditUserInfoController.createDialog(
|
return mEditUserInfoController.createDialog(
|
||||||
this,
|
this,
|
||||||
(intent, requestCode) -> {
|
this::startActivity,
|
||||||
mEditUserInfoController.startingActivityForResult();
|
|
||||||
startActivityForResult(intent, requestCode);
|
|
||||||
},
|
|
||||||
null,
|
null,
|
||||||
defaultUserName,
|
defaultUserName,
|
||||||
getString(com.android.settingslib.R.string.user_add_user),
|
getString(com.android.settingslib.R.string.user_add_user),
|
||||||
@@ -160,4 +161,17 @@ public class CreateUserActivity extends Activity {
|
|||||||
Log.e(TAG, "Couldn't switch user.", e);
|
Log.e(TAG, "Couldn't switch user.", e);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Lambda to start activity from an intent. Ensures that device is unlocked first.
|
||||||
|
* @param intent
|
||||||
|
* @param requestCode
|
||||||
|
*/
|
||||||
|
private void startActivity(Intent intent, int requestCode) {
|
||||||
|
mActivityStarter.dismissKeyguardThenExecute(() -> {
|
||||||
|
mEditUserInfoController.startingActivityForResult();
|
||||||
|
startActivityForResult(intent, requestCode);
|
||||||
|
return true;
|
||||||
|
}, /* cancel= */ null, /* afterKeyguardGone= */ true);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user