Skip to content

Commit d8193c4

Browse files
Merge pull request #1047 from session-foundation/release/1.21.3
Release/1.21.3
2 parents 1dc8812 + 5699be9 commit d8193c4

37 files changed

+361
-156
lines changed

app/build.gradle

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,8 @@ configurations.configureEach {
1515
exclude module: "commons-logging"
1616
}
1717

18-
def canonicalVersionCode = 398
19-
def canonicalVersionName = "1.21.2"
18+
def canonicalVersionCode = 401
19+
def canonicalVersionName = "1.21.3"
2020

2121
def postFixSize = 10
2222
def abiPostFix = ['armeabi-v7a' : 1,
@@ -350,7 +350,6 @@ dependencies {
350350
implementation "nl.komponents.kovenant:kovenant:$kovenantVersion"
351351
implementation "nl.komponents.kovenant:kovenant-android:$kovenantVersion"
352352
implementation "com.jakewharton.rxbinding3:rxbinding:3.1.0"
353-
implementation "com.github.ybq:Android-SpinKit:1.4.0"
354353
implementation "com.opencsv:opencsv:4.6"
355354
testImplementation "junit:junit:$junitVersion"
356355
testImplementation 'org.assertj:assertj-core:3.11.1'

app/src/main/java/org/thoughtcrime/securesms/conversation/v2/search/SearchBottomBar.kt

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,11 +5,8 @@ import android.util.AttributeSet
55
import android.view.LayoutInflater
66
import android.view.View
77
import android.widget.LinearLayout
8-
import com.squareup.phrase.Phrase
98
import network.loki.messenger.R
109
import network.loki.messenger.databinding.ViewSearchBottomBarBinding
11-
import org.session.libsession.utilities.StringSubstitutionConstants.COUNT_KEY
12-
import org.session.libsession.utilities.StringSubstitutionConstants.TOTAL_COUNT_KEY
1310

1411
class SearchBottomBar : LinearLayout {
1512
private lateinit var binding: ViewSearchBottomBarBinding

app/src/main/java/org/thoughtcrime/securesms/groups/EnterCommunityUrlFragment.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@ class EnterCommunityUrlFragment : Fragment() {
6666
groups.iterator().forEach { defaultGroup ->
6767
val chip = layoutInflater.inflate(R.layout.default_group_chip, binding.defaultRoomsFlexboxLayout, false) as Chip
6868
val drawable = defaultGroup.image?.let { bytes ->
69-
val bitmap = BitmapFactory.decodeByteArray(bytes, 0, bytes.size)
69+
val bitmap = BitmapFactory.decodeByteArray(bytes.data, bytes.offset, bytes.len)
7070
RoundedBitmapDrawableFactory.create(resources, bitmap).apply {
7171
isCircular = true
7272
}

app/src/main/java/org/thoughtcrime/securesms/groups/GroupManagerV2Impl.kt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -299,6 +299,8 @@ class GroupManagerV2Impl @Inject constructor(
299299
configs.groupInfo.getName().orEmpty()
300300
}
301301

302+
Log.w(TAG, "Failed to invite members to group $group", e)
303+
302304
throw GroupInviteException(
303305
isPromotion = false,
304306
inviteeAccountIds = newMembers.map { it.hexString },

app/src/main/java/org/thoughtcrime/securesms/home/HomeViewModel.kt

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ import kotlinx.coroutines.flow.Flow
1414
import kotlinx.coroutines.flow.MutableSharedFlow
1515
import kotlinx.coroutines.flow.SharingStarted
1616
import kotlinx.coroutines.flow.StateFlow
17+
import kotlinx.coroutines.flow.catch
1718
import kotlinx.coroutines.flow.combine
1819
import kotlinx.coroutines.flow.debounce
1920
import kotlinx.coroutines.flow.distinctUntilChanged
@@ -23,11 +24,13 @@ import kotlinx.coroutines.flow.flowOn
2324
import kotlinx.coroutines.flow.map
2425
import kotlinx.coroutines.flow.mapLatest
2526
import kotlinx.coroutines.flow.merge
27+
import kotlinx.coroutines.flow.onErrorResume
2628
import kotlinx.coroutines.flow.onStart
2729
import kotlinx.coroutines.flow.stateIn
2830
import network.loki.messenger.libsession_util.ConfigBase.Companion.PRIORITY_HIDDEN
2931
import org.session.libsession.utilities.ConfigUpdateNotification
3032
import org.session.libsession.utilities.TextSecurePreferences
33+
import org.session.libsignal.utilities.Log
3134
import org.thoughtcrime.securesms.database.DatabaseContentProviders
3235
import org.thoughtcrime.securesms.database.ThreadDatabase
3336
import org.thoughtcrime.securesms.database.model.ThreadRecord
@@ -78,9 +81,11 @@ class HomeViewModel @Inject constructor(
7881
)
7982
}
8083
}
81-
)
82-
}
83-
.stateIn(viewModelScope, SharingStarted.Eagerly, null)
84+
) as? Data?
85+
}.catch { err ->
86+
Log.e("HomeViewModel", "Error loading conversation list", err)
87+
emit(null)
88+
}.stateIn(viewModelScope, SharingStarted.Eagerly, null)
8489

8590
private fun hasHiddenMessageRequests() = TextSecurePreferences.events
8691
.filter { it == TextSecurePreferences.HAS_HIDDEN_MESSAGE_REQUESTS }

app/src/main/java/org/thoughtcrime/securesms/mediasend/MediaSendFragment.java

Lines changed: 4 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -91,6 +91,7 @@ public class MediaSendFragment extends Fragment implements ViewTreeObserver.OnGl
9191
private ViewGroup playbackControlsContainer;
9292
private TextView charactersLeft;
9393
private View closeButton;
94+
private View loader;
9495

9596
private ControllableViewPager fragmentPager;
9697
private MediaSendFragmentPagerAdapter fragmentPagerAdapter;
@@ -152,6 +153,7 @@ public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceStat
152153
playbackControlsContainer = view.findViewById(R.id.mediasend_playback_controls_container);
153154
charactersLeft = view.findViewById(R.id.mediasend_characters_left);
154155
closeButton = view.findViewById(R.id.mediasend_close_button);
156+
loader = view.findViewById(R.id.loader);
155157

156158
View sendButtonBkg = view.findViewById(R.id.mediasend_send_button_bkg);
157159

@@ -423,19 +425,12 @@ private void processMedia(@NonNull List<Media> mediaList, @NonNull Map<Uri, Obje
423425

424426
private Stopwatch renderTimer;
425427
private Runnable progressTimer;
426-
private AlertDialog dialog;
427428

428429
@Override
429430
protected void onPreExecute() {
430431
renderTimer = new Stopwatch("ProcessMedia");
431432
progressTimer = () -> {
432-
dialog = new AlertDialog.Builder(new ContextThemeWrapper(requireContext(), R.style.Theme_TextSecure_Dialog_MediaSendProgress))
433-
.setView(R.layout.progress_dialog)
434-
.setCancelable(false)
435-
.create();
436-
dialog.show();
437-
dialog.getWindow().setLayout(getResources().getDimensionPixelSize(R.dimen.mediasend_progress_dialog_size),
438-
getResources().getDimensionPixelSize(R.dimen.mediasend_progress_dialog_size));
433+
loader.setVisibility(View.VISIBLE);
439434
};
440435
Util.runOnMainDelayed(progressTimer, 250);
441436
}
@@ -476,9 +471,7 @@ protected List<Media> doInBackground(Void... voids) {
476471
protected void onPostExecute(List<Media> media) {
477472
controller.onSendClicked(media, composeText.getTextTrimmed());
478473
Util.cancelRunnableOnMain(progressTimer);
479-
if (dialog != null) {
480-
dialog.dismiss();
481-
}
474+
loader.setVisibility(View.GONE);
482475
renderTimer.stop(TAG);
483476
}
484477
}.execute();

app/src/main/java/org/thoughtcrime/securesms/notifications/RemoteReplyReceiver.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -109,7 +109,7 @@ protected Void doInBackground(Void... params) {
109109
case GroupMessage: {
110110
OutgoingMediaMessage reply = OutgoingMediaMessage.from(message, recipient, Collections.emptyList(), null, null, expiresInMillis, 0);
111111
try {
112-
mmsDatabase.insertMessageOutbox(reply, threadId, false, null, true);
112+
message.setId(mmsDatabase.insertMessageOutbox(reply, threadId, false, null, true));
113113
MessageSender.send(message, address);
114114
} catch (MmsException e) {
115115
Log.w(TAG, e);
@@ -118,7 +118,7 @@ protected Void doInBackground(Void... params) {
118118
}
119119
case SecureMessage: {
120120
OutgoingTextMessage reply = OutgoingTextMessage.from(message, recipient, expiresInMillis, expireStartedAt);
121-
smsDatabase.insertMessageOutbox(threadId, reply, false, System.currentTimeMillis(), null, true);
121+
message.setId(smsDatabase.insertMessageOutbox(threadId, reply, false, System.currentTimeMillis(), null, true));
122122
MessageSender.send(message, address);
123123
break;
124124
}

app/src/main/java/org/thoughtcrime/securesms/onboarding/messagenotifications/MessageNotifications.kt

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ import androidx.compose.ui.tooling.preview.Preview
1919
import androidx.compose.ui.tooling.preview.PreviewParameter
2020
import androidx.compose.ui.unit.dp
2121
import com.squareup.phrase.Phrase
22+
import network.loki.messenger.BuildConfig
2223
import network.loki.messenger.R
2324
import org.session.libsession.utilities.StringSubstitutionConstants.APP_NAME_KEY
2425
import org.thoughtcrime.securesms.onboarding.OnboardingBackPressAlertDialog
@@ -76,7 +77,8 @@ internal fun MessageNotificationsScreen(
7677

7778
NotificationRadioButton(
7879
R.string.notificationsFastMode,
79-
R.string.notificationsFastModeDescription,
80+
if(BuildConfig.FLAVOR == "huawei") R.string.notificationsFastModeDescriptionHuawei
81+
else R.string.notificationsFastModeDescription,
8082
modifier = Modifier.contentDescription(R.string.AccessibilityId_notificationsFastMode),
8183
tag = R.string.recommended,
8284
checked = state.pushEnabled,

app/src/main/java/org/thoughtcrime/securesms/preferences/NotificationsPreferenceFragment.kt

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ import android.text.TextUtils
1212
import androidx.preference.ListPreference
1313
import androidx.preference.Preference
1414
import dagger.hilt.android.AndroidEntryPoint
15+
import network.loki.messenger.BuildConfig
1516
import network.loki.messenger.R
1617
import org.session.libsession.utilities.TextSecurePreferences
1718
import org.thoughtcrime.securesms.ApplicationContext
@@ -38,6 +39,11 @@ class NotificationsPreferenceFragment : CorrectedPreferenceFragment() {
3839
true
3940
}
4041

42+
fcmPreference.summary = when (BuildConfig.FLAVOR) {
43+
"huawei" -> getString(R.string.notificationsFastModeDescriptionHuawei)
44+
else -> getString(R.string.notificationsFastModeDescription)
45+
}
46+
4147
prefs.setNotificationRingtone(
4248
NotificationChannels.getMessageRingtone(requireContext()).toString()
4349
)

app/src/main/res/layout/activity_conversation_v2.xml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -292,13 +292,13 @@
292292
android:clickable="true"
293293
android:visibility="gone">
294294

295-
<com.github.ybq.android.spinkit.SpinKitView
296-
style="@style/SpinKitView.Large.ThreeBounce"
297-
android:layout_width="wrap_content"
295+
<ProgressBar
296+
android:layout_width="match_parent"
298297
android:layout_height="wrap_content"
299-
android:layout_gravity="center"
300298
android:layout_marginTop="8dp"
301-
app:SpinKit_Color="@android:color/white" />
299+
android:layout_gravity="center"
300+
android:indeterminateTint="?colorAccent"
301+
android:indeterminate="true"/>
302302

303303
</FrameLayout>
304304

0 commit comments

Comments
 (0)