Prevent crash

This commit is contained in:
M66B
2019-01-14 07:21:48 +00:00
parent f9b96add3d
commit 0c4f442be0
2 changed files with 22 additions and 18 deletions

View File

@@ -70,7 +70,6 @@ import androidx.constraintlayout.widget.Group;
import androidx.fragment.app.FragmentActivity;
import androidx.fragment.app.FragmentTransaction;
import androidx.lifecycle.Lifecycle;
import androidx.lifecycle.LifecycleOwner;
import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModelProviders;
import androidx.localbroadcastmanager.content.LocalBroadcastManager;
@@ -452,11 +451,10 @@ public class FragmentMessages extends FragmentEx {
FragmentActivity activity = getActivity();
if (activity != null) {
ViewModelMessages modelMessages = ViewModelProviders.of(activity).get(ViewModelMessages.class);
LifecycleOwner owner = (viewType == AdapterMessage.ViewType.THREAD ? getViewLifecycleOwner() : activity);
if (selectionTracker.hasSelection())
modelMessages.removeObservers(viewType, owner);
modelMessages.removeObservers(viewType, getViewLifecycleOwner());
else
modelMessages.observe(viewType, owner, observer);
modelMessages.observe(viewType, getViewLifecycleOwner(), observer);
}
if (selectionTracker.hasSelection()) {
@@ -1758,8 +1756,7 @@ public class FragmentMessages extends FragmentEx {
// Sort changed
final ViewModelMessages modelMessages = ViewModelProviders.of(getActivity()).get(ViewModelMessages.class);
LifecycleOwner owner = (viewType == AdapterMessage.ViewType.THREAD ? getViewLifecycleOwner() : getActivity());
modelMessages.removeObservers(viewType, owner);
modelMessages.removeObservers(viewType, getViewLifecycleOwner());
DB db = DB.getInstance(getContext());
LivePagedListBuilder<Integer, TupleMessageEx> builder = null;
@@ -1847,8 +1844,8 @@ public class FragmentMessages extends FragmentEx {
builder.setFetchExecutor(executor);
modelMessages.setMessages(viewType, builder.build());
modelMessages.observe(viewType, owner, observer);
modelMessages.setMessages(viewType, getActivity(), builder.build());
modelMessages.observe(viewType, getViewLifecycleOwner(), observer);
}
private Observer<PagedList<TupleMessageEx>> observer = new Observer<PagedList<TupleMessageEx>>() {