1
0
mirror of https://github.com/nextcloud/talk-android synced 2025-03-07 22:51:58 +00:00

Replaced all the Toasts with Snackbar

This commit is contained in:
Smarshall 2023-08-19 17:38:52 +05:30
parent d4cae4333b
commit a447196257
23 changed files with 224 additions and 175 deletions

View File

@ -57,7 +57,6 @@ import android.view.ViewTreeObserver.OnGlobalLayoutListener
import android.widget.AdapterView
import android.widget.FrameLayout
import android.widget.RelativeLayout
import android.widget.Toast
import androidx.activity.result.contract.ActivityResultContracts
import androidx.annotation.DrawableRes
import androidx.annotation.RequiresApi
@ -67,6 +66,7 @@ import androidx.lifecycle.ViewModelProvider
import autodagger.AutoInjector
import com.bluelinelabs.logansquare.LoganSquare
import com.google.android.material.dialog.MaterialAlertDialogBuilder
import com.google.android.material.snackbar.Snackbar
import com.nextcloud.talk.R
import com.nextcloud.talk.adapters.ParticipantDisplayItem
import com.nextcloud.talk.adapters.ParticipantsAdapter
@ -427,7 +427,9 @@ class CallActivity : CallBaseActivity() {
binding!!.callRecordingIndicator.visibility = View.VISIBLE
if (viewState.showStartedInfo) {
vibrateShort(context)
Toast.makeText(context, context.resources.getString(R.string.record_active_info), Toast.LENGTH_LONG)
Snackbar.make(
binding!!.root, context.resources.getString(R.string.record_active_info), Snackbar
.LENGTH_LONG)
.show()
}
} else if (viewState is RecordingStartingState) {
@ -459,10 +461,10 @@ class CallActivity : CallBaseActivity() {
}
} else if (viewState is RecordingErrorState) {
if (isAllowedToStartOrStopRecording) {
Toast.makeText(
context,
Snackbar.make(
binding!!.root,
context.resources.getString(R.string.record_failed_info),
Toast.LENGTH_LONG
Snackbar.LENGTH_LONG
).show()
}
binding!!.callRecordingIndicator.visibility = View.GONE
@ -567,10 +569,10 @@ class CallActivity : CallBaseActivity() {
}
} else {
binding!!.microphoneButton.setOnClickListener {
Toast.makeText(
context,
Snackbar.make(
binding!!.root,
R.string.nc_not_allowed_to_activate_audio,
Toast.LENGTH_SHORT
Snackbar.LENGTH_SHORT
).show()
}
}
@ -579,10 +581,10 @@ class CallActivity : CallBaseActivity() {
binding!!.cameraButton.setOnClickListener { onCameraClick() }
} else {
binding!!.cameraButton.setOnClickListener {
Toast.makeText(
context,
Snackbar.make(
binding!!.root,
R.string.nc_not_allowed_to_activate_video,
Toast.LENGTH_SHORT
Snackbar.LENGTH_SHORT
).show()
}
}
@ -612,7 +614,8 @@ class CallActivity : CallBaseActivity() {
callRecordingViewModel!!.clickRecordButton()
}
} else {
Toast.makeText(context, context.resources.getString(R.string.record_active_info), Toast.LENGTH_LONG)
Snackbar.make(binding!!.root, context.resources.getString(R.string.record_active_info), Snackbar
.LENGTH_LONG)
.show()
}
}
@ -1439,7 +1442,7 @@ class CallActivity : CallBaseActivity() {
}
override fun onError(e: Throwable) {
Toast.makeText(context, R.string.nc_common_error_sorry, Toast.LENGTH_LONG).show()
Snackbar.make(binding!!.root, R.string.nc_common_error_sorry, Snackbar.LENGTH_LONG).show()
Log.e(TAG, "Failed to fetch capabilities", e)
// unused atm
}
@ -1634,10 +1637,10 @@ class CallActivity : CallBaseActivity() {
private fun showCallRunningSinceOneHourOrMoreInfo() {
binding!!.callDuration.setTypeface(null, Typeface.BOLD)
vibrateShort(context)
Toast.makeText(
context,
Snackbar.make(
binding!!.root,
context.resources.getString(R.string.call_running_since_one_hour),
Toast.LENGTH_LONG
Snackbar.LENGTH_LONG
).show()
}
@ -1911,7 +1914,7 @@ class CallActivity : CallBaseActivity() {
}
override fun onError(e: Throwable) {
Toast.makeText(context, R.string.nc_common_error_sorry, Toast.LENGTH_LONG).show()
Snackbar.make(binding!!.root, R.string.nc_common_error_sorry, Snackbar.LENGTH_LONG).show()
Log.e(TAG, "Error while leaving the call", e)
}
@ -2093,10 +2096,10 @@ class CallActivity : CallBaseActivity() {
} else {
if (peerConnectionFactory == null) {
Log.e(TAG, "peerConnectionFactory was null in getOrCreatePeerConnectionWrapperForSessionIdAndType")
Toast.makeText(
context,
Snackbar.make(
binding!!.root,
context.resources.getString(R.string.nc_common_error_sorry),
Toast.LENGTH_LONG
Snackbar.LENGTH_LONG
).show()
hangup(true)
return null
@ -2725,10 +2728,10 @@ class CallActivity : CallBaseActivity() {
}
raisedHand = true
val nick = callParticipantModel.nick
Toast.makeText(
context,
Snackbar.make(
binding!!.root,
String.format(context.resources.getString(R.string.nc_call_raised_hand), nick),
Toast.LENGTH_LONG
Snackbar.LENGTH_LONG
).show()
}

View File

@ -32,9 +32,9 @@ import android.util.Log
import android.view.Menu
import android.view.MenuItem
import android.view.View
import android.widget.Toast
import androidx.appcompat.app.AppCompatActivity
import androidx.core.content.FileProvider
import com.google.android.material.snackbar.Snackbar
import com.nextcloud.talk.BuildConfig
import com.nextcloud.talk.R
import com.nextcloud.talk.databinding.ActivityFullScreenImageBinding
@ -133,7 +133,7 @@ class FullScreenImageActivity : AppCompatActivity() {
// info that 100MB is the limit comes from https://stackoverflow.com/a/53334563
if (bitmapSize > HUNDRED_MB) {
Log.e(TAG, "bitmap will be too large to display. It won't be displayed to avoid RuntimeException")
Toast.makeText(this, R.string.nc_common_error_sorry, Toast.LENGTH_LONG).show()
Snackbar.make(binding.root, R.string.nc_common_error_sorry, Snackbar.LENGTH_LONG).show()
} else {
binding.photoView.setImageBitmap(bitmap)
}

View File

@ -37,8 +37,7 @@ import android.view.OrientationEventListener;
import android.view.ScaleGestureDetector;
import android.view.Surface;
import android.view.View;
import android.widget.Toast;
import com.google.android.material.snackbar.Snackbar;
import com.google.common.util.concurrent.ListenableFuture;
import com.nextcloud.talk.R;
import com.nextcloud.talk.application.NextcloudTalkApplication;
@ -234,7 +233,7 @@ public class TakePhotoActivity extends AppCompatActivity {
binding.photoPreview.setMediumScale(MEDIUM_SCALE);
} catch (IllegalArgumentException | ExecutionException | InterruptedException e) {
Log.e(TAG, "Error taking picture", e);
Toast.makeText(this, e.getMessage(), Toast.LENGTH_LONG).show();
Snackbar.make(binding.getRoot(), e.getMessage(), Snackbar.LENGTH_LONG).show();
finish();
}
}, ContextCompat.getMainExecutor(this));
@ -326,7 +325,7 @@ public class TakePhotoActivity extends AppCompatActivity {
});
} catch (Exception e) {
Log.e(TAG, "error while taking picture", e);
Toast.makeText(this, R.string.take_photo_error_deleting_picture, Toast.LENGTH_SHORT).show();
Snackbar.make(binding.getRoot(), R.string.take_photo_error_deleting_picture, Snackbar.LENGTH_SHORT).show();
}
});

View File

@ -37,9 +37,9 @@ import android.view.MotionEvent
import android.view.View
import android.webkit.WebView
import android.webkit.WebViewClient
import android.widget.Toast
import autodagger.AutoInjector
import coil.load
import com.google.android.material.snackbar.Snackbar
import com.nextcloud.talk.R
import com.nextcloud.talk.application.NextcloudTalkApplication
import com.nextcloud.talk.application.NextcloudTalkApplication.Companion.sharedApplication
@ -264,7 +264,7 @@ class IncomingLocationMessageViewHolder(incomingView: View, payload: Any) :
browserIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK)
context!!.startActivity(browserIntent)
} else {
Toast.makeText(context, R.string.nc_common_error_sorry, Toast.LENGTH_LONG).show()
Snackbar.make(binding.root, R.string.nc_common_error_sorry, Snackbar.LENGTH_LONG).show()
Log.e(TAG, "locationGeoLink was null or empty")
}
}

View File

@ -33,11 +33,11 @@ import android.view.MotionEvent
import android.view.View
import android.webkit.WebView
import android.webkit.WebViewClient
import android.widget.Toast
import androidx.appcompat.content.res.AppCompatResources
import autodagger.AutoInjector
import coil.load
import com.google.android.flexbox.FlexboxLayout
import com.google.android.material.snackbar.Snackbar
import com.nextcloud.talk.R
import com.nextcloud.talk.application.NextcloudTalkApplication
import com.nextcloud.talk.application.NextcloudTalkApplication.Companion.sharedApplication
@ -252,7 +252,7 @@ class OutcomingLocationMessageViewHolder(incomingView: View) :
browserIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK)
context!!.startActivity(browserIntent)
} else {
Toast.makeText(context, R.string.nc_common_error_sorry, Toast.LENGTH_LONG).show()
Snackbar.make(binding.root, R.string.nc_common_error_sorry, Snackbar.LENGTH_LONG).show()
Log.e(TAG, "locationGeoLink was null or empty")
}
}

View File

@ -30,11 +30,11 @@ import android.os.Handler
import android.os.Looper
import android.util.Log
import android.view.View
import android.widget.Toast
import androidx.annotation.RequiresApi
import androidx.core.app.NotificationManagerCompat
import androidx.lifecycle.ViewModelProvider
import autodagger.AutoInjector
import com.google.android.material.snackbar.Snackbar
import com.nextcloud.talk.R
import com.nextcloud.talk.activities.CallActivity
import com.nextcloud.talk.activities.CallBaseActivity
@ -210,7 +210,7 @@ class CallNotificationActivity : CallBaseActivity() {
}
is CallNotificationViewModel.GetRoomErrorState -> {
Toast.makeText(context, R.string.nc_common_error_sorry, Toast.LENGTH_LONG).show()
Snackbar.make(binding!!.root, R.string.nc_common_error_sorry, Snackbar.LENGTH_LONG).show()
}
else -> {}

View File

@ -83,7 +83,6 @@ import android.widget.RelativeLayout.BELOW
import android.widget.RelativeLayout.LayoutParams
import android.widget.SeekBar
import android.widget.TextView
import android.widget.Toast
import androidx.activity.OnBackPressedCallback
import androidx.appcompat.app.AlertDialog
import androidx.appcompat.view.ContextThemeWrapper
@ -114,6 +113,7 @@ import coil.transform.CircleCropTransformation
import com.google.android.flexbox.FlexboxLayout
import com.google.android.material.button.MaterialButton
import com.google.android.material.dialog.MaterialAlertDialogBuilder
import com.google.android.material.snackbar.Snackbar
import com.nextcloud.android.common.ui.theme.utils.ColorRole
import com.nextcloud.talk.BuildConfig
import com.nextcloud.talk.R
@ -568,7 +568,7 @@ class ChatActivity :
}
is ChatViewModel.GetRoomErrorState -> {
Toast.makeText(context, R.string.nc_common_error_sorry, Toast.LENGTH_LONG).show()
Snackbar.make(binding.root, R.string.nc_common_error_sorry, Snackbar.LENGTH_LONG).show()
}
else -> {}
@ -612,7 +612,7 @@ class ChatActivity :
}
is ChatViewModel.JoinRoomErrorState -> {
Toast.makeText(context, R.string.nc_common_error_sorry, Toast.LENGTH_LONG).show()
Snackbar.make(binding.root, R.string.nc_common_error_sorry, Snackbar.LENGTH_LONG).show()
}
else -> {}
@ -1166,10 +1166,10 @@ class ChatActivity :
val voiceRecordDuration = voiceRecordEndTime - voiceRecordStartTime
if (voiceRecordDuration < MINIMUM_VOICE_RECORD_DURATION) {
Log.d(TAG, "voiceRecordDuration: $voiceRecordDuration")
Toast.makeText(
context,
Snackbar.make(
binding.root,
context.getString(R.string.nc_voice_message_hold_to_record_info),
Toast.LENGTH_SHORT
Snackbar.LENGTH_SHORT
).show()
stopAndDiscardAudioRecording()
return true
@ -1675,16 +1675,16 @@ class ChatActivity :
if (conversationUser != null) {
runOnUiThread {
if (currentConversation?.objectType == ObjectType.ROOM) {
Toast.makeText(
context,
Snackbar.make(
binding.root,
context.resources.getString(R.string.switch_to_main_room),
Toast.LENGTH_LONG
Snackbar.LENGTH_LONG
).show()
} else {
Toast.makeText(
context,
Snackbar.make(
binding.root,
context.resources.getString(R.string.switch_to_breakout_room),
Toast.LENGTH_LONG
Snackbar.LENGTH_LONG
).show()
}
}
@ -1846,7 +1846,7 @@ class ChatActivity :
}
} catch (e: Exception) {
Log.e(TAG, "failed to initialize mediaPlayer", e)
Toast.makeText(context, R.string.nc_common_error_sorry, Toast.LENGTH_LONG).show()
Snackbar.make(binding.root, R.string.nc_common_error_sorry, Snackbar.LENGTH_LONG).show()
}
}
}
@ -2364,12 +2364,18 @@ class ChatActivity :
)
}
} catch (e: IllegalStateException) {
Toast.makeText(context, context.resources?.getString(R.string.nc_upload_failed), Toast.LENGTH_LONG)
.show()
context.resources?.getString(R.string.nc_upload_failed)?.let {
Snackbar.make(binding.root, it, Snackbar
.LENGTH_LONG)
.show()
}
Log.e(javaClass.simpleName, "Something went wrong when trying to upload file", e)
} catch (e: IllegalArgumentException) {
Toast.makeText(context, context.resources?.getString(R.string.nc_upload_failed), Toast.LENGTH_LONG)
.show()
context.resources?.getString(R.string.nc_upload_failed)?.let {
Snackbar.make(binding.root, it, Snackbar
.LENGTH_LONG)
.show()
}
Log.e(javaClass.simpleName, "Something went wrong when trying to upload file", e)
}
}
@ -2419,20 +2425,22 @@ class ChatActivity :
UploadAndShareFilesWorker.requestStoragePermission(this)
}
} catch (e: IllegalStateException) {
Toast.makeText(
context,
context.resources?.getString(R.string.nc_upload_failed),
Toast.LENGTH_LONG
Snackbar.make(
binding.root,
R.string.nc_upload_failed,
Snackbar.LENGTH_LONG
)
.show()
Log.e(javaClass.simpleName, "Something went wrong when trying to upload file", e)
} catch (e: IllegalArgumentException) {
Toast.makeText(
context,
context.resources?.getString(R.string.nc_upload_failed),
Toast.LENGTH_LONG
)
.show()
context.resources?.getString(R.string.nc_upload_failed)?.let {
Snackbar.make(
binding.root,
it,
Snackbar.LENGTH_LONG
)
.show()
}
Log.e(javaClass.simpleName, "Something went wrong when trying to upload file", e)
}
}
@ -2488,28 +2496,28 @@ class ChatActivity :
uploadFiles(filesToUpload)
}
} else {
Toast
.makeText(context, context.getString(R.string.read_storage_no_permission), Toast.LENGTH_LONG)
Snackbar
.make(binding.root, context.getString(R.string.read_storage_no_permission), Snackbar.LENGTH_LONG)
.show()
}
} else if (requestCode == REQUEST_SHARE_FILE_PERMISSION) {
if (grantResults.isNotEmpty() && grantResults[0] == PackageManager.PERMISSION_GRANTED) {
showLocalFilePicker()
} else {
Toast.makeText(
context,
Snackbar.make(
binding.root,
context.getString(R.string.nc_file_storage_permission),
Toast.LENGTH_LONG
Snackbar.LENGTH_LONG
).show()
}
} else if (requestCode == REQUEST_RECORD_AUDIO_PERMISSION) {
if (grantResults.isNotEmpty() && grantResults[0] == PackageManager.PERMISSION_GRANTED) {
// do nothing. user will tap on the microphone again if he wants to record audio..
} else {
Toast.makeText(
context,
Snackbar.make(
binding.root,
context.getString(R.string.nc_voice_message_missing_audio_permission),
Toast.LENGTH_LONG
Snackbar.LENGTH_LONG
).show()
}
} else if (requestCode == REQUEST_READ_CONTACT_PERMISSION) {
@ -2517,20 +2525,20 @@ class ChatActivity :
val intent = Intent(Intent.ACTION_PICK, ContactsContract.Contacts.CONTENT_URI)
startActivityForResult(intent, REQUEST_CODE_SELECT_CONTACT)
} else {
Toast.makeText(
context,
Snackbar.make(
binding.root,
context.getString(R.string.nc_share_contact_permission),
Toast.LENGTH_LONG
Snackbar.LENGTH_LONG
).show()
}
} else if (requestCode == REQUEST_CAMERA_PERMISSION) {
if (grantResults.isNotEmpty() && grantResults[0] == PackageManager.PERMISSION_GRANTED) {
Toast
.makeText(context, context.getString(R.string.camera_permission_granted), Toast.LENGTH_LONG)
Snackbar
.make(binding.root, context.getString(R.string.camera_permission_granted), Snackbar.LENGTH_LONG)
.show()
} else {
Toast
.makeText(context, context.getString(R.string.take_photo_permission), Toast.LENGTH_LONG)
Snackbar
.make(binding.root, context.getString(R.string.take_photo_permission), Snackbar.LENGTH_LONG)
.show()
}
}
@ -2563,7 +2571,10 @@ class ChatActivity :
metaData
)
} catch (e: IllegalArgumentException) {
Toast.makeText(context, context.resources?.getString(R.string.nc_upload_failed), Toast.LENGTH_LONG).show()
context.resources?.getString(R.string.nc_upload_failed)?.let {
Snackbar.make(binding.root, it, Snackbar.LENGTH_LONG)
.show()
}
Log.e(javaClass.simpleName, "Something went wrong when trying to upload file", e)
}
}
@ -3564,7 +3575,7 @@ class ChatActivity :
if (conversationUser != null) {
val pp = ParticipantPermissions(conversationUser!!, it)
if (!pp.canStartCall() && currentConversation?.hasCall == false) {
Toast.makeText(context, R.string.startCallForbidden, Toast.LENGTH_LONG).show()
Snackbar.make(binding.root, R.string.startCallForbidden, Snackbar.LENGTH_LONG).show()
} else {
ApplicationWideCurrentRoomHolder.getInstance().isDialing = true
val callIntent = getIntentForCall(isVoiceOnlyCall, callWithoutNotification)
@ -3725,7 +3736,7 @@ class ChatActivity :
"Deletion of message is skipped because of restrictions by permissions. " +
"This method should not have been called!"
)
Toast.makeText(context, R.string.nc_common_error_sorry, Toast.LENGTH_LONG).show()
Snackbar.make(binding.root, R.string.nc_common_error_sorry, Snackbar.LENGTH_LONG).show()
} else {
var apiVersion = 1
// FIXME Fix API checking with guests?
@ -3750,10 +3761,10 @@ class ChatActivity :
override fun onNext(t: ChatOverallSingleMessage) {
if (t.ocs!!.meta!!.statusCode == HttpURLConnection.HTTP_ACCEPTED) {
Toast.makeText(
context,
Snackbar.make(
binding.root,
R.string.nc_delete_message_leaked_to_matterbridge,
Toast.LENGTH_LONG
Snackbar.LENGTH_LONG
).show()
}
}
@ -3765,7 +3776,7 @@ class ChatActivity :
message?.id,
e
)
Toast.makeText(context, R.string.nc_common_error_sorry, Toast.LENGTH_LONG).show()
Snackbar.make(binding.root, R.string.nc_common_error_sorry, Snackbar.LENGTH_LONG).show()
}
override fun onComplete() {
@ -4125,7 +4136,7 @@ class ChatActivity :
override fun onError(e: Throwable) {
Log.e(TAG, "error after clicking on user mention chip", e)
Toast.makeText(context, R.string.nc_common_error_sorry, Toast.LENGTH_LONG).show()
Snackbar.make(binding.root, R.string.nc_common_error_sorry, Snackbar.LENGTH_LONG).show()
}
override fun onComplete() {
@ -4159,7 +4170,7 @@ class ChatActivity :
)
File("$outputDir/$videoName$VIDEO_SUFFIX")
} catch (e: IOException) {
Toast.makeText(context, R.string.nc_common_error_sorry, Toast.LENGTH_LONG).show()
Snackbar.make(binding.root, R.string.nc_common_error_sorry, Snackbar.LENGTH_LONG).show()
Log.e(TAG, "error while creating video file", e)
null
}

View File

@ -29,7 +29,6 @@ import android.os.Handler
import android.text.TextUtils
import android.util.Log
import android.view.View
import android.widget.Toast
import androidx.work.Data
import androidx.work.OneTimeWorkRequest
import androidx.work.WorkManager
@ -37,6 +36,7 @@ import autodagger.AutoInjector
import com.bluelinelabs.conductor.RouterTransaction
import com.bluelinelabs.conductor.changehandler.HorizontalChangeHandler
import com.bluelinelabs.logansquare.LoganSquare
import com.google.android.material.snackbar.Snackbar
import com.nextcloud.talk.R
import com.nextcloud.talk.api.NcApi
import com.nextcloud.talk.application.NextcloudTalkApplication
@ -474,7 +474,7 @@ class AccountVerificationController(args: Bundle? = null) : BaseController(
}
} else {
Log.e(TAG, "failed to set active user")
Toast.makeText(context, R.string.nc_common_error_sorry, Toast.LENGTH_LONG).show()
Snackbar.make(binding!!.root, R.string.nc_common_error_sorry, Snackbar.LENGTH_LONG).show()
}
}
}

View File

@ -39,7 +39,6 @@ import android.view.MenuItem
import android.view.View
import android.view.View.GONE
import android.view.View.VISIBLE
import android.widget.Toast
import androidx.appcompat.app.AlertDialog
import androidx.work.Data
import androidx.work.OneTimeWorkRequest
@ -50,6 +49,7 @@ import com.afollestad.materialdialogs.MaterialDialog
import com.afollestad.materialdialogs.bottomsheets.BottomSheet
import com.afollestad.materialdialogs.datetime.dateTimePicker
import com.google.android.material.dialog.MaterialAlertDialogBuilder
import com.google.android.material.snackbar.Snackbar
import com.nextcloud.android.common.ui.theme.utils.ColorRole
import com.nextcloud.talk.R
import com.nextcloud.talk.activities.BaseActivity
@ -594,12 +594,12 @@ class ConversationInfoActivity :
}
override fun onNext(genericOverall: GenericOverall) {
Toast.makeText(context, context.getString(R.string.nc_clear_history_success), Toast.LENGTH_LONG)
Snackbar.make(binding.root, context.getString(R.string.nc_clear_history_success), Snackbar.LENGTH_LONG)
.show()
}
override fun onError(e: Throwable) {
Toast.makeText(context, R.string.nc_common_error_sorry, Toast.LENGTH_LONG).show()
Snackbar.make(binding.root, R.string.nc_common_error_sorry, Snackbar.LENGTH_LONG).show()
Log.e(TAG, "failed to clear chat history", e)
}

View File

@ -4,9 +4,9 @@ import android.content.Intent
import android.util.Log
import android.view.LayoutInflater
import android.view.View
import android.widget.Toast
import androidx.appcompat.app.AlertDialog
import com.google.android.material.dialog.MaterialAlertDialogBuilder
import com.google.android.material.snackbar.Snackbar
import com.nextcloud.talk.R
import com.nextcloud.talk.data.user.model.User
import com.nextcloud.talk.databinding.ActivityConversationInfoBinding
@ -145,13 +145,13 @@ class GuestAccessHelper(
override fun onError(e: Throwable) {
val message = context.getString(R.string.nc_guest_access_resend_invitations_failed)
Toast.makeText(context, message, Toast.LENGTH_SHORT).show()
Snackbar.make(binding.root, message, Snackbar.LENGTH_SHORT).show()
Log.e(TAG, message, e)
}
override fun onComplete() {
if (resendInvitationsResult.successful) {
Toast.makeText(context, R.string.nc_guest_access_resend_invitations_successful, Toast.LENGTH_SHORT)
Snackbar.make(binding.root, R.string.nc_guest_access_resend_invitations_successful, Snackbar.LENGTH_SHORT)
.show()
}
}
@ -167,7 +167,7 @@ class GuestAccessHelper(
override fun onError(e: Throwable) {
val message = context.getString(R.string.nc_guest_access_allow_failed)
Toast.makeText(context, message, Toast.LENGTH_LONG).show()
Snackbar.make(binding.root, message, Snackbar.LENGTH_LONG).show()
Log.e(TAG, message, e)
}
@ -210,7 +210,7 @@ class GuestAccessHelper(
override fun onError(e: Throwable) {
val message = context.getString(R.string.nc_guest_access_password_failed)
Toast.makeText(context, message, Toast.LENGTH_LONG).show()
Snackbar.make(binding.root, message, Snackbar.LENGTH_LONG).show()
Log.e(TAG, message, e)
}

View File

@ -31,12 +31,12 @@ import android.util.Log
import android.view.Menu
import android.view.MenuItem
import android.view.View
import android.widget.Toast
import androidx.core.net.toFile
import androidx.core.view.ViewCompat
import androidx.lifecycle.ViewModelProvider
import autodagger.AutoInjector
import com.github.dhaval2404.imagepicker.ImagePicker
import com.google.android.material.snackbar.Snackbar
import com.nextcloud.talk.R
import com.nextcloud.talk.activities.BaseActivity
import com.nextcloud.talk.api.NcApi
@ -141,7 +141,7 @@ class ConversationInfoEditActivity :
}
is ConversationInfoEditViewModel.GetRoomErrorState -> {
Toast.makeText(context, R.string.nc_common_error_sorry, Toast.LENGTH_LONG).show()
Snackbar.make(binding.root, R.string.nc_common_error_sorry, Snackbar.LENGTH_LONG).show()
}
is ConversationInfoEditViewModel.UploadAvatarSuccessState -> {
@ -150,7 +150,7 @@ class ConversationInfoEditActivity :
}
is ConversationInfoEditViewModel.UploadAvatarErrorState -> {
Toast.makeText(context, R.string.nc_common_error_sorry, Toast.LENGTH_LONG).show()
Snackbar.make(binding.root, R.string.nc_common_error_sorry, Snackbar.LENGTH_LONG).show()
}
is ConversationInfoEditViewModel.DeleteAvatarSuccessState -> {
@ -159,7 +159,7 @@ class ConversationInfoEditActivity :
}
is ConversationInfoEditViewModel.DeleteAvatarErrorState -> {
Toast.makeText(context, R.string.nc_common_error_sorry, Toast.LENGTH_LONG).show()
Snackbar.make(binding.root, R.string.nc_common_error_sorry, Snackbar.LENGTH_LONG).show()
}
else -> {}
@ -249,10 +249,10 @@ class ConversationInfoEditActivity :
}
override fun onError(e: Throwable) {
Toast.makeText(
applicationContext,
Snackbar.make(
binding.root,
context.getString(R.string.default_error_msg),
Toast.LENGTH_LONG
Snackbar.LENGTH_LONG
).show()
Log.e(TAG, "Error while saving conversation name", e)
}
@ -289,10 +289,10 @@ class ConversationInfoEditActivity :
}
override fun onError(e: Throwable) {
Toast.makeText(
applicationContext,
Snackbar.make(
binding.root,
context.getString(R.string.default_error_msg),
Toast.LENGTH_LONG
Snackbar.LENGTH_LONG
).show()
Log.e(TAG, "Error while saving conversation description", e)
}
@ -315,7 +315,7 @@ class ConversationInfoEditActivity :
}
ImagePicker.RESULT_ERROR -> {
Toast.makeText(this, ImagePicker.getError(data), Toast.LENGTH_SHORT).show()
Snackbar.make(binding.root, ImagePicker.getError(data), Snackbar.LENGTH_SHORT).show()
}
else -> {

View File

@ -50,7 +50,6 @@ import android.view.MotionEvent
import android.view.View
import android.view.inputmethod.EditorInfo
import android.view.inputmethod.InputMethodManager
import android.widget.Toast
import androidx.activity.OnBackPressedCallback
import androidx.appcompat.app.AlertDialog
import androidx.appcompat.widget.SearchView
@ -68,6 +67,7 @@ import coil.transform.CircleCropTransformation
import com.google.android.material.appbar.AppBarLayout
import com.google.android.material.button.MaterialButton
import com.google.android.material.dialog.MaterialAlertDialogBuilder
import com.google.android.material.snackbar.Snackbar
import com.nextcloud.android.common.ui.theme.utils.ColorRole
import com.nextcloud.talk.R
import com.nextcloud.talk.activities.BaseActivity
@ -267,7 +267,7 @@ class ConversationsListActivity :
fetchRooms()
} else {
Log.e(TAG, "userManager.currentUser.blockingGet() returned null")
Toast.makeText(context, R.string.nc_common_error_sorry, Toast.LENGTH_LONG).show()
Snackbar.make(binding.root, R.string.nc_common_error_sorry, Snackbar.LENGTH_LONG).show()
}
showSearchOrToolbar()
@ -309,7 +309,7 @@ class ConversationsListActivity :
)
} else {
Log.e(TAG, "currentUser was null in loadUserAvatar")
Toast.makeText(context, R.string.nc_common_error_sorry, Toast.LENGTH_LONG).show()
Snackbar.make(binding.root, R.string.nc_common_error_sorry, Snackbar.LENGTH_LONG).show()
}
}
@ -989,14 +989,14 @@ class ConversationsListActivity :
) {
handleSharedData()
} else {
Toast.makeText(context, R.string.send_to_forbidden, Toast.LENGTH_LONG).show()
Snackbar.make(binding.root, R.string.send_to_forbidden, Snackbar.LENGTH_LONG).show()
}
} else if (forwardMessage) {
if (hasChatPermission && !isReadOnlyConversation(selectedConversation!!)) {
openConversation(intent.getStringExtra(KEY_FORWARD_MSG_TEXT))
forwardMessage = false
} else {
Toast.makeText(context, R.string.send_to_forbidden, Toast.LENGTH_LONG).show()
Snackbar.make(binding.root, R.string.send_to_forbidden, Snackbar.LENGTH_LONG).show()
}
} else {
openConversation()
@ -1023,8 +1023,8 @@ class ConversationsListActivity :
} else if (filesToShare != null && filesToShare!!.isNotEmpty()) {
showSendFilesConfirmDialog()
} else {
Toast
.makeText(context, context.resources.getString(R.string.nc_common_error_sorry), Toast.LENGTH_LONG)
Snackbar
.make(binding.root, context.resources.getString(R.string.nc_common_error_sorry), Snackbar.LENGTH_LONG)
.show()
}
}
@ -1125,18 +1125,18 @@ class ConversationsListActivity :
}
}
if (filesToShare!!.isEmpty() && textToPaste!!.isEmpty()) {
Toast.makeText(
context,
Snackbar.make(
binding.root,
context.resources.getString(R.string.nc_common_error_sorry),
Toast.LENGTH_LONG
Snackbar.LENGTH_LONG
).show()
Log.e(TAG, "failed to get data from intent")
}
} catch (e: Exception) {
Toast.makeText(
context,
Snackbar.make(
binding.root,
context.resources.getString(R.string.nc_common_error_sorry),
Toast.LENGTH_LONG
Snackbar.LENGTH_LONG
).show()
Log.e(TAG, "Something went wrong when extracting data from intent")
}
@ -1146,10 +1146,10 @@ class ConversationsListActivity :
private fun upload() {
if (selectedConversation == null) {
Toast.makeText(
context,
Snackbar.make(
binding.root,
context.resources.getString(R.string.nc_common_error_sorry),
Toast.LENGTH_LONG
Snackbar.LENGTH_LONG
).show()
Log.e(TAG, "not able to upload any files because conversation was null.")
return
@ -1164,7 +1164,8 @@ class ConversationsListActivity :
)
}
} catch (e: IllegalArgumentException) {
Toast.makeText(context, context.resources.getString(R.string.nc_upload_failed), Toast.LENGTH_LONG).show()
Snackbar.make(binding.root, context.resources.getString(R.string.nc_upload_failed), Snackbar.LENGTH_LONG)
.show()
Log.e(TAG, "Something went wrong when trying to upload file", e)
}
}
@ -1178,7 +1179,8 @@ class ConversationsListActivity :
Log.d(TAG, "upload starting after permissions were granted")
showSendFilesConfirmDialog()
} else {
Toast.makeText(context, context.getString(R.string.read_storage_no_permission), Toast.LENGTH_LONG).show()
Snackbar.make(binding.root, context.getString(R.string.read_storage_no_permission), Snackbar.LENGTH_LONG)
.show()
}
}
@ -1186,10 +1188,10 @@ class ConversationsListActivity :
if (CallActivity.active &&
selectedConversation!!.token != ApplicationWideCurrentRoomHolder.getInstance().currentRoomToken
) {
Toast.makeText(
context,
Snackbar.make(
binding.root,
context.getString(R.string.restrict_join_other_room_while_call),
Toast.LENGTH_LONG
Snackbar.LENGTH_LONG
).show()
return
}

View File

@ -23,10 +23,12 @@
*/
package com.nextcloud.talk.jobs
import android.Manifest
import android.app.Notification
import android.app.PendingIntent
import android.content.Context
import android.content.Intent
import android.content.pm.PackageManager
import android.graphics.Bitmap
import android.media.AudioAttributes
import android.media.MediaPlayer
@ -40,7 +42,8 @@ import android.service.notification.StatusBarNotification
import android.text.TextUtils
import android.util.Base64
import android.util.Log
import android.widget.Toast
import android.view.View
import androidx.core.app.ActivityCompat
import androidx.core.app.NotificationCompat
import androidx.core.app.NotificationManagerCompat
import androidx.core.app.Person
@ -53,6 +56,7 @@ import androidx.work.Worker
import androidx.work.WorkerParameters
import autodagger.AutoInjector
import com.bluelinelabs.logansquare.LoganSquare
import com.google.android.material.snackbar.Snackbar
import com.nextcloud.talk.BuildConfig
import com.nextcloud.talk.R
import com.nextcloud.talk.activities.MainActivity
@ -325,7 +329,8 @@ class NotificationWorker(context: Context, workerParams: WorkerParameters) : Wor
Log.e(TAG, "Failed to get NC notification", e)
if (BuildConfig.DEBUG) {
Handler(Looper.getMainLooper()).post {
Toast.makeText(context, "Failed to get NC notification", Toast.LENGTH_LONG).show()
Snackbar.make(View(applicationContext), "Failed to get NC notification", Snackbar
.LENGTH_LONG).show()
}
}
}
@ -734,6 +739,20 @@ class NotificationWorker(context: Context, workerParams: WorkerParameters) : Wor
private fun sendNotification(notificationId: Int, notification: Notification) {
Log.d(TAG, "show notification with id $notificationId")
if (ActivityCompat.checkSelfPermission(
applicationContext,
Manifest.permission.POST_NOTIFICATIONS
) != PackageManager.PERMISSION_GRANTED
) {
// TODO: Consider calling
// ActivityCompat#requestPermissions
// here to request the missing permissions, and then overriding
// public void onRequestPermissionsResult(int requestCode, String[] permissions,
// int[] grantResults)
// to handle the case where the user grants the permission. See the documentation
// for ActivityCompat#requestPermissions for more details.
return
}
notificationManager.notify(notificationId, notification)
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
@ -902,6 +921,20 @@ class NotificationWorker(context: Context, workerParams: WorkerParameters) : Wor
.build()
val notificationId: Int = SystemClock.uptimeMillis().toInt()
if (ActivityCompat.checkSelfPermission(
applicationContext,
Manifest.permission.POST_NOTIFICATIONS
) != PackageManager.PERMISSION_GRANTED
) {
// TODO: Consider calling
// ActivityCompat#requestPermissions
// here to request the missing permissions, and then overriding
// public void onRequestPermissionsResult(int requestCode, String[] permissions,
// int[] grantResults)
// to handle the case where the user grants the permission. See the documentation
// for ActivityCompat#requestPermissions for more details.
return
}
notificationManager.notify(notificationId, notification)
Log.d(TAG, "'you missed a call' notification was created")
}

View File

@ -32,11 +32,11 @@ import android.view.Menu
import android.view.MenuItem
import android.view.inputmethod.EditorInfo
import android.widget.AdapterView
import android.widget.Toast
import androidx.appcompat.widget.SearchView
import androidx.core.view.MenuItemCompat
import androidx.preference.PreferenceManager
import autodagger.AutoInjector
import com.google.android.material.snackbar.Snackbar
import com.nextcloud.talk.R
import com.nextcloud.talk.activities.BaseActivity
import com.nextcloud.talk.adapters.GeocodingAdapter
@ -216,7 +216,7 @@ class GeocodingActivity :
}
} catch (e: Exception) {
Log.e(TAG, "Failed to get geocoded addresses", e)
Toast.makeText(context, R.string.nc_common_error_sorry, Toast.LENGTH_LONG).show()
Snackbar.make(binding.root, R.string.nc_common_error_sorry, Snackbar.LENGTH_LONG).show()
}
updateResultsOnMainThread(results)
}

View File

@ -40,7 +40,6 @@ import android.view.Menu
import android.view.MenuItem
import android.view.View
import android.view.inputmethod.EditorInfo
import android.widget.Toast
import androidx.activity.OnBackPressedCallback
import androidx.appcompat.widget.SearchView
import androidx.core.content.PermissionChecker
@ -48,6 +47,7 @@ import androidx.core.content.res.ResourcesCompat
import androidx.core.view.MenuItemCompat
import androidx.preference.PreferenceManager
import autodagger.AutoInjector
import com.google.android.material.snackbar.Snackbar
import com.nextcloud.talk.R
import com.nextcloud.talk.activities.BaseActivity
import com.nextcloud.talk.api.NcApi
@ -319,7 +319,7 @@ class LocationPickerActivity :
binding.centerMapButton.setOnClickListener {
if (myLocation.latitude == COORDINATE_ZERO && myLocation.longitude == COORDINATE_ZERO) {
Toast.makeText(context, context.getString(R.string.nc_location_unknown), Toast.LENGTH_LONG).show()
Snackbar.make(binding.root, context.getString(R.string.nc_location_unknown), Snackbar.LENGTH_LONG).show()
} else {
mapController.animateTo(myLocation)
moveToCurrentLocation = true
@ -393,16 +393,16 @@ class LocationPickerActivity :
" and there is no alternative like UnifiedNlp installed. Furthermore no GPS is " +
"supported."
)
Toast.makeText(context, context.getString(R.string.nc_location_unknown), Toast.LENGTH_LONG)
Snackbar.make(binding.root, context.getString(R.string.nc_location_unknown), Snackbar.LENGTH_LONG)
.show()
}
}
} catch (e: SecurityException) {
Log.e(TAG, "Error when requesting location updates. Permissions may be missing.", e)
Toast.makeText(context, context.getString(R.string.nc_location_unknown), Toast.LENGTH_LONG).show()
Snackbar.make(binding.root, context.getString(R.string.nc_location_unknown), Snackbar.LENGTH_LONG).show()
} catch (e: Exception) {
Log.e(TAG, "Error when requesting location updates.", e)
Toast.makeText(context, context.getString(R.string.nc_common_error_sorry), Toast.LENGTH_LONG).show()
Snackbar.make(binding.root, context.getString(R.string.nc_common_error_sorry), Snackbar.LENGTH_LONG).show()
}
}
@ -476,7 +476,7 @@ class LocationPickerActivity :
override fun onError(e: Throwable) {
Log.e(TAG, "error when trying to share location", e)
Toast.makeText(context, R.string.nc_common_error_sorry, Toast.LENGTH_LONG).show()
Snackbar.make(binding.root, R.string.nc_common_error_sorry, Snackbar.LENGTH_LONG).show()
finish()
}
@ -531,7 +531,7 @@ class LocationPickerActivity :
if (requestCode == REQUEST_PERMISSIONS_REQUEST_CODE && areAllGranted(grantResults)) {
initMap()
} else {
Toast.makeText(context, context!!.getString(R.string.nc_location_permission_required), Toast.LENGTH_LONG)
Snackbar.make(binding.root, context!!.getString(R.string.nc_location_permission_required), Snackbar.LENGTH_LONG)
.show()
}
}
@ -556,7 +556,7 @@ class LocationPickerActivity :
address = nominatimClient!!.getAddress(lon, lat)
} catch (e: Exception) {
Log.e(TAG, "Failed to get geocoded addresses", e)
Toast.makeText(context, R.string.nc_common_error_sorry, Toast.LENGTH_LONG).show()
Snackbar.make(binding.root, R.string.nc_common_error_sorry, Snackbar.LENGTH_LONG).show()
}
updateResultOnMainThread(lat, lon, address?.displayName)
}

View File

@ -30,11 +30,11 @@ import android.text.TextUtils
import android.view.Menu
import android.view.MenuItem
import android.view.View
import android.widget.Toast
import androidx.activity.OnBackPressedCallback
import androidx.appcompat.widget.SearchView
import androidx.lifecycle.ViewModelProvider
import autodagger.AutoInjector
import com.google.android.material.snackbar.Snackbar
import com.nextcloud.talk.R
import com.nextcloud.talk.activities.BaseActivity
import com.nextcloud.talk.adapters.items.LoadMoreResultsItem
@ -127,7 +127,7 @@ class MessageSearchActivity : BaseActivity() {
private fun showError() {
displayLoading(false)
Toast.makeText(this, "Error while searching", Toast.LENGTH_SHORT).show()
Snackbar.make(binding.root, "Error while searching", Snackbar.LENGTH_SHORT).show()
}
private fun showLoading() {

View File

@ -24,9 +24,9 @@ import android.content.Intent
import android.graphics.drawable.ColorDrawable
import android.os.Bundle
import android.view.View
import android.widget.Toast
import androidx.lifecycle.ViewModelProvider
import autodagger.AutoInjector
import com.google.android.material.snackbar.Snackbar
import com.nextcloud.talk.R
import com.nextcloud.talk.activities.BaseActivity
import com.nextcloud.talk.api.NcApi
@ -112,7 +112,7 @@ class ListOpenConversationsActivity : BaseActivity() {
binding.emptyList.emptyListViewText.visibility = View.VISIBLE
}
is OpenConversationsViewModel.FetchConversationsErrorState -> {
Toast.makeText(context, R.string.nc_common_error_sorry, Toast.LENGTH_LONG).show()
Snackbar.make(binding.root, R.string.nc_common_error_sorry, Snackbar.LENGTH_LONG).show()
}
else -> {}
}

View File

@ -30,12 +30,12 @@ import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import android.widget.EditText
import android.widget.Toast
import androidx.fragment.app.DialogFragment
import androidx.lifecycle.ViewModelProvider
import androidx.recyclerview.widget.LinearLayoutManager
import autodagger.AutoInjector
import com.google.android.material.dialog.MaterialAlertDialogBuilder
import com.google.android.material.snackbar.Snackbar
import com.nextcloud.talk.R
import com.nextcloud.talk.application.NextcloudTalkApplication
import com.nextcloud.talk.databinding.DialogPollCreateBinding
@ -172,7 +172,7 @@ class PollCreateDialogFragment : DialogFragment(), PollCreateOptionsItemListener
private fun showError() {
dismiss()
Log.e(TAG, "Failed to create poll")
Toast.makeText(context, R.string.nc_common_error_sorry, Toast.LENGTH_LONG).show()
Snackbar.make(binding.root, R.string.nc_common_error_sorry, Snackbar.LENGTH_LONG).show()
}
override fun onRemoveOptionsItemClick(pollCreateOptionItem: PollCreateOptionItem, position: Int) {

View File

@ -32,12 +32,12 @@ import android.widget.CheckBox
import android.widget.CompoundButton
import android.widget.LinearLayout
import android.widget.RadioButton
import android.widget.Toast
import androidx.appcompat.app.AlertDialog
import androidx.fragment.app.Fragment
import androidx.lifecycle.ViewModelProvider
import autodagger.AutoInjector
import com.google.android.material.dialog.MaterialAlertDialogBuilder
import com.google.android.material.snackbar.Snackbar
import com.nextcloud.talk.R
import com.nextcloud.talk.application.NextcloudTalkApplication
import com.nextcloud.talk.databinding.DialogPollVoteBinding
@ -94,10 +94,10 @@ class PollVoteFragment : Fragment() {
PollVoteViewModel.InitialState -> {}
is PollVoteViewModel.PollVoteFailedState -> {
Log.e(TAG, "Failed to vote on poll.")
Toast.makeText(context, R.string.nc_common_error_sorry, Toast.LENGTH_LONG).show()
Snackbar.make(binding.root, R.string.nc_common_error_sorry, Snackbar.LENGTH_LONG).show()
}
is PollVoteViewModel.PollVoteHiddenSuccessState -> {
Toast.makeText(context, R.string.polls_voted_hidden_success, Toast.LENGTH_LONG).show()
Snackbar.make(binding.root, R.string.polls_voted_hidden_success, Snackbar.LENGTH_LONG).show()
parentViewModel.dismissDialog()
}
is PollVoteViewModel.PollVoteSuccessState -> {
@ -182,7 +182,7 @@ class PollVoteFragment : Fragment() {
viewModel.selectOption(index, false)
} else {
checkBox.isChecked = false
Toast.makeText(context, R.string.polls_max_votes_reached, Toast.LENGTH_LONG).show()
Snackbar.make(binding.root, R.string.polls_max_votes_reached, Snackbar.LENGTH_LONG).show()
}
} else {
viewModel.deSelectOption(index)

View File

@ -40,7 +40,6 @@ import android.view.Menu
import android.view.MenuItem
import android.view.View
import android.view.ViewGroup
import android.widget.Toast
import androidx.annotation.DrawableRes
import androidx.core.content.ContextCompat
import androidx.core.net.toFile
@ -49,6 +48,7 @@ import androidx.recyclerview.widget.RecyclerView
import autodagger.AutoInjector
import com.github.dhaval2404.imagepicker.ImagePicker
import com.github.dhaval2404.imagepicker.ImagePicker.Companion.getError
import com.google.android.material.snackbar.Snackbar
import com.nextcloud.android.common.ui.theme.utils.ColorRole
import com.nextcloud.talk.R
import com.nextcloud.talk.activities.BaseActivity
@ -459,13 +459,13 @@ class ProfileActivity : BaseActivity() {
override fun onError(e: Throwable) {
item.text = userInfo?.getValueByField(item.field)
Toast.makeText(
applicationContext,
Snackbar.make(
binding.root,
String.format(
resources!!.getString(R.string.failed_to_save),
item.field
),
Toast.LENGTH_LONG
Snackbar.LENGTH_LONG
).show()
adapter!!.updateFilteredList()
adapter!!.notifyDataSetChanged()
@ -492,8 +492,8 @@ class ProfileActivity : BaseActivity() {
if (grantResults.isNotEmpty() && grantResults[0] == PackageManager.PERMISSION_GRANTED) {
pickImage.takePicture()
} else {
Toast
.makeText(context, context.getString(R.string.take_photo_permission), Toast.LENGTH_LONG)
Snackbar
.make(binding.root, context.getString(R.string.take_photo_permission), Snackbar.LENGTH_LONG)
.show()
}
}
@ -510,7 +510,7 @@ class ProfileActivity : BaseActivity() {
) { uploadAvatar(it.toFile()) }
}
ImagePicker.RESULT_ERROR -> {
Toast.makeText(this, getError(data), Toast.LENGTH_SHORT).show()
Snackbar.make(binding.root, getError(data), Snackbar.LENGTH_SHORT).show()
}
else -> {
Log.i(TAG, "Task Cancelled")
@ -550,10 +550,10 @@ class ProfileActivity : BaseActivity() {
}
override fun onError(e: Throwable) {
Toast.makeText(
applicationContext,
Snackbar.make(
binding.root,
context.getString(R.string.default_error_msg),
Toast
Snackbar
.LENGTH_LONG
).show()
Log.e(TAG, "Error uploading avatar", e)

View File

@ -25,8 +25,9 @@ import android.content.BroadcastReceiver
import android.content.Context
import android.content.Intent
import android.util.Log
import android.widget.Toast
import android.view.View
import autodagger.AutoInjector
import com.google.android.material.snackbar.Snackbar
import com.nextcloud.talk.R
import com.nextcloud.talk.api.NcApi
import com.nextcloud.talk.application.NextcloudTalkApplication
@ -91,12 +92,12 @@ class ShareRecordingToChatReceiver : BroadcastReceiver() {
// combined with addNextIntentWithParentStack. For further reading, see
// https://developer.android.com/develop/ui/views/notifications/navigation#DirectEntry
// As we are using the conductor framework it might be hard the combine this or to keep an overview.
// For this reason there is only a toast for now until we got rid of conductor.
// For this reason there is only a Snackbar for now until we got rid of conductor.
Toast.makeText(
context,
Snackbar.make(
View(context),
context.resources.getString(R.string.nc_all_ok_operation),
Toast.LENGTH_LONG
Snackbar.LENGTH_LONG
).show()
}

View File

@ -52,7 +52,6 @@ import android.view.View
import android.view.WindowManager
import android.widget.EditText
import android.widget.LinearLayout
import android.widget.Toast
import androidx.appcompat.app.AlertDialog
import androidx.appcompat.view.ContextThemeWrapper
import androidx.core.content.ContextCompat
@ -63,6 +62,7 @@ import androidx.work.WorkManager
import autodagger.AutoInjector
import com.afollestad.materialdialogs.utils.MDUtil.getStringArray
import com.google.android.material.dialog.MaterialAlertDialogBuilder
import com.google.android.material.snackbar.Snackbar
import com.google.android.material.textfield.TextInputLayout
import com.nextcloud.android.common.ui.theme.utils.ColorRole
import com.nextcloud.talk.BuildConfig
@ -888,10 +888,10 @@ class SettingsActivity : BaseActivity() {
} else {
appPreferences.setPhoneBookIntegration(false)
binding.settingsPhoneBookIntegrationSwitch.isChecked = appPreferences.isPhoneBookIntegrationEnabled
Toast.makeText(
context,
Snackbar.make(
binding.root,
context.resources.getString(R.string.no_phone_book_integration_due_to_permissions),
Toast.LENGTH_LONG
Snackbar.LENGTH_LONG
).show()
}
}
@ -1082,12 +1082,12 @@ class SettingsActivity : BaseActivity() {
val statusCode = genericOverall.ocs?.meta?.statusCode
if (statusCode == HTTP_CODE) {
dialog.dismiss()
Toast.makeText(
context,
Snackbar.make(
binding.root,
context.resources.getString(
R.string.nc_settings_phone_book_integration_phone_number_dialog_success
),
Toast.LENGTH_LONG
Snackbar.LENGTH_LONG
).show()
} else {
textInputLayout.helperText = context.resources.getString(

View File

@ -29,13 +29,13 @@ import android.util.Log
import android.view.View
import android.widget.ImageView
import android.widget.ProgressBar
import android.widget.Toast
import androidx.core.content.FileProvider
import androidx.emoji2.widget.EmojiTextView
import androidx.work.Data
import androidx.work.OneTimeWorkRequest
import androidx.work.WorkInfo
import androidx.work.WorkManager
import com.google.android.material.snackbar.Snackbar
import com.nextcloud.talk.R
import com.nextcloud.talk.activities.FullScreenImageActivity
import com.nextcloud.talk.activities.FullScreenMediaActivity
@ -122,7 +122,7 @@ class FileViewerUtils(private val context: Context, private val user: User) {
"support it, it can't be handled by an external app and there is no link " +
"to open it in the nextcloud files app"
)
Toast.makeText(context, R.string.nc_common_error_sorry, Toast.LENGTH_LONG).show()
Snackbar.make(View(context), R.string.nc_common_error_sorry, Snackbar.LENGTH_LONG).show()
}
}
@ -175,7 +175,7 @@ class FileViewerUtils(private val context: Context, private val user: User) {
}
} else {
Log.e(TAG, "can't open file with unknown mimetype")
Toast.makeText(context, R.string.nc_common_error_sorry, Toast.LENGTH_LONG).show()
Snackbar.make(View(context), R.string.nc_common_error_sorry, Snackbar.LENGTH_LONG).show()
}
}