kopia lustrzana https://github.com/ryukoposting/Signal-Android
Fix crash with detached fragment.
rodzic
d76e58ce09
commit
0b37b0ee16
|
@ -80,9 +80,36 @@ public final class ReactionsBottomSheetDialogFragment extends BottomSheetDialogF
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onActivityCreated(@Nullable Bundle savedInstanceState) {
|
public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) {
|
||||||
super.onActivityCreated(savedInstanceState);
|
recipientPagerView = view.findViewById(R.id.reactions_bottom_view_recipient_pager);
|
||||||
|
messageId = requireArguments().getLong(ARGS_MESSAGE_ID);
|
||||||
|
|
||||||
|
setUpRecipientsRecyclerView();
|
||||||
|
setUpTabMediator(savedInstanceState);
|
||||||
|
|
||||||
|
reactionsLoader = new ReactionsLoader(requireContext(),
|
||||||
|
requireArguments().getLong(ARGS_MESSAGE_ID),
|
||||||
|
requireArguments().getBoolean(ARGS_IS_MMS));
|
||||||
|
|
||||||
|
LoaderManager.getInstance(requireActivity()).initLoader((int) messageId, null, reactionsLoader);
|
||||||
|
|
||||||
|
setUpViewModel();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onDestroyView() {
|
||||||
|
LoaderManager.getInstance(requireActivity()).destroyLoader((int) messageId);
|
||||||
|
super.onDestroyView();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onDismiss(@NonNull DialogInterface dialog) {
|
||||||
|
super.onDismiss(dialog);
|
||||||
|
|
||||||
|
callback.onReactionsDialogDismissed();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void setUpTabMediator(@Nullable Bundle savedInstanceState) {
|
||||||
if (savedInstanceState == null) {
|
if (savedInstanceState == null) {
|
||||||
FrameLayout container = requireDialog().findViewById(R.id.container);
|
FrameLayout container = requireDialog().findViewById(R.id.container);
|
||||||
LayoutInflater layoutInflater = LayoutInflater.from(requireContext());
|
LayoutInflater layoutInflater = LayoutInflater.from(requireContext());
|
||||||
|
@ -112,39 +139,10 @@ public final class ReactionsBottomSheetDialogFragment extends BottomSheetDialogF
|
||||||
text.setText(String.valueOf(emojiCount.getCount()));
|
text.setText(String.valueOf(emojiCount.getCount()));
|
||||||
} else {
|
} else {
|
||||||
emoji.setVisibility(View.GONE);
|
emoji.setVisibility(View.GONE);
|
||||||
text.setText(requireContext().getString(R.string.ReactionsBottomSheetDialogFragment_all, emojiCount.getCount()));
|
text.setText(customView.getContext().getString(R.string.ReactionsBottomSheetDialogFragment_all, emojiCount.getCount()));
|
||||||
}
|
}
|
||||||
}).attach();
|
}).attach();
|
||||||
}
|
}
|
||||||
|
|
||||||
setUpViewModel();
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) {
|
|
||||||
recipientPagerView = view.findViewById(R.id.reactions_bottom_view_recipient_pager);
|
|
||||||
messageId = requireArguments().getLong(ARGS_MESSAGE_ID);
|
|
||||||
|
|
||||||
setUpRecipientsRecyclerView();
|
|
||||||
|
|
||||||
reactionsLoader = new ReactionsLoader(requireContext(),
|
|
||||||
requireArguments().getLong(ARGS_MESSAGE_ID),
|
|
||||||
requireArguments().getBoolean(ARGS_IS_MMS));
|
|
||||||
|
|
||||||
LoaderManager.getInstance(requireActivity()).initLoader((int) messageId, null, reactionsLoader);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void onDestroyView() {
|
|
||||||
LoaderManager.getInstance(requireActivity()).destroyLoader((int) messageId);
|
|
||||||
super.onDestroyView();
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void onDismiss(@NonNull DialogInterface dialog) {
|
|
||||||
super.onDismiss(dialog);
|
|
||||||
|
|
||||||
callback.onReactionsDialogDismissed();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void setUpRecipientsRecyclerView() {
|
private void setUpRecipientsRecyclerView() {
|
||||||
|
|
Ładowanie…
Reference in New Issue