Fix QR code handler not running on UI thread

pull/141/head
Mikunj Varsani 6 years ago
parent 983b137cd6
commit 449a53ea32

@ -797,6 +797,7 @@ public class ConversationItem extends LinearLayout
} }
private void setContactPhoto(@NonNull Recipient recipient) { private void setContactPhoto(@NonNull Recipient recipient) {
if (messageRecord == null) return;
LinearLayout.LayoutParams layoutParams = (LinearLayout.LayoutParams)bodyBubble.getLayoutParams(); LinearLayout.LayoutParams layoutParams = (LinearLayout.LayoutParams)bodyBubble.getLayoutParams();
int groupThreadMargin = (int)(getResources().getDimension(R.dimen.large_spacing) + getResources().getDimension(R.dimen.small_profile_picture_size)); int groupThreadMargin = (int)(getResources().getDimension(R.dimen.large_spacing) + getResources().getDimension(R.dimen.small_profile_picture_size));
int defaultMargin = 0; int defaultMargin = 0;

@ -62,22 +62,20 @@ class JoinPublicChatActivity : PassphraseRequiredActionBarActivity(), ScanQRCode
} }
fun joinPublicChatIfPossible(url: String) { fun joinPublicChatIfPossible(url: String) {
runOnUiThread { if (!Patterns.WEB_URL.matcher(url).matches() || !url.startsWith("https://")) {
if (!Patterns.WEB_URL.matcher(url).matches() || !url.startsWith("https://")) { Toast.makeText(this, "Invalid URL", Toast.LENGTH_SHORT).show()
Toast.makeText(this, "Invalid URL", Toast.LENGTH_SHORT).show() return
return@runOnUiThread }
} showLoader()
showLoader()
val channel: Long = 1
val channel: Long = 1 OpenGroupUtilities.addGroup(this, url, channel).success {
OpenGroupUtilities.addGroup(this, url, channel).success { MessageSender.syncAllOpenGroups(this)
MessageSender.syncAllOpenGroups(this) }.successUi {
}.successUi { finish()
finish() }.failUi {
}.failUi { hideLoader()
hideLoader() Toast.makeText(this, "Couldn't join channel", Toast.LENGTH_SHORT).show()
Toast.makeText(this, "Couldn't join channel", Toast.LENGTH_SHORT).show()
}
} }
} }
// endregion // endregion

@ -52,7 +52,9 @@ class ScanQRCodeWrapperFragment : Fragment(), ScanQRCodePlaceholderFragmentDeleg
} }
override fun onQrDataFound(string: String) { override fun onQrDataFound(string: String) {
delegate?.handleQRCodeScanned(string) activity?.runOnUiThread {
delegate?.handleQRCodeScanned(string)
}
} }
} }

Loading…
Cancel
Save