Compare commits

...

4 Commits

Author SHA1 Message Date
Greyson Parrelli
0da6c83ce4 Bump version to 4.78.2 2020-11-18 19:52:48 -05:00
Greyson Parrelli
184b7db43c Updated language translations. 2020-11-18 19:51:15 -05:00
Greyson Parrelli
e442e34c1b More reliably setup initial preferences. 2020-11-18 19:47:27 -05:00
Greyson Parrelli
011efb0ce7 Request READ_PHONE_NUMBERS permission when necessary. 2020-11-18 19:47:27 -05:00
7 changed files with 37 additions and 11 deletions

View File

@@ -95,8 +95,8 @@ protobuf {
}
}
def canonicalVersionCode = 742
def canonicalVersionName = "4.78.1"
def canonicalVersionCode = 743
def canonicalVersionName = "4.78.2"
def postFixSize = 10
def abiPostFix = ['universal' : 0,

View File

@@ -35,6 +35,7 @@
<uses-permission android:name="android.permission.SEND_SMS"/>
<uses-permission android:name="android.permission.WRITE_SMS"/>
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.READ_PHONE_NUMBERS" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"
android:maxSdkVersion="28" />

View File

@@ -34,6 +34,11 @@ public final class AppInitialization {
TextSecurePreferences.setJobManagerVersion(context, JobManager.CURRENT_VERSION);
TextSecurePreferences.setLastExperienceVersionCode(context, Util.getCanonicalVersionCode());
TextSecurePreferences.setHasSeenStickerIntroTooltip(context, true);
TextSecurePreferences.setPasswordDisabled(context, true);
TextSecurePreferences.setLastExperienceVersionCode(context, Util.getCanonicalVersionCode());
TextSecurePreferences.setReadReceiptsEnabled(context, true);
TextSecurePreferences.setTypingIndicatorsEnabled(context, true);
TextSecurePreferences.setHasSeenWelcomeScreen(context, false);
ApplicationDependencies.getMegaphoneRepository().onFirstEverAppLaunch();
SignalStore.onFirstEverAppLaunch();
ApplicationDependencies.getJobManager().add(StickerPackDownloadJob.forInstall(BlessedPacks.ZOZO.getPackId(), BlessedPacks.ZOZO.getPackKey(), false));

View File

@@ -66,12 +66,6 @@ public class PassphraseCreateActivity extends PassphraseActivity {
IdentityKeyUtil.generateIdentityKeys(PassphraseCreateActivity.this);
VersionTracker.updateLastSeenVersion(PassphraseCreateActivity.this);
TextSecurePreferences.setLastExperienceVersionCode(PassphraseCreateActivity.this, Util.getCanonicalVersionCode());
TextSecurePreferences.setPasswordDisabled(PassphraseCreateActivity.this, true);
TextSecurePreferences.setReadReceiptsEnabled(PassphraseCreateActivity.this, true);
TextSecurePreferences.setTypingIndicatorsEnabled(PassphraseCreateActivity.this, true);
TextSecurePreferences.setHasSeenWelcomeScreen(PassphraseCreateActivity.this, false);
return null;
}

View File

@@ -3,6 +3,7 @@ package org.thoughtcrime.securesms.registration.fragments;
import android.Manifest;
import android.annotation.SuppressLint;
import android.content.Context;
import android.os.Build;
import android.os.Bundle;
import android.text.TextUtils;
import android.view.LayoutInflater;
@@ -12,6 +13,7 @@ import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.annotation.RequiresApi;
import androidx.annotation.StringRes;
import androidx.core.content.ContextCompat;
import androidx.fragment.app.FragmentActivity;
@@ -41,9 +43,18 @@ public final class WelcomeFragment extends BaseRegistrationFragment {
Manifest.permission.WRITE_EXTERNAL_STORAGE,
Manifest.permission.READ_EXTERNAL_STORAGE,
Manifest.permission.READ_PHONE_STATE };
@RequiresApi(26)
private static final String[] PERMISSIONS_API_26 = { Manifest.permission.WRITE_CONTACTS,
Manifest.permission.READ_CONTACTS,
Manifest.permission.WRITE_EXTERNAL_STORAGE,
Manifest.permission.READ_EXTERNAL_STORAGE,
Manifest.permission.READ_PHONE_STATE,
Manifest.permission.READ_PHONE_NUMBERS };
@RequiresApi(26)
private static final String[] PERMISSIONS_API_29 = { Manifest.permission.WRITE_CONTACTS,
Manifest.permission.READ_CONTACTS,
Manifest.permission.READ_PHONE_STATE };
Manifest.permission.READ_PHONE_STATE,
Manifest.permission.READ_PHONE_NUMBERS };
private static final @StringRes int RATIONALE = R.string.RegistrationActivity_signal_needs_access_to_your_contacts_and_media_in_order_to_connect_with_friends;
private static final @StringRes int RATIONALE_API_29 = R.string.RegistrationActivity_signal_needs_access_to_your_contacts_in_order_to_connect_with_friends;
private static final int[] HEADERS = { R.drawable.ic_contacts_white_48dp, R.drawable.ic_folder_white_48dp };
@@ -173,7 +184,7 @@ public final class WelcomeFragment extends BaseRegistrationFragment {
private void initializeNumber() {
Optional<Phonenumber.PhoneNumber> localNumber = Optional.absent();
if (Permissions.hasAll(requireContext(), Manifest.permission.READ_PHONE_STATE)) {
if (Permissions.hasAll(requireContext(), Manifest.permission.READ_PHONE_STATE, Manifest.permission.READ_PHONE_NUMBERS)) {
localNumber = Util.getDeviceNumber(requireContext());
}
@@ -198,8 +209,15 @@ public final class WelcomeFragment extends BaseRegistrationFragment {
!TextSecurePreferences.isBackupEnabled(requireContext());
}
@SuppressLint("NewApi")
private static String[] getContinuePermissions(boolean isUserSelectionRequired) {
return isUserSelectionRequired ? PERMISSIONS_API_29 : PERMISSIONS;
if (isUserSelectionRequired) {
return PERMISSIONS_API_29;
} else if (Build.VERSION.SDK_INT >= 26) {
return PERMISSIONS_API_26;
} else {
return PERMISSIONS;
}
}
private static @StringRes int getContinueRationale(boolean isUserSelectionRequired) {

View File

@@ -413,6 +413,7 @@
<string name="DocumentView_unnamed_file">Onbenoemd bestand</string>
<!--DonateMegaphone-->
<string name="DonateMegaphone_donate_to_signal">Aan Signal doneren</string>
<string name="DonateMegaphone_Signal_is_powered_by_people_like_you_show_your_support_today">Signal wordt onder andere gefinancierd door donaties van mensen zoals jij. Zou je ons willen steunen?</string>
<string name="DonateMegaphone_donate">Doneren</string>
<string name="DonateMegaphone_not_now">Niet nu</string>
<!--DozeReminder-->
@@ -2027,6 +2028,9 @@ Signal zal nu toestemming vragen om je contactenlijst te lezen, om na te gaan wi
<string name="preferences_setup_a_username">Gebruikersnaam aanmaken</string>
<string name="configurable_single_select__customize_option">Instelling personaliseren</string>
<!--Internal only preferences-->
<string name="preferences__internal_conversations_and_shortcuts">Gesprekken en snelkoppelingen</string>
<string name="preferences__internal_delete_all_dynamic_shortcuts">Alle dynamische snelkoppelingen wissen</string>
<string name="preferences__internal_click_to_delete_all_dynamic_shortcuts">Tik hier om alle dynamische snelkoppelingen te wissen</string>
<!--****************************************-->
<!--menus-->
<!--****************************************-->

View File

@@ -412,6 +412,7 @@
<string name="DocumentView_unnamed_file">Ficheiro sem nome</string>
<!--DonateMegaphone-->
<string name="DonateMegaphone_donate_to_signal">Doar ao Signal</string>
<string name="DonateMegaphone_Signal_is_powered_by_people_like_you_show_your_support_today">O Signal é feito por pessoas como você. Mostre mesmo hoje o seu apoio!</string>
<string name="DonateMegaphone_donate">Doar</string>
<string name="DonateMegaphone_not_now">Agora não</string>
<!--DozeReminder-->
@@ -2017,6 +2018,9 @@ Mensagem de troca de chaves inválida para esta versão do protocolo.
<string name="preferences_setup_a_username">Defina um nome de utilizador</string>
<string name="configurable_single_select__customize_option">Personalizar opção</string>
<!--Internal only preferences-->
<string name="preferences__internal_conversations_and_shortcuts">Conversas e Atalhos</string>
<string name="preferences__internal_delete_all_dynamic_shortcuts">Elimine todos os atalhos dinâmicos</string>
<string name="preferences__internal_click_to_delete_all_dynamic_shortcuts">Clique para eliminar todos os atalhos dinâmicos</string>
<!--****************************************-->
<!--menus-->
<!--****************************************-->