diff --git a/app/src/main/java/fr/free/nrw/commons/navtab/MoreBottomSheetFragment.kt b/app/src/main/java/fr/free/nrw/commons/navtab/MoreBottomSheetFragment.kt index bb83b56fe..77d312876 100644 --- a/app/src/main/java/fr/free/nrw/commons/navtab/MoreBottomSheetFragment.kt +++ b/app/src/main/java/fr/free/nrw/commons/navtab/MoreBottomSheetFragment.kt @@ -5,6 +5,7 @@ import android.annotation.SuppressLint import android.content.ActivityNotFoundException import android.content.Context import android.content.Intent +import android.net.ConnectivityManager import android.net.Uri import android.os.Bundle import android.view.LayoutInflater @@ -170,6 +171,11 @@ class MoreBottomSheetFragment : BottomSheetDialogFragment() { fun uploadFeedback(feedback: Feedback) { val feedbackContentCreator = FeedbackContentCreator(requireContext(), feedback) + if (!isNetworkAvailable(requireContext())) { + Toast.makeText(requireContext(), R.string.error_feedback, Toast.LENGTH_LONG).show() + return + } + val single = pageEditClient.createNewSection( "Commons:Mobile_app/Feedback", feedbackContentCreator.getSectionTitle(), @@ -192,6 +198,15 @@ class MoreBottomSheetFragment : BottomSheetDialogFragment() { } } + /** + * This method is to check whether internet connection is available or not + */ + fun isNetworkAvailable(context: Context): Boolean { + val connectivityManager = context.getSystemService(Context.CONNECTIVITY_SERVICE) as ConnectivityManager + val activeNetwork = connectivityManager.activeNetworkInfo + return activeNetwork != null && activeNetwork.isConnected + } + /** * This method shows the alert dialog when a user wants to send feedback about the app. */