Merge branch 'main' into wch423/larger-qr-code

This commit is contained in:
adb
2026-01-15 18:59:13 +01:00
committed by GitHub
@@ -35,6 +35,7 @@ import org.thoughtcrime.securesms.qr.QrCodeHandler;
import org.thoughtcrime.securesms.qr.RegistrationQrActivity;
import org.thoughtcrime.securesms.service.GenericForegroundService;
import org.thoughtcrime.securesms.service.NotificationController;
import org.thoughtcrime.securesms.util.Prefs;
import org.thoughtcrime.securesms.util.StorageUtil;
import org.thoughtcrime.securesms.util.StreamUtil;
import org.thoughtcrime.securesms.util.Util;
@@ -76,8 +77,7 @@ public class WelcomeActivity extends BaseActionBarActivity implements DcEventCen
.setNegativeButton(R.string.cancel, null)
.create();
view.findViewById(R.id.add_as_second_device_button).setOnClickListener((v) -> {
startAddAsSecondDeviceActivity();
signInDialog.dismiss();
showSignInDialogWithPermission(signInDialog);
});
view.findViewById(R.id.backup_button).setOnClickListener((v) -> {
startImportBackup();
@@ -93,6 +93,28 @@ public class WelcomeActivity extends BaseActionBarActivity implements DcEventCen
DcHelper.maybeShowMigrationError(this);
}
private void showSignInDialogWithPermission(AlertDialog signInDialog) {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU
&& !Prefs.getBooleanPreference(this, Prefs.ASKED_FOR_NOTIFICATION_PERMISSION, false)) {
Prefs.setBooleanPreference(this, Prefs.ASKED_FOR_NOTIFICATION_PERMISSION, true);
Permissions.with(this)
.request(Manifest.permission.POST_NOTIFICATIONS)
.ifNecessary()
.onAllGranted(() -> {
startAddAsSecondDeviceActivity();
signInDialog.dismiss();
})
.onAnyDenied(() -> {
startAddAsSecondDeviceActivity();
signInDialog.dismiss();
})
.execute();
} else {
startAddAsSecondDeviceActivity();
signInDialog.dismiss();
}
}
protected void initializeActionBar() {
ActionBar supportActionBar = getSupportActionBar();
if (supportActionBar == null) throw new AssertionError();