From 05ab58e96d116ec05e03fe8922a25d1b420052bc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Rapha=C3=ABl=20Brul=C3=A9?= <raphael.brule@savoirfairelinux.com> Date: Thu, 13 Aug 2020 11:22:05 -0400 Subject: [PATCH] location sharing: fix thread issue Fixes an issue regarding the location sharing noticed on the Beta channel. Change-Id: I3832aa50a816c0c1345e2a8f21853319f8791629 --- .../fragments/LocationSharingFragment.java | 22 ++++++++++--------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/ring-android/app/src/main/java/cx/ring/fragments/LocationSharingFragment.java b/ring-android/app/src/main/java/cx/ring/fragments/LocationSharingFragment.java index 91c8827fa..312293926 100644 --- a/ring-android/app/src/main/java/cx/ring/fragments/LocationSharingFragment.java +++ b/ring-android/app/src/main/java/cx/ring/fragments/LocationSharingFragment.java @@ -294,16 +294,18 @@ public class LocationSharingFragment extends Fragment { mDisposableBag.add(mServiceDisposableBag); mDisposableBag.add(mShowControlsSubject.subscribe(this::setShowControls)); mDisposableBag.add(mIsSharingSubject.subscribe(this::setIsSharing)); - mDisposableBag.add(mShowMapSubject.subscribe(state -> { - Fragment p = getParentFragment(); - if (p instanceof ConversationFragment) { - ConversationFragment parent = (ConversationFragment) p; - if (state == MapState.FULL) - parent.openLocationSharing(); - else - parent.closeLocationSharing(state == MapState.MINI); - } - })); + mDisposableBag.add(mShowMapSubject + .subscribeOn(AndroidSchedulers.mainThread()) + .subscribe(state -> { + Fragment p = getParentFragment(); + if (p instanceof ConversationFragment) { + ConversationFragment parent = (ConversationFragment) p; + if (state == MapState.FULL) + parent.openLocationSharing(); + else + parent.closeLocationSharing(state == MapState.MINI); + } + })); mDisposableBag.add(mIsContactSharingSubject .distinctUntilChanged() .observeOn(AndroidSchedulers.mainThread()) -- GitLab