Allow using the location picker with approximate location.

This commit is contained in:
Greyson Parrelli 2023-02-13 12:32:08 -05:00
parent c0fe156897
commit b9d5fb54c3

View file

@ -413,12 +413,16 @@ public class AttachmentManager {
} }
public static void selectLocation(Fragment fragment, int requestCode, @ColorInt int chatColor) { public static void selectLocation(Fragment fragment, int requestCode, @ColorInt int chatColor) {
Permissions.with(fragment) if (Permissions.hasAny(fragment.requireContext(), Manifest.permission.ACCESS_FINE_LOCATION, Manifest.permission.ACCESS_COARSE_LOCATION)) {
.request(Manifest.permission.ACCESS_FINE_LOCATION, Manifest.permission.ACCESS_COARSE_LOCATION) PlacePickerActivity.startActivityForResultAtCurrentLocation(fragment, requestCode, chatColor);
.ifNecessary() } else {
.withPermanentDenialDialog(fragment.getString(R.string.AttachmentManager_signal_requires_location_information_in_order_to_attach_a_location)) Permissions.with(fragment)
.onAllGranted(() -> PlacePickerActivity.startActivityForResultAtCurrentLocation(fragment, requestCode, chatColor)) .request(Manifest.permission.ACCESS_FINE_LOCATION, Manifest.permission.ACCESS_COARSE_LOCATION)
.execute(); .ifNecessary()
.withPermanentDenialDialog(fragment.getString(R.string.AttachmentManager_signal_requires_location_information_in_order_to_attach_a_location))
.onSomeGranted((permissions) -> PlacePickerActivity.startActivityForResultAtCurrentLocation(fragment, requestCode, chatColor))
.execute();
}
} }
public static void selectGif(Fragment fragment, int requestCode, RecipientId id, MessageSendType sendType, boolean isForMms, CharSequence textTrimmed) { public static void selectGif(Fragment fragment, int requestCode, RecipientId id, MessageSendType sendType, boolean isForMms, CharSequence textTrimmed) {