Remove Toaster

pull/1432/head
Alex Baker 4 years ago
parent 0f82b39913
commit 781ea9c03e

@ -8,8 +8,8 @@ import dagger.hilt.android.AndroidEntryPoint
import org.tasks.R import org.tasks.R
import org.tasks.billing.BillingClient import org.tasks.billing.BillingClient
import org.tasks.billing.Inventory import org.tasks.billing.Inventory
import org.tasks.extensions.Context.toast
import org.tasks.injection.InjectingPreferenceFragment import org.tasks.injection.InjectingPreferenceFragment
import org.tasks.ui.Toaster
import javax.inject.Inject import javax.inject.Inject
@AndroidEntryPoint @AndroidEntryPoint
@ -17,7 +17,6 @@ class Debug : InjectingPreferenceFragment() {
@Inject lateinit var inventory: Inventory @Inject lateinit var inventory: Inventory
@Inject lateinit var billingClient: BillingClient @Inject lateinit var billingClient: BillingClient
@Inject lateinit var toaster: Toaster
override fun getPreferenceXml() = R.xml.preferences_debug override fun getPreferenceXml() = R.xml.preferences_debug
@ -38,7 +37,7 @@ class Debug : InjectingPreferenceFragment() {
findPreference(R.string.debug_reset_ssl).setOnPreferenceClickListener { findPreference(R.string.debug_reset_ssl).setOnPreferenceClickListener {
resetCertificates(requireContext()) resetCertificates(requireContext())
toaster.longToast("SSL certificates reset") context?.toast("SSL certificates reset")
false false
} }

@ -65,6 +65,7 @@ import org.tasks.db.SuspendDbUtils.chunkedMap
import org.tasks.dialogs.DateTimePicker.Companion.newDateTimePicker import org.tasks.dialogs.DateTimePicker.Companion.newDateTimePicker
import org.tasks.dialogs.DialogBuilder import org.tasks.dialogs.DialogBuilder
import org.tasks.dialogs.SortDialog import org.tasks.dialogs.SortDialog
import org.tasks.extensions.Context.toast
import org.tasks.extensions.Fragment.safeStartActivityForResult import org.tasks.extensions.Fragment.safeStartActivityForResult
import org.tasks.filters.PlaceFilter import org.tasks.filters.PlaceFilter
import org.tasks.intents.TaskIntents import org.tasks.intents.TaskIntents
@ -79,7 +80,6 @@ import org.tasks.tasklist.*
import org.tasks.themes.ColorProvider import org.tasks.themes.ColorProvider
import org.tasks.themes.ThemeColor import org.tasks.themes.ThemeColor
import org.tasks.ui.TaskListViewModel import org.tasks.ui.TaskListViewModel
import org.tasks.ui.Toaster
import timber.log.Timber import timber.log.Timber
import java.text.ParseException import java.text.ParseException
import java.time.format.FormatStyle import java.time.format.FormatStyle
@ -105,7 +105,6 @@ class TaskListFragment : Fragment(), OnRefreshListener, Toolbar.OnMenuItemClickL
@Inject lateinit var localBroadcastManager: LocalBroadcastManager @Inject lateinit var localBroadcastManager: LocalBroadcastManager
@Inject lateinit var device: Device @Inject lateinit var device: Device
@Inject lateinit var taskMover: TaskMover @Inject lateinit var taskMover: TaskMover
@Inject lateinit var toaster: Toaster
@Inject lateinit var taskAdapterProvider: TaskAdapterProvider @Inject lateinit var taskAdapterProvider: TaskAdapterProvider
@Inject lateinit var taskDao: TaskDao @Inject lateinit var taskDao: TaskDao
@Inject lateinit var taskDuplicator: TaskDuplicator @Inject lateinit var taskDuplicator: TaskDuplicator
@ -421,7 +420,7 @@ class TaskListFragment : Fragment(), OnRefreshListener, Toolbar.OnMenuItemClickL
private fun clearCompleted() = lifecycleScope.launch { private fun clearCompleted() = lifecycleScope.launch {
val count = taskDeleter.clearCompleted(filter) val count = taskDeleter.clearCompleted(filter)
toaster.longToast(R.string.delete_multiple_tasks_confirmation, count) context?.toast(R.string.delete_multiple_tasks_confirmation, locale.formatNumber(count))
} }
@OnClick(R.id.fab) @OnClick(R.id.fab)

@ -24,7 +24,6 @@ import org.tasks.data.Geofence;
import org.tasks.data.Location; import org.tasks.data.Location;
import org.tasks.locale.Locale; import org.tasks.locale.Locale;
import org.tasks.preferences.PermissionChecker; import org.tasks.preferences.PermissionChecker;
import org.tasks.ui.Toaster;
@AndroidEntryPoint @AndroidEntryPoint
public class GeofenceDialog extends DialogFragment { public class GeofenceDialog extends DialogFragment {
@ -39,7 +38,6 @@ public class GeofenceDialog extends DialogFragment {
@Inject Activity context; @Inject Activity context;
@Inject Locale locale; @Inject Locale locale;
@Inject PermissionChecker permissionChecker; @Inject PermissionChecker permissionChecker;
@Inject Toaster toaster;
@BindView(R.id.location_arrival) @BindView(R.id.location_arrival)
SwitchMaterial arrivalView; SwitchMaterial arrivalView;

@ -14,7 +14,6 @@ import kotlinx.coroutines.withContext
import org.tasks.R import org.tasks.R
import org.tasks.backup.TasksJsonImporter import org.tasks.backup.TasksJsonImporter
import org.tasks.backup.TasksJsonImporter.ImportResult import org.tasks.backup.TasksJsonImporter.ImportResult
import org.tasks.ui.Toaster
import javax.inject.Inject import javax.inject.Inject
@AndroidEntryPoint @AndroidEntryPoint
@ -22,7 +21,6 @@ class ImportTasksDialog : DialogFragment() {
@Inject lateinit var jsonImporter: TasksJsonImporter @Inject lateinit var jsonImporter: TasksJsonImporter
@Inject lateinit var dialogBuilder: DialogBuilder @Inject lateinit var dialogBuilder: DialogBuilder
@Inject lateinit var context: Activity @Inject lateinit var context: Activity
@Inject lateinit var toaster: Toaster
override fun onCreateDialog(savedInstanceState: Bundle?): Dialog { override fun onCreateDialog(savedInstanceState: Bundle?): Dialog {
val arguments = requireArguments() val arguments = requireArguments()

@ -15,7 +15,9 @@ object Context {
} }
} }
fun Context.toast(resId: Int, duration: Int = Toast.LENGTH_LONG) { fun Context.toast(resId: Int, vararg formatArgs: Any, duration: Int = Toast.LENGTH_LONG) =
Toast.makeText(this, resId, duration).show() toast(getString(resId, formatArgs), duration)
}
fun Context.toast(text: String?, duration: Int = Toast.LENGTH_LONG) =
text?.let { Toast.makeText(this, it, duration).show() }
} }

@ -42,6 +42,7 @@ import org.tasks.data.Place
import org.tasks.data.Place.Companion.newPlace import org.tasks.data.Place.Companion.newPlace
import org.tasks.data.PlaceUsage import org.tasks.data.PlaceUsage
import org.tasks.dialogs.DialogBuilder import org.tasks.dialogs.DialogBuilder
import org.tasks.extensions.Context.toast
import org.tasks.injection.InjectingAppCompatActivity import org.tasks.injection.InjectingAppCompatActivity
import org.tasks.location.LocationPickerAdapter.OnLocationPicked import org.tasks.location.LocationPickerAdapter.OnLocationPicked
import org.tasks.location.LocationSearchAdapter.OnPredictionPicked import org.tasks.location.LocationSearchAdapter.OnPredictionPicked
@ -52,7 +53,6 @@ import org.tasks.preferences.PermissionRequestor
import org.tasks.preferences.Preferences import org.tasks.preferences.Preferences
import org.tasks.themes.ColorProvider import org.tasks.themes.ColorProvider
import org.tasks.themes.Theme import org.tasks.themes.Theme
import org.tasks.ui.Toaster
import timber.log.Timber import timber.log.Timber
import java.util.concurrent.TimeUnit import java.util.concurrent.TimeUnit
import javax.inject.Inject import javax.inject.Inject
@ -85,7 +85,6 @@ class LocationPickerActivity : InjectingAppCompatActivity(), Toolbar.OnMenuItemC
lateinit var recyclerView: RecyclerView lateinit var recyclerView: RecyclerView
@Inject lateinit var theme: Theme @Inject lateinit var theme: Theme
@Inject lateinit var toaster: Toaster
@Inject lateinit var locationDao: LocationDao @Inject lateinit var locationDao: LocationDao
@Inject lateinit var permissionChecker: PermissionChecker @Inject lateinit var permissionChecker: PermissionChecker
@Inject lateinit var permissionRequestor: ActivityPermissionRequestor @Inject lateinit var permissionRequestor: ActivityPermissionRequestor
@ -247,7 +246,7 @@ class LocationPickerActivity : InjectingAppCompatActivity(), Toolbar.OnMenuItemC
} catch (e: Exception) { } catch (e: Exception) {
loadingIndicator.visibility = View.GONE loadingIndicator.visibility = View.GONE
firebase.reportException(e) firebase.reportException(e)
toaster.longToast(e.message) toast(e.message)
} }
} }
} }
@ -267,7 +266,7 @@ class LocationPickerActivity : InjectingAppCompatActivity(), Toolbar.OnMenuItemC
try { try {
locationService.currentLocation()?.let { map.movePosition(it, animate) } locationService.currentLocation()?.let { map.movePosition(it, animate) }
} catch (e: Exception) { } catch (e: Exception) {
toaster.longToast(e.message) toast(e.message)
} }
} }
} }
@ -314,7 +313,7 @@ class LocationPickerActivity : InjectingAppCompatActivity(), Toolbar.OnMenuItemC
private fun handleError(error: Event<String>) { private fun handleError(error: Event<String>) {
val message = error.ifUnhandled val message = error.ifUnhandled
if (!isNullOrEmpty(message)) { if (!isNullOrEmpty(message)) {
toaster.longToast(message) toast(message)
} }
} }

@ -13,6 +13,7 @@ import kotlinx.coroutines.launch
import org.tasks.LocalBroadcastManager import org.tasks.LocalBroadcastManager
import org.tasks.R import org.tasks.R
import org.tasks.auth.SignInActivity import org.tasks.auth.SignInActivity
import org.tasks.extensions.Context.toast
import org.tasks.jobs.WorkManager import org.tasks.jobs.WorkManager
import org.tasks.preferences.fragments.MainSettingsFragment import org.tasks.preferences.fragments.MainSettingsFragment
import org.tasks.preferences.fragments.MainSettingsFragment.Companion.REQUEST_CALDAV_SETTINGS import org.tasks.preferences.fragments.MainSettingsFragment.Companion.REQUEST_CALDAV_SETTINGS
@ -20,7 +21,6 @@ import org.tasks.preferences.fragments.MainSettingsFragment.Companion.REQUEST_GO
import org.tasks.preferences.fragments.MainSettingsFragment.Companion.REQUEST_TASKS_ORG import org.tasks.preferences.fragments.MainSettingsFragment.Companion.REQUEST_TASKS_ORG
import org.tasks.preferences.fragments.TasksAccount import org.tasks.preferences.fragments.TasksAccount
import org.tasks.sync.SyncAdapters import org.tasks.sync.SyncAdapters
import org.tasks.ui.Toaster
import javax.inject.Inject import javax.inject.Inject
@AndroidEntryPoint @AndroidEntryPoint
@ -28,7 +28,6 @@ class MainPreferences : BasePreferences() {
@Inject lateinit var syncAdapters: SyncAdapters @Inject lateinit var syncAdapters: SyncAdapters
@Inject lateinit var workManager: WorkManager @Inject lateinit var workManager: WorkManager
@Inject lateinit var toaster: Toaster
@Inject lateinit var localBroadcastManager: LocalBroadcastManager @Inject lateinit var localBroadcastManager: LocalBroadcastManager
private val viewModel: PreferencesViewModel by viewModels() private val viewModel: PreferencesViewModel by viewModels()
@ -61,7 +60,7 @@ class MainPreferences : BasePreferences() {
syncAdapters.sync(true) syncAdapters.sync(true)
workManager.updateBackgroundSync() workManager.updateBackgroundSync()
} else { } else {
data?.getStringExtra(GtasksLoginActivity.EXTRA_ERROR)?.let { toaster.longToast(it) } data?.getStringExtra(GtasksLoginActivity.EXTRA_ERROR)?.let { toast(it) }
} }
REQUEST_TASKS_ORG -> if (resultCode == Activity.RESULT_OK) { REQUEST_TASKS_ORG -> if (resultCode == Activity.RESULT_OK) {
syncAdapters.sync(true) syncAdapters.sync(true)
@ -78,7 +77,7 @@ class MainPreferences : BasePreferences() {
} }
} }
} else { } else {
data?.getStringExtra(SignInActivity.EXTRA_ERROR)?.let { toaster.longToast(it) } data?.getStringExtra(SignInActivity.EXTRA_ERROR)?.let { toast(it) }
} }
else -> super.onActivityResult(requestCode, resultCode, data) else -> super.onActivityResult(requestCode, resultCode, data)
} }

@ -16,6 +16,7 @@ import org.tasks.R
import org.tasks.calendars.CalendarEventProvider import org.tasks.calendars.CalendarEventProvider
import org.tasks.data.TaskDao import org.tasks.data.TaskDao
import org.tasks.etebase.EtebaseLocalCache import org.tasks.etebase.EtebaseLocalCache
import org.tasks.extensions.Context.toast
import org.tasks.files.FileHelper import org.tasks.files.FileHelper
import org.tasks.injection.InjectingPreferenceFragment import org.tasks.injection.InjectingPreferenceFragment
import org.tasks.preferences.FragmentPermissionRequestor import org.tasks.preferences.FragmentPermissionRequestor
@ -23,7 +24,6 @@ import org.tasks.preferences.PermissionChecker
import org.tasks.preferences.PermissionRequestor import org.tasks.preferences.PermissionRequestor
import org.tasks.preferences.Preferences import org.tasks.preferences.Preferences
import org.tasks.scheduling.CalendarNotificationIntentService import org.tasks.scheduling.CalendarNotificationIntentService
import org.tasks.ui.Toaster
import javax.inject.Inject import javax.inject.Inject
private const val REQUEST_CODE_FILES_DIR = 10000 private const val REQUEST_CODE_FILES_DIR = 10000
@ -35,7 +35,6 @@ class Advanced : InjectingPreferenceFragment() {
@Inject lateinit var database: Database @Inject lateinit var database: Database
@Inject lateinit var taskDao: TaskDao @Inject lateinit var taskDao: TaskDao
@Inject lateinit var calendarEventProvider: CalendarEventProvider @Inject lateinit var calendarEventProvider: CalendarEventProvider
@Inject lateinit var toaster: Toaster
@Inject lateinit var permissionRequester: FragmentPermissionRequestor @Inject lateinit var permissionRequester: FragmentPermissionRequestor
@Inject lateinit var permissionChecker: PermissionChecker @Inject lateinit var permissionChecker: PermissionChecker
@Inject lateinit var localBroadcastManager: LocalBroadcastManager @Inject lateinit var localBroadcastManager: LocalBroadcastManager
@ -186,7 +185,7 @@ class Advanced : InjectingPreferenceFragment() {
} }
private fun performAction(message: Int, callable: suspend () -> Int) = lifecycleScope.launch { private fun performAction(message: Int, callable: suspend () -> Int) = lifecycleScope.launch {
toaster.longToastUnformatted(message, callable()) context?.toast(message, callable())
} }
private fun resetPreferences() { private fun resetPreferences() {

@ -13,13 +13,13 @@ import org.tasks.R
import org.tasks.dialogs.ExportTasksDialog import org.tasks.dialogs.ExportTasksDialog
import org.tasks.dialogs.ImportTasksDialog import org.tasks.dialogs.ImportTasksDialog
import org.tasks.drive.DriveLoginActivity import org.tasks.drive.DriveLoginActivity
import org.tasks.extensions.Context.toast
import org.tasks.files.FileHelper import org.tasks.files.FileHelper
import org.tasks.injection.InjectingPreferenceFragment import org.tasks.injection.InjectingPreferenceFragment
import org.tasks.preferences.FragmentPermissionRequestor import org.tasks.preferences.FragmentPermissionRequestor
import org.tasks.preferences.PermissionRequestor import org.tasks.preferences.PermissionRequestor
import org.tasks.preferences.Preferences import org.tasks.preferences.Preferences
import org.tasks.preferences.PreferencesViewModel import org.tasks.preferences.PreferencesViewModel
import org.tasks.ui.Toaster
import java.util.* import java.util.*
import javax.inject.Inject import javax.inject.Inject
@ -35,7 +35,6 @@ class Backups : InjectingPreferenceFragment() {
@Inject lateinit var preferences: Preferences @Inject lateinit var preferences: Preferences
@Inject lateinit var permissionRequestor: FragmentPermissionRequestor @Inject lateinit var permissionRequestor: FragmentPermissionRequestor
@Inject lateinit var toaster: Toaster
@Inject lateinit var locale: Locale @Inject lateinit var locale: Locale
private val viewModel: PreferencesViewModel by activityViewModels() private val viewModel: PreferencesViewModel by activityViewModels()
@ -195,7 +194,7 @@ class Backups : InjectingPreferenceFragment() {
ignoreCase = true ignoreCase = true
)) ))
) { ) {
toaster.longToast(R.string.invalid_backup_file) context?.toast(R.string.invalid_backup_file)
} else { } else {
ImportTasksDialog.newImportTasksDialog(uri, extension) ImportTasksDialog.newImportTasksDialog(uri, extension)
.show(parentFragmentManager, FRAG_TAG_IMPORT_TASKS) .show(parentFragmentManager, FRAG_TAG_IMPORT_TASKS)
@ -205,7 +204,7 @@ class Backups : InjectingPreferenceFragment() {
if (resultCode == RESULT_OK) { if (resultCode == RESULT_OK) {
viewModel.updateDriveBackup() viewModel.updateDriveBackup()
} else { } else {
data?.getStringExtra(DriveLoginActivity.EXTRA_ERROR)?.let { toaster.longToast(it) } data?.getStringExtra(DriveLoginActivity.EXTRA_ERROR)?.let { context?.toast(it) }
} }
} else if (requestCode == REQUEST_BACKUP_NOW) { } else if (requestCode == REQUEST_BACKUP_NOW) {
if (resultCode == RESULT_OK) { if (resultCode == RESULT_OK) {

@ -5,6 +5,7 @@ import android.net.Uri
import android.os.Bundle import android.os.Bundle
import android.view.LayoutInflater import android.view.LayoutInflater
import android.view.View import android.view.View
import android.widget.Toast.LENGTH_SHORT
import androidx.core.content.ContextCompat import androidx.core.content.ContextCompat
import androidx.core.content.ContextCompat.getSystemService import androidx.core.content.ContextCompat.getSystemService
import androidx.fragment.app.Fragment import androidx.fragment.app.Fragment
@ -26,11 +27,11 @@ import org.tasks.billing.Purchase
import org.tasks.data.CaldavAccount import org.tasks.data.CaldavAccount
import org.tasks.data.CaldavAccount.Companion.isPaymentRequired import org.tasks.data.CaldavAccount.Companion.isPaymentRequired
import org.tasks.data.CaldavDao import org.tasks.data.CaldavDao
import org.tasks.extensions.Context.toast
import org.tasks.jobs.WorkManager import org.tasks.jobs.WorkManager
import org.tasks.locale.Locale import org.tasks.locale.Locale
import org.tasks.preferences.IconPreference import org.tasks.preferences.IconPreference
import org.tasks.preferences.fragments.MainSettingsFragment.Companion.REQUEST_TASKS_ORG import org.tasks.preferences.fragments.MainSettingsFragment.Companion.REQUEST_TASKS_ORG
import org.tasks.ui.Toaster
import java.time.format.FormatStyle import java.time.format.FormatStyle
import javax.inject.Inject import javax.inject.Inject
@ -42,7 +43,6 @@ class TasksAccount : BaseAccountPreference() {
@Inject lateinit var localBroadcastManager: LocalBroadcastManager @Inject lateinit var localBroadcastManager: LocalBroadcastManager
@Inject lateinit var caldavDao: CaldavDao @Inject lateinit var caldavDao: CaldavDao
@Inject lateinit var workManager: WorkManager @Inject lateinit var workManager: WorkManager
@Inject lateinit var toaster: Toaster
@Inject lateinit var locale: Locale @Inject lateinit var locale: Locale
private val viewModel: TasksAccountViewModel by viewModels() private val viewModel: TasksAccountViewModel by viewModels()
@ -83,7 +83,7 @@ class TasksAccount : BaseAccountPreference() {
findPreference(R.string.local_lists).setOnPreferenceClickListener { findPreference(R.string.local_lists).setOnPreferenceClickListener {
workManager.migrateLocalTasks(caldavAccount) workManager.migrateLocalTasks(caldavAccount)
toaster.longToast(R.string.migrating_tasks) context?.toast(R.string.migrating_tasks)
false false
} }
@ -139,7 +139,7 @@ class TasksAccount : BaseAccountPreference() {
val label = getString(labelRes) val label = getString(labelRes)
getSystemService(requireContext(), ClipboardManager::class.java) getSystemService(requireContext(), ClipboardManager::class.java)
?.setPrimaryClip(ClipData.newPlainText(label, value)) ?.setPrimaryClip(ClipData.newPlainText(label, value))
toaster.toast(R.string.copied_to_clipboard, label) context?.toast(R.string.copied_to_clipboard, label, duration = LENGTH_SHORT)
} }
} }
} }

@ -40,6 +40,7 @@ import org.tasks.LocalBroadcastManager
import org.tasks.R import org.tasks.R
import org.tasks.data.* import org.tasks.data.*
import org.tasks.data.TaskDao.TaskCriteria.activeAndVisible import org.tasks.data.TaskDao.TaskCriteria.activeAndVisible
import org.tasks.extensions.Context.toast
import org.tasks.locale.Locale import org.tasks.locale.Locale
import org.tasks.tasklist.SubtaskViewHolder import org.tasks.tasklist.SubtaskViewHolder
import org.tasks.tasklist.SubtasksRecyclerAdapter import org.tasks.tasklist.SubtasksRecyclerAdapter
@ -57,7 +58,6 @@ class SubtaskControlSet : TaskEditControlFragment(), SubtaskViewHolder.Callbacks
@Inject lateinit var taskCompleter: TaskCompleter @Inject lateinit var taskCompleter: TaskCompleter
@Inject lateinit var localBroadcastManager: LocalBroadcastManager @Inject lateinit var localBroadcastManager: LocalBroadcastManager
@Inject lateinit var googleTaskDao: GoogleTaskDao @Inject lateinit var googleTaskDao: GoogleTaskDao
@Inject lateinit var toaster: Toaster
@Inject lateinit var taskCreator: TaskCreator @Inject lateinit var taskCreator: TaskCreator
@Inject lateinit var caldavDao: CaldavDao @Inject lateinit var caldavDao: CaldavDao
@Inject lateinit var taskDao: TaskDao @Inject lateinit var taskDao: TaskDao
@ -114,7 +114,7 @@ class SubtaskControlSet : TaskEditControlFragment(), SubtaskViewHolder.Callbacks
@OnClick(R.id.add_subtask) @OnClick(R.id.add_subtask)
fun addSubtask() { fun addSubtask() {
if (isGoogleTaskChild) { if (isGoogleTaskChild) {
toaster.longToast(R.string.subtasks_multilevel_google_task) context?.toast(R.string.subtasks_multilevel_google_task)
} else { } else {
lifecycleScope.launch { lifecycleScope.launch {
val task = taskCreator.createWithValues("") val task = taskCreator.createWithValues("")

@ -1,52 +0,0 @@
package org.tasks.ui;
import static android.widget.Toast.LENGTH_LONG;
import static android.widget.Toast.LENGTH_SHORT;
import static org.tasks.Strings.isNullOrEmpty;
import android.content.Context;
import android.widget.Toast;
import androidx.annotation.StringRes;
import dagger.hilt.android.qualifiers.ActivityContext;
import javax.inject.Inject;
import org.tasks.locale.Locale;
public class Toaster {
private final Context context;
private final Locale locale;
@Inject
public Toaster(@ActivityContext Context context, Locale locale) {
this.context = context;
this.locale = locale;
}
public void longToast(@StringRes int resId, int number) {
longToast(context.getString(resId, locale.formatNumber(number)));
}
public void longToast(@StringRes int resId) {
longToast(context.getString(resId));
}
public void longToast(String text) {
toast(text, LENGTH_LONG);
}
public void toast(@StringRes int resId, Object... args) {
toast(context.getString(resId, args), LENGTH_SHORT);
}
@SuppressWarnings("DeprecatedIsStillUsed")
@Deprecated
public void longToastUnformatted(@StringRes int resId, int number) {
Toast.makeText(context, context.getString(resId, number), LENGTH_LONG).show();
}
private void toast(String text, int duration) {
if (!isNullOrEmpty(text)) {
Toast.makeText(context, text, duration).show();
}
}
}

@ -9,15 +9,14 @@ import dagger.hilt.android.AndroidEntryPoint
import dagger.hilt.android.qualifiers.ApplicationContext import dagger.hilt.android.qualifiers.ApplicationContext
import kotlinx.coroutines.launch import kotlinx.coroutines.launch
import org.tasks.R import org.tasks.R
import org.tasks.extensions.Context.toast
import org.tasks.injection.InjectingAppCompatActivity import org.tasks.injection.InjectingAppCompatActivity
import org.tasks.ui.Toaster
import javax.inject.Inject import javax.inject.Inject
@AndroidEntryPoint @AndroidEntryPoint
class VoiceCommandActivity : InjectingAppCompatActivity() { class VoiceCommandActivity : InjectingAppCompatActivity() {
@Inject lateinit var taskCreator: TaskCreator @Inject lateinit var taskCreator: TaskCreator
@Inject @ApplicationContext lateinit var context: Context @Inject @ApplicationContext lateinit var context: Context
@Inject lateinit var toaster: Toaster
override fun onCreate(savedInstanceState: Bundle?) { override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState) super.onCreate(savedInstanceState)
@ -28,7 +27,7 @@ class VoiceCommandActivity : InjectingAppCompatActivity() {
?.takeUnless { it.isBlank() } ?.takeUnless { it.isBlank() }
?.let { ?.let {
taskCreator.basicQuickAddTask(it) taskCreator.basicQuickAddTask(it)
toaster.longToast(R.string.voice_command_added_task) toast(R.string.voice_command_added_task)
} }
finish() finish()
} }

Loading…
Cancel
Save