Add openUri extension method

pull/1432/head
Alex Baker 5 years ago
parent b1c6c9b7cc
commit 0cbab11d2c

@ -7,7 +7,6 @@ package com.todoroo.astrid.activity
import android.app.Activity import android.app.Activity
import android.content.Context import android.content.Context
import android.content.Intent
import android.graphics.Paint import android.graphics.Paint
import android.graphics.drawable.ColorDrawable import android.graphics.drawable.ColorDrawable
import android.net.Uri import android.net.Uri
@ -50,6 +49,7 @@ import org.tasks.databinding.FragmentTaskEditBinding
import org.tasks.date.DateTimeUtils.newDateTime import org.tasks.date.DateTimeUtils.newDateTime
import org.tasks.dialogs.DialogBuilder import org.tasks.dialogs.DialogBuilder
import org.tasks.dialogs.Linkify import org.tasks.dialogs.Linkify
import org.tasks.extensions.Context.openUri
import org.tasks.files.FileHelper import org.tasks.files.FileHelper
import org.tasks.fragments.TaskEditControlSetFragmentManager import org.tasks.fragments.TaskEditControlSetFragmentManager
import org.tasks.notifications.NotificationManager import org.tasks.notifications.NotificationManager
@ -268,11 +268,7 @@ class TaskEditFragment : Fragment(), Toolbar.OnMenuItemClickListener {
taskListFragment.onTaskCreated(model.uuid) taskListFragment.onTaskCreated(model.uuid)
if (!isNullOrEmpty(model.calendarURI)) { if (!isNullOrEmpty(model.calendarURI)) {
taskListFragment.makeSnackbar(R.string.calendar_event_created, model.title) taskListFragment.makeSnackbar(R.string.calendar_event_created, model.title)
?.setAction(R.string.action_open) { ?.setAction(R.string.action_open) { context.openUri(model.calendarURI) }
val uri = model.calendarURI
val intent = Intent(Intent.ACTION_VIEW, Uri.parse(uri))
taskListFragment.startActivity(intent)
}
?.show() ?.show()
} }
} }

@ -4,7 +4,6 @@ import android.app.Activity
import android.content.Context import android.content.Context
import android.content.DialogInterface import android.content.DialogInterface
import android.content.Intent import android.content.Intent
import android.net.Uri
import android.os.Bundle import android.os.Bundle
import android.view.MenuItem import android.view.MenuItem
import android.view.inputmethod.InputMethodManager import android.view.inputmethod.InputMethodManager
@ -41,6 +40,7 @@ import org.tasks.data.Filter
import org.tasks.data.FilterDao import org.tasks.data.FilterDao
import org.tasks.data.TaskDao.TaskCriteria.activeAndVisible import org.tasks.data.TaskDao.TaskCriteria.activeAndVisible
import org.tasks.db.QueryUtils import org.tasks.db.QueryUtils
import org.tasks.extensions.Context.openUri
import org.tasks.filters.FilterCriteriaProvider import org.tasks.filters.FilterCriteriaProvider
import org.tasks.locale.Locale import org.tasks.locale.Locale
import java.util.* import java.util.*
@ -308,9 +308,7 @@ class FilterSettingsActivity : BaseListSettingsActivity() {
super.onMenuItemClick(item) super.onMenuItemClick(item)
} }
private fun help() { private fun help() = openUri(R.string.url_filters)
startActivity(Intent(Intent.ACTION_VIEW, Uri.parse("https://tasks.org/filters")))
}
private fun updateList() { private fun updateList() {
var max = 0 var max = 0

@ -14,7 +14,6 @@
package org.tasks.auth package org.tasks.auth
import android.content.Intent import android.content.Intent
import android.net.Uri
import android.os.Bundle import android.os.Bundle
import android.view.View import android.view.View
import android.view.ViewGroup import android.view.ViewGroup
@ -43,6 +42,7 @@ import org.tasks.billing.Inventory
import org.tasks.billing.PurchaseActivity import org.tasks.billing.PurchaseActivity
import org.tasks.billing.PurchaseActivity.Companion.EXTRA_GITHUB import org.tasks.billing.PurchaseActivity.Companion.EXTRA_GITHUB
import org.tasks.dialogs.DialogBuilder import org.tasks.dialogs.DialogBuilder
import org.tasks.extensions.Context.openUri
import org.tasks.injection.InjectingAppCompatActivity import org.tasks.injection.InjectingAppCompatActivity
import org.tasks.themes.ThemeColor import org.tasks.themes.ThemeColor
import timber.log.Timber import timber.log.Timber
@ -123,12 +123,7 @@ class SignInActivity : InjectingAppCompatActivity() {
dialogBuilder.newDialog() dialogBuilder.newDialog()
.setTitle(R.string.sign_in_to_tasks) .setTitle(R.string.sign_in_to_tasks)
.setNeutralButton(R.string.help) { _, _ -> .setNeutralButton(R.string.help) { _, _ ->
startActivity( openUri(R.string.help_url_sync)
Intent(
Intent.ACTION_VIEW,
Uri.parse(getString(R.string.help_url_sync))
)
)
finish() finish()
} }
.setNegativeButton(R.string.cancel) { _, _ -> .setNegativeButton(R.string.cancel) { _, _ ->

@ -1,8 +1,6 @@
package org.tasks.billing package org.tasks.billing
import android.content.Context import android.content.Context
import android.content.Intent
import android.net.Uri
import android.os.Handler import android.os.Handler
import androidx.lifecycle.MutableLiveData import androidx.lifecycle.MutableLiveData
import dagger.hilt.android.qualifiers.ApplicationContext import dagger.hilt.android.qualifiers.ApplicationContext
@ -11,6 +9,7 @@ import org.tasks.LocalBroadcastManager
import org.tasks.R import org.tasks.R
import org.tasks.data.CaldavAccount.Companion.TYPE_TASKS import org.tasks.data.CaldavAccount.Companion.TYPE_TASKS
import org.tasks.data.CaldavDao import org.tasks.data.CaldavDao
import org.tasks.extensions.Context.openUri
import org.tasks.preferences.Preferences import org.tasks.preferences.Preferences
import timber.log.Timber import timber.log.Timber
import java.util.* import java.util.*
@ -93,11 +92,7 @@ class Inventory @Inject constructor(
fun unsubscribe(context: Context): Boolean { fun unsubscribe(context: Context): Boolean {
subscription.value?.let { subscription.value?.let {
context.startActivity( context.openUri(R.string.manage_subscription_url, it.sku)
Intent(
Intent.ACTION_VIEW,
Uri.parse(context.getString(R.string.manage_subscription_url, it.sku)))
)
} }
return false return false
} }

@ -32,6 +32,7 @@ import org.tasks.data.CaldavDao
import org.tasks.databinding.ActivityCaldavAccountSettingsBinding import org.tasks.databinding.ActivityCaldavAccountSettingsBinding
import org.tasks.dialogs.DialogBuilder import org.tasks.dialogs.DialogBuilder
import org.tasks.dialogs.Linkify import org.tasks.dialogs.Linkify
import org.tasks.extensions.Context.openUri
import org.tasks.injection.ThemedInjectingAppCompatActivity import org.tasks.injection.ThemedInjectingAppCompatActivity
import org.tasks.security.KeyStoreEncryption import org.tasks.security.KeyStoreEncryption
import org.tasks.ui.DisplayableException import org.tasks.ui.DisplayableException
@ -354,7 +355,7 @@ abstract class BaseCaldavAccountSettingsActivity : ThemedInjectingAppCompatActiv
override fun onMenuItemClick(item: MenuItem): Boolean { override fun onMenuItemClick(item: MenuItem): Boolean {
when (item.itemId) { when (item.itemId) {
R.id.menu_help -> startActivity(Intent(Intent.ACTION_VIEW, Uri.parse(getString(helpUrl)))) R.id.menu_help -> openUri(helpUrl)
R.id.remove -> removeAccountPrompt() R.id.remove -> removeAccountPrompt()
} }
return onOptionsItemSelected(item) return onOptionsItemSelected(item)

@ -1,7 +1,5 @@
package org.tasks.compose package org.tasks.compose
import android.content.Intent
import android.net.Uri
import androidx.compose.foundation.Image import androidx.compose.foundation.Image
import androidx.compose.foundation.background import androidx.compose.foundation.background
import androidx.compose.foundation.layout.Arrangement import androidx.compose.foundation.layout.Arrangement
@ -47,6 +45,7 @@ import org.tasks.Tasks.Companion.IS_GENERIC
import org.tasks.compose.Constants.HALF_KEYLINE import org.tasks.compose.Constants.HALF_KEYLINE
import org.tasks.compose.Constants.KEYLINE_FIRST import org.tasks.compose.Constants.KEYLINE_FIRST
import org.tasks.compose.PurchaseText.PurchaseText import org.tasks.compose.PurchaseText.PurchaseText
import org.tasks.extensions.Context.openUri
@Preview(showBackground = true, backgroundColor = 0xFFFFFF) @Preview(showBackground = true, backgroundColor = 0xFFFFFF)
@Composable @Composable
@ -165,14 +164,7 @@ object PurchaseText {
fun SponsorButton() { fun SponsorButton() {
val context = LocalContext.current val context = LocalContext.current
OutlinedButton( OutlinedButton(
onClick = { onClick = { context.openUri(R.string.url_sponsor) },
context.startActivity(
Intent(
Intent.ACTION_VIEW,
Uri.parse(context.getString(R.string.url_sponsor))
)
)
},
colors = ButtonDefaults.textButtonColors( colors = ButtonDefaults.textButtonColors(
backgroundColor = MaterialTheme.colors.secondary, backgroundColor = MaterialTheme.colors.secondary,
contentColor = MaterialTheme.colors.onSecondary contentColor = MaterialTheme.colors.onSecondary

@ -1,7 +1,6 @@
package org.tasks.data package org.tasks.data
import android.content.Context import android.content.Context
import android.content.Intent
import android.location.Location import android.location.Location
import android.net.Uri import android.net.Uri
import android.os.Parcel import android.os.Parcel
@ -12,7 +11,7 @@ import com.todoroo.astrid.api.FilterListItem.NO_ORDER
import com.todoroo.astrid.helper.UUIDHelper import com.todoroo.astrid.helper.UUIDHelper
import net.fortuna.ical4j.model.property.Geo import net.fortuna.ical4j.model.property.Geo
import org.tasks.Strings import org.tasks.Strings
import org.tasks.extensions.Context.safeStartActivity import org.tasks.extensions.Context.openUri
import org.tasks.location.MapPosition import org.tasks.location.MapPosition
import org.tasks.themes.CustomIcons.PLACE import org.tasks.themes.CustomIcons.PLACE
import java.io.Serializable import java.io.Serializable
@ -109,14 +108,8 @@ class Place : Serializable, Parcelable {
val displayAddress: String? val displayAddress: String?
get() = if (Strings.isNullOrEmpty(address)) null else address!!.replace("$name, ", "") get() = if (Strings.isNullOrEmpty(address)) null else address!!.replace("$name, ", "")
fun open(context: Context?) { fun open(context: Context?) =
context?.safeStartActivity( context?.openUri("geo:$latitude,$longitude?q=${Uri.encode(displayName)}")
Intent(
Intent.ACTION_VIEW,
Uri.parse("geo:$latitude,$longitude?q=${Uri.encode(displayName)}")
)
)
}
val mapPosition: MapPosition val mapPosition: MapPosition
get() = MapPosition(latitude, longitude) get() = MapPosition(latitude, longitude)

@ -3,7 +3,6 @@ package org.tasks.dialogs
import android.app.Dialog import android.app.Dialog
import android.content.DialogInterface import android.content.DialogInterface
import android.content.Intent import android.content.Intent
import android.net.Uri
import android.os.Bundle import android.os.Bundle
import android.text.method.LinkMovementMethod import android.text.method.LinkMovementMethod
import android.view.View import android.view.View
@ -16,6 +15,7 @@ import org.tasks.analytics.Firebase
import org.tasks.billing.Inventory import org.tasks.billing.Inventory
import org.tasks.billing.PurchaseActivity import org.tasks.billing.PurchaseActivity
import org.tasks.databinding.DialogWhatsNewBinding import org.tasks.databinding.DialogWhatsNewBinding
import org.tasks.extensions.Context.openUri
import org.tasks.preferences.Preferences import org.tasks.preferences.Preferences
import java.io.BufferedReader import java.io.BufferedReader
import javax.inject.Inject import javax.inject.Inject
@ -98,12 +98,12 @@ class WhatsNewDialog : DialogFragment() {
logClick(true) logClick(true)
preferences.setBoolean(R.string.p_clicked_rate, true) preferences.setBoolean(R.string.p_clicked_rate, true)
dismiss() dismiss()
startActivity(Intent(Intent.ACTION_VIEW, Uri.parse(getString(R.string.market_url)))) context?.openUri(R.string.market_url)
} }
private fun onDonateClick() { private fun onDonateClick() {
dismiss() dismiss()
startActivity(Intent(Intent.ACTION_VIEW, Uri.parse(getString(R.string.url_donate)))) context?.openUri(R.string.url_donate)
} }
override fun onCancel(dialog: DialogInterface) { override fun onCancel(dialog: DialogInterface) {

@ -2,7 +2,6 @@ package org.tasks.etesync
import android.app.Activity import android.app.Activity
import android.content.Intent import android.content.Intent
import android.net.Uri
import android.os.Bundle import android.os.Bundle
import android.view.MenuItem import android.view.MenuItem
import android.view.View import android.view.View
@ -25,6 +24,7 @@ import org.tasks.R
import org.tasks.Strings.isNullOrEmpty import org.tasks.Strings.isNullOrEmpty
import org.tasks.data.CaldavAccount import org.tasks.data.CaldavAccount
import org.tasks.databinding.ActivityEtesyncEncryptionSettingsBinding import org.tasks.databinding.ActivityEtesyncEncryptionSettingsBinding
import org.tasks.extensions.Context.openUri
import org.tasks.injection.ThemedInjectingAppCompatActivity import org.tasks.injection.ThemedInjectingAppCompatActivity
import org.tasks.security.KeyStoreEncryption import org.tasks.security.KeyStoreEncryption
import org.tasks.ui.DisplayableException import org.tasks.ui.DisplayableException
@ -174,7 +174,7 @@ class EncryptionSettingsActivity : ThemedInjectingAppCompatActivity(), Toolbar.O
override fun onMenuItemClick(item: MenuItem): Boolean { override fun onMenuItemClick(item: MenuItem): Boolean {
return if (item.itemId == R.id.menu_help) { return if (item.itemId == R.id.menu_help) {
startActivity(Intent(Intent.ACTION_VIEW, Uri.parse(getString(R.string.url_etesync)))) openUri(R.string.url_etesync)
true true
} else { } else {
onOptionsItemSelected(item) onOptionsItemSelected(item)

@ -3,6 +3,8 @@ package org.tasks.extensions
import android.content.ActivityNotFoundException import android.content.ActivityNotFoundException
import android.content.Context import android.content.Context
import android.content.Intent import android.content.Intent
import android.content.Intent.ACTION_VIEW
import android.net.Uri
import android.widget.Toast import android.widget.Toast
import org.tasks.R import org.tasks.R
@ -15,6 +17,11 @@ object Context {
} }
} }
fun Context.openUri(resId: Int, vararg formatArgs: Any) = openUri(getString(resId, formatArgs))
fun Context.openUri(url: String?) =
url?.let { safeStartActivity(Intent(ACTION_VIEW, Uri.parse(it))) }
fun Context.toast(resId: Int, vararg formatArgs: Any, duration: Int = Toast.LENGTH_LONG) = fun Context.toast(resId: Int, vararg formatArgs: Any, duration: Int = Toast.LENGTH_LONG) =
toast(getString(resId, formatArgs), duration) toast(getString(resId, formatArgs), duration)

@ -1,7 +1,6 @@
package org.tasks.locale.ui.activity; package org.tasks.locale.ui.activity;
import android.content.Intent; import android.content.Intent;
import android.net.Uri;
import android.os.Bundle; import android.os.Bundle;
import android.view.MenuItem; import android.view.MenuItem;
@ -14,6 +13,7 @@ import org.tasks.R;
import org.tasks.billing.Inventory; import org.tasks.billing.Inventory;
import org.tasks.billing.PurchaseActivity; import org.tasks.billing.PurchaseActivity;
import org.tasks.databinding.ActivityTaskerCreateBinding; import org.tasks.databinding.ActivityTaskerCreateBinding;
import org.tasks.extensions.Context;
import org.tasks.locale.bundle.TaskCreationBundle; import org.tasks.locale.bundle.TaskCreationBundle;
import javax.inject.Inject; import javax.inject.Inject;
@ -133,8 +133,7 @@ public final class TaskerCreateTaskActivity extends AbstractFragmentPluginAppCom
@Override @Override
public boolean onMenuItemClick(MenuItem item) { public boolean onMenuItemClick(MenuItem item) {
if (item.getItemId() == R.id.menu_help) { if (item.getItemId() == R.id.menu_help) {
startActivity( Context.INSTANCE.openUri(this, R.string.url_tasker);
new Intent(Intent.ACTION_VIEW).setData(Uri.parse(getString(R.string.url_tasker))));
return true; return true;
} }
return onOptionsItemSelected(item); return onOptionsItemSelected(item);

@ -1,7 +1,6 @@
package org.tasks.preferences.fragments package org.tasks.preferences.fragments
import android.content.* import android.content.*
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
@ -27,6 +26,7 @@ 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.openUri
import org.tasks.extensions.Context.toast 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
@ -121,10 +121,7 @@ class TasksAccount : BaseAccountPreference() {
} }
.setCancelable(false) .setCancelable(false)
.setNeutralButton(R.string.help) { _, _ -> .setNeutralButton(R.string.help) { _, _ ->
startActivity(Intent( context?.openUri(R.string.url_app_passwords)
Intent.ACTION_VIEW,
Uri.parse(getString(R.string.url_app_passwords)))
)
} }
.show() .show()
} }
@ -170,7 +167,7 @@ class TasksAccount : BaseAccountPreference() {
onPreferenceClickListener = null onPreferenceClickListener = null
} else { } else {
setOnPreferenceClickListener { setOnPreferenceClickListener {
startActivity(Intent(Intent.ACTION_VIEW, Uri.parse(getString(R.string.url_sponsor)))) context?.openUri(R.string.url_sponsor)
false false
} }
} }

@ -2,8 +2,6 @@ package org.tasks.sync
import android.app.Dialog import android.app.Dialog
import android.content.Intent import android.content.Intent
import android.content.Intent.ACTION_VIEW
import android.net.Uri
import android.os.Bundle import android.os.Bundle
import android.view.View import android.view.View
import android.view.ViewGroup import android.view.ViewGroup
@ -19,6 +17,7 @@ import org.tasks.auth.SignInActivity
import org.tasks.caldav.CaldavAccountSettingsActivity import org.tasks.caldav.CaldavAccountSettingsActivity
import org.tasks.dialogs.DialogBuilder import org.tasks.dialogs.DialogBuilder
import org.tasks.etebase.EtebaseAccountSettingsActivity import org.tasks.etebase.EtebaseAccountSettingsActivity
import org.tasks.extensions.Context.openUri
import org.tasks.extensions.Resources.getMutableIntList import org.tasks.extensions.Resources.getMutableIntList
import org.tasks.extensions.Resources.getMutableStringList import org.tasks.extensions.Resources.getMutableStringList
import org.tasks.preferences.fragments.MainSettingsFragment.Companion.REQUEST_CALDAV_SETTINGS import org.tasks.preferences.fragments.MainSettingsFragment.Companion.REQUEST_CALDAV_SETTINGS
@ -70,27 +69,18 @@ class AddAccountDialog : DialogFragment() {
1 -> activity?.startActivityForResult( 1 -> activity?.startActivityForResult(
Intent(activity, GtasksLoginActivity::class.java), Intent(activity, GtasksLoginActivity::class.java),
REQUEST_GOOGLE_TASKS) REQUEST_GOOGLE_TASKS)
2 -> activity?.startActivity( 2 -> activity?.openUri(R.string.url_davx5)
Intent(ACTION_VIEW, Uri.parse(getString(R.string.url_davx5))))
3 -> activity?.startActivityForResult( 3 -> activity?.startActivityForResult(
Intent(activity, CaldavAccountSettingsActivity::class.java), Intent(activity, CaldavAccountSettingsActivity::class.java),
REQUEST_CALDAV_SETTINGS) REQUEST_CALDAV_SETTINGS)
4 -> activity?.startActivityForResult( 4 -> activity?.startActivityForResult(
Intent(activity, EtebaseAccountSettingsActivity::class.java), Intent(activity, EtebaseAccountSettingsActivity::class.java),
REQUEST_CALDAV_SETTINGS) REQUEST_CALDAV_SETTINGS)
5 -> activity?.startActivity( 5 -> activity?.openUri(R.string.url_decsync)
Intent(ACTION_VIEW, Uri.parse(getString(R.string.url_decsync))))
} }
dialog.dismiss() dialog.dismiss()
} }
.setNeutralButton(R.string.help) { _, _ -> .setNeutralButton(R.string.help) { _, _ -> activity?.openUri(R.string.help_url_sync) }
activity?.startActivity(
Intent(
ACTION_VIEW,
Uri.parse(context?.getString(R.string.help_url_sync))
)
)
}
.setNegativeButton(R.string.cancel, null) .setNegativeButton(R.string.cancel, null)
.show() .show()
} }

@ -21,6 +21,7 @@ import org.tasks.data.Location
import org.tasks.data.Place import org.tasks.data.Place
import org.tasks.dialogs.DialogBuilder import org.tasks.dialogs.DialogBuilder
import org.tasks.dialogs.GeofenceDialog import org.tasks.dialogs.GeofenceDialog
import org.tasks.extensions.Context.openUri
import org.tasks.location.LocationPermissionDialog.Companion.newLocationPermissionDialog import org.tasks.location.LocationPermissionDialog.Companion.newLocationPermissionDialog
import org.tasks.location.LocationPickerActivity import org.tasks.location.LocationPickerActivity
import org.tasks.preferences.Device import org.tasks.preferences.Device
@ -147,9 +148,7 @@ class LocationControlSet : TaskEditControlFragment() {
override val isClickable = true override val isClickable = true
private fun openWebsite() { private fun openWebsite() {
viewModel.selectedLocation?.let { viewModel.selectedLocation?.let { context?.openUri(it.url) }
startActivity(Intent(Intent.ACTION_VIEW, Uri.parse(it.url)))
}
} }
private fun call() { private fun call() {

@ -5,7 +5,6 @@ import android.content.BroadcastReceiver
import android.content.Context import android.content.Context
import android.content.Intent import android.content.Intent
import android.graphics.Rect import android.graphics.Rect
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
@ -27,6 +26,7 @@ import org.tasks.R
import org.tasks.billing.PurchaseActivity import org.tasks.billing.PurchaseActivity
import org.tasks.data.TaskDao import org.tasks.data.TaskDao
import org.tasks.dialogs.NewFilterDialog.Companion.newFilterDialog import org.tasks.dialogs.NewFilterDialog.Companion.newFilterDialog
import org.tasks.extensions.Context.openUri
import org.tasks.filters.FilterProvider import org.tasks.filters.FilterProvider
import org.tasks.filters.NavigationDrawerAction import org.tasks.filters.NavigationDrawerAction
import org.tasks.intents.TaskIntents import org.tasks.intents.TaskIntents
@ -85,7 +85,7 @@ class NavigationDrawerFragment : Fragment() {
when (item.requestCode) { when (item.requestCode) {
REQUEST_PURCHASE -> REQUEST_PURCHASE ->
startActivity(Intent(context, PurchaseActivity::class.java)) startActivity(Intent(context, PurchaseActivity::class.java))
REQUEST_DONATE -> startActivity(Intent(Intent.ACTION_VIEW, Uri.parse(getString(R.string.url_donate)))) REQUEST_DONATE -> context?.openUri(R.string.url_donate)
REQUEST_NEW_FILTER -> newFilterDialog().show(parentFragmentManager, FRAG_TAG_NEW_FILTER) REQUEST_NEW_FILTER -> newFilterDialog().show(parentFragmentManager, FRAG_TAG_NEW_FILTER)
else -> activity?.startActivityForResult(item.intent, item.requestCode) else -> activity?.startActivityForResult(item.intent, item.requestCode)
} }

@ -31,6 +31,7 @@
<string name="url_sponsor">https://github.com/sponsors/abaker</string> <string name="url_sponsor">https://github.com/sponsors/abaker</string>
<string name="url_app_passwords">https://tasks.org/passwords</string> <string name="url_app_passwords">https://tasks.org/passwords</string>
<string name="url_sharing">https://tasks.org/sharing</string> <string name="url_sharing">https://tasks.org/sharing</string>
<string name="url_filters">https://tasks.org/filters</string>
<string name="p_date_shortcut_morning">date_shortcut_morning</string> <string name="p_date_shortcut_morning">date_shortcut_morning</string>
<string name="p_date_shortcut_afternoon">date_shortcut_afternoon</string> <string name="p_date_shortcut_afternoon">date_shortcut_afternoon</string>

Loading…
Cancel
Save