Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 161697be authored by Yasin Kilicdere's avatar Yasin Kilicdere Committed by Android (Google) Code Review
Browse files

Merge "Update UI to show feedback while creating Guest from Settings." into tm-dev

parents 3ccdcd43 4e31442a
Loading
Loading
Loading
Loading
+25 −11
Original line number Original line Diff line number Diff line
@@ -528,6 +528,30 @@ public class UserSettings extends SettingsPreferenceFragment
        startActivity(intent);
        startActivity(intent);
    }
    }


    private void onAddGuestClicked() {
        final UserCreatingDialog guestCreatingDialog =
                new UserCreatingDialog(getActivity(), /* isGuest= */ true);
        guestCreatingDialog.show();

        ThreadUtils.postOnBackgroundThread(() -> {
            mMetricsFeatureProvider.action(getActivity(), SettingsEnums.ACTION_USER_GUEST_ADD);
            Trace.beginSection("UserSettings.addGuest");
            final UserInfo guest = mUserManager.createGuest(getContext());
            Trace.endSection();

            ThreadUtils.postOnMainThread(() -> {
                guestCreatingDialog.dismiss();
                if (guest == null) {
                    Toast.makeText(getContext(),
                            com.android.settingslib.R.string.add_guest_failed,
                            Toast.LENGTH_SHORT).show();
                    return;
                }
                openUserDetails(guest, true);
            });
        });
    }

    private void onRemoveUserClicked(int userId) {
    private void onRemoveUserClicked(int userId) {
        synchronized (mUserLock) {
        synchronized (mUserLock) {
            if (mRemovingUserId == -1 && !mAddingUser) {
            if (mRemovingUserId == -1 && !mAddingUser) {
@@ -1283,17 +1307,7 @@ public class UserSettings extends SettingsPreferenceFragment
            return true;
            return true;
        } else if (pref == mAddGuest) {
        } else if (pref == mAddGuest) {
            mAddGuest.setEnabled(false); // prevent multiple tap issue
            mAddGuest.setEnabled(false); // prevent multiple tap issue
            mMetricsFeatureProvider.action(getActivity(), SettingsEnums.ACTION_USER_GUEST_ADD);
            onAddGuestClicked();
            Trace.beginSection("UserSettings.addGuest");
            UserInfo guest = mUserManager.createGuest(getContext());
            Trace.endSection();
            if (guest == null) {
                Toast.makeText(getContext(),
                        com.android.settingslib.R.string.add_user_failed,
                        Toast.LENGTH_SHORT).show();
                return true;
            }
            openUserDetails(guest, true);
            return true;
            return true;
        }
        }
        return false;
        return false;