diff --git a/app/src/main/java/com/tommasoberlose/anotherwidget/helpers/IntentHelper.kt b/app/src/main/java/com/tommasoberlose/anotherwidget/helpers/IntentHelper.kt index 036b570..f576bc4 100644 --- a/app/src/main/java/com/tommasoberlose/anotherwidget/helpers/IntentHelper.kt +++ b/app/src/main/java/com/tommasoberlose/anotherwidget/helpers/IntentHelper.kt @@ -40,6 +40,7 @@ object IntentHelper { private fun getWidgetRefreshIntent(context: Context): Intent { return Intent(context, UpdatesReceiver::class.java).apply { action = Actions.ACTION_REFRESH + flags = Intent.FLAG_ACTIVITY_NEW_TASK } } @@ -65,6 +66,7 @@ object IntentHelper { flags = Intent.FLAG_ACTIVITY_NEW_TASK data = Uri.parse("dynact://velour/weather/ProxyActivity") component = ComponentName("com.google.android.googlequicksearchbox", "com.google.android.apps.gsa.velour.DynamicActivityTrampoline") + setClassName("com.google.android.googlequicksearchbox", "com.google.android.apps.gsa.velour.DynamicActivityTrampoline") } } DO_NOTHING_OPTION -> { diff --git a/app/src/main/java/com/tommasoberlose/anotherwidget/receivers/WidgetClickListenerReceiver.kt b/app/src/main/java/com/tommasoberlose/anotherwidget/receivers/WidgetClickListenerReceiver.kt index be1eb96..9e022d8 100644 --- a/app/src/main/java/com/tommasoberlose/anotherwidget/receivers/WidgetClickListenerReceiver.kt +++ b/app/src/main/java/com/tommasoberlose/anotherwidget/receivers/WidgetClickListenerReceiver.kt @@ -6,6 +6,7 @@ import android.content.Intent import android.net.Uri import com.tommasoberlose.anotherwidget.R import com.tommasoberlose.anotherwidget.global.Actions +import com.tommasoberlose.anotherwidget.global.Preferences import com.tommasoberlose.anotherwidget.helpers.IntentHelper import com.tommasoberlose.anotherwidget.utils.toast @@ -15,19 +16,20 @@ class WidgetClickListenerReceiver : BroadcastReceiver() { override fun onReceive(context: Context, intent: Intent) { if (intent.action == Actions.ACTION_OPEN_WEATHER_INTENT) { try { - context.startActivity(IntentHelper.getWeatherIntent(context)) + if (Preferences.weatherAppPackage == IntentHelper.REFRESH_WIDGET_OPTION) { + context.sendBroadcast(IntentHelper.getWeatherIntent(context)) + } else { + context.startActivity(IntentHelper.getWeatherIntent(context)) + } } catch (e: Exception) { + e.printStackTrace() + val uri = Uri.parse("http://www.google.com/search?q=weather") + val i = Intent(Intent.ACTION_VIEW, uri) + i.flags = Intent.FLAG_ACTIVITY_NEW_TASK try { - context.applicationContext.startActivity(IntentHelper.getWeatherIntent(context.applicationContext)) - } catch (e: Exception) { - val uri = Uri.parse("http://www.google.com/#q=weather") - val i = Intent(Intent.ACTION_VIEW, uri) - i.flags = Intent.FLAG_ACTIVITY_NEW_TASK - try { - context.startActivity(i) - } catch (ignored: Exception) { - context.toast(context.getString(R.string.error_opening_app)) - } + context.startActivity(i) + } catch (ignored: Exception) { + context.toast(context.getString(R.string.error_opening_app)) } } } diff --git a/app/src/main/java/com/tommasoberlose/anotherwidget/ui/fragments/MainFragment.kt b/app/src/main/java/com/tommasoberlose/anotherwidget/ui/fragments/MainFragment.kt index 3e63482..613cad6 100644 --- a/app/src/main/java/com/tommasoberlose/anotherwidget/ui/fragments/MainFragment.kt +++ b/app/src/main/java/com/tommasoberlose/anotherwidget/ui/fragments/MainFragment.kt @@ -97,7 +97,11 @@ class MainFragment : Fragment() { binding.actionBack.setOnClickListener { controller.navigateUp() } + binding.actionBack.isClickable = show + binding.actionBack.isFocusable = show binding.actionSettings.animate().alpha(if (!show) 1f else 0f).setDuration(200).translationX((if (!show) 0f else -4f).convertDpToPixel(requireContext())).start() + binding.actionSettings.isClickable = !show + binding.actionSettings.isFocusable = !show binding.fragmentTitle.text = if (show) destination.label.toString() else getString(R.string.app_name) }