Loading app/src/main/java/org/mozilla/fenix/components/BackgroundServices.kt +3 −3 Original line number Diff line number Diff line Loading @@ -143,7 +143,7 @@ class BackgroundServices( context.components.analytics.metrics.track(Event.SyncAuthSignOut) Settings.instance?.fxaSignedIn = false Settings.getInstance(context).fxaSignedIn = false } override fun onAuthenticated(account: OAuthAccount, newAccount: Boolean) { Loading @@ -156,7 +156,7 @@ class BackgroundServices( context.components.analytics.metrics.track(Event.SyncAuthSignIn) Settings.instance?.fxaSignedIn = true Settings.getInstance(context).fxaSignedIn = true } } Loading @@ -178,7 +178,7 @@ class BackgroundServices( // See https://github.com/mozilla-mobile/android-components/issues/3732 setOf("https://identity.mozilla.com/apps/oldsync") ).also { Settings.instance?.fxaHasSyncedItems = syncConfig?.syncableStores?.isNotEmpty() ?: false Settings.getInstance(context).fxaHasSyncedItems = syncConfig?.syncableStores?.isNotEmpty() ?: false if (FeatureFlags.sendTabEnabled) { it.registerForDeviceEvents(deviceEventObserver, ProcessLifecycleOwner.get(), false) Loading app/src/main/java/org/mozilla/fenix/components/metrics/LeanplumMetricsService.kt +9 −9 Original line number Diff line number Diff line Loading @@ -12,7 +12,7 @@ import com.leanplum.annotations.Parser import com.leanplum.internal.LeanplumInternal import org.mozilla.fenix.BuildConfig import org.mozilla.fenix.utils.Settings import java.util.UUID import java.util.UUID.randomUUID private val Event.name: String? get() = when (this) { Loading Loading @@ -66,7 +66,7 @@ class LeanplumMetricsService(private val application: Application) : MetricsServ Leanplum.setIsTestModeEnabled(false) Leanplum.setApplicationContext(application) Leanplum.setDeviceId(UUID.randomUUID().toString()) Leanplum.setDeviceId(randomUUID().toString()) Parser.parseVariables(application) LeanplumActivityHelper.enableLifecycleCallbacks(application) Loading @@ -74,13 +74,13 @@ class LeanplumMetricsService(private val application: Application) : MetricsServ val installedApps = MozillaProductDetector.getInstalledMozillaProducts(application) Leanplum.start(application, hashMapOf( "default_browser" to (MozillaProductDetector.getMozillaBrowserDefault(application) ?: ""), "default_browser" to MozillaProductDetector.getMozillaBrowserDefault(application).orEmpty(), "fennec_installed" to installedApps.contains(MozillaProductDetector.MozillaProducts.FIREFOX.productName), "focus_installed" to installedApps.contains(MozillaProductDetector.MozillaProducts.FOCUS.productName), "klar_installed" to installedApps.contains(MozillaProductDetector.MozillaProducts.KLAR.productName), "fxa_signed_in" to (Settings.instance?.fxaSignedIn ?: false), "fxa_has_synced_items" to (Settings.instance?.fxaHasSyncedItems ?: false), "search_widget_installed" to (Settings.instance?.searchWidgetInstalled ?: false) "fxa_signed_in" to Settings.getInstance(application).fxaSignedIn, "fxa_has_synced_items" to Settings.getInstance(application).fxaHasSyncedItems, "search_widget_installed" to Settings.getInstance(application).searchWidgetInstalled )) } Loading @@ -99,9 +99,9 @@ class LeanplumMetricsService(private val application: Application) : MetricsServ } override fun track(event: Event) { val leanplumExtras = event.extras?.map { it.key.toString() to it.value }?.toMap() val leanplumExtras = event.extras ?.map { (key, value) -> key.toString() to value } ?.toMap() event.name?.also { Leanplum.track(it, leanplumExtras) Loading app/src/main/java/org/mozilla/fenix/utils/Settings.kt +2 −1 Original line number Diff line number Diff line Loading @@ -44,7 +44,8 @@ class Settings private constructor( else -> throw InvalidParameterException("$action is not a valid SitePermissionsRules.Action") } var instance: Settings? = null @VisibleForTesting internal var instance: Settings? = null @JvmStatic @Synchronized Loading app/src/main/java/org/mozilla/fenix/widget/SearchWidgetProvider.kt +5 −3 Original line number Diff line number Diff line Loading @@ -14,6 +14,8 @@ import android.os.Bundle import android.speech.RecognizerIntent import android.view.View import android.widget.RemoteViews import androidx.annotation.Dimension import androidx.annotation.Dimension.DP import org.mozilla.fenix.HomeActivity import org.mozilla.fenix.IntentReceiverActivity import org.mozilla.fenix.R Loading @@ -22,11 +24,11 @@ import org.mozilla.fenix.utils.Settings class SearchWidgetProvider : AppWidgetProvider() { override fun onEnabled(context: Context) { Settings.instance?.addSearchWidgetInstalled(1) Settings.getInstance(context).addSearchWidgetInstalled(1) } override fun onDeleted(context: Context, appWidgetIds: IntArray) { Settings.instance?.addSearchWidgetInstalled(-appWidgetIds.size) Settings.getInstance(context).addSearchWidgetInstalled(-appWidgetIds.size) } override fun onUpdate(context: Context, appWidgetManager: AppWidgetManager, appWidgetIds: IntArray) { Loading Loading @@ -66,7 +68,7 @@ class SearchWidgetProvider : AppWidgetProvider() { appWidgetManager.updateAppWidget(appWidgetId, views) } private fun getLayoutSize(dp: Int) = when { private fun getLayoutSize(@Dimension(unit = DP) dp: Int) = when { dp >= DP_LARGE -> SearchWidgetProviderSize.LARGE dp >= DP_MEDIUM -> SearchWidgetProviderSize.MEDIUM dp >= DP_SMALL -> SearchWidgetProviderSize.SMALL Loading Loading
app/src/main/java/org/mozilla/fenix/components/BackgroundServices.kt +3 −3 Original line number Diff line number Diff line Loading @@ -143,7 +143,7 @@ class BackgroundServices( context.components.analytics.metrics.track(Event.SyncAuthSignOut) Settings.instance?.fxaSignedIn = false Settings.getInstance(context).fxaSignedIn = false } override fun onAuthenticated(account: OAuthAccount, newAccount: Boolean) { Loading @@ -156,7 +156,7 @@ class BackgroundServices( context.components.analytics.metrics.track(Event.SyncAuthSignIn) Settings.instance?.fxaSignedIn = true Settings.getInstance(context).fxaSignedIn = true } } Loading @@ -178,7 +178,7 @@ class BackgroundServices( // See https://github.com/mozilla-mobile/android-components/issues/3732 setOf("https://identity.mozilla.com/apps/oldsync") ).also { Settings.instance?.fxaHasSyncedItems = syncConfig?.syncableStores?.isNotEmpty() ?: false Settings.getInstance(context).fxaHasSyncedItems = syncConfig?.syncableStores?.isNotEmpty() ?: false if (FeatureFlags.sendTabEnabled) { it.registerForDeviceEvents(deviceEventObserver, ProcessLifecycleOwner.get(), false) Loading
app/src/main/java/org/mozilla/fenix/components/metrics/LeanplumMetricsService.kt +9 −9 Original line number Diff line number Diff line Loading @@ -12,7 +12,7 @@ import com.leanplum.annotations.Parser import com.leanplum.internal.LeanplumInternal import org.mozilla.fenix.BuildConfig import org.mozilla.fenix.utils.Settings import java.util.UUID import java.util.UUID.randomUUID private val Event.name: String? get() = when (this) { Loading Loading @@ -66,7 +66,7 @@ class LeanplumMetricsService(private val application: Application) : MetricsServ Leanplum.setIsTestModeEnabled(false) Leanplum.setApplicationContext(application) Leanplum.setDeviceId(UUID.randomUUID().toString()) Leanplum.setDeviceId(randomUUID().toString()) Parser.parseVariables(application) LeanplumActivityHelper.enableLifecycleCallbacks(application) Loading @@ -74,13 +74,13 @@ class LeanplumMetricsService(private val application: Application) : MetricsServ val installedApps = MozillaProductDetector.getInstalledMozillaProducts(application) Leanplum.start(application, hashMapOf( "default_browser" to (MozillaProductDetector.getMozillaBrowserDefault(application) ?: ""), "default_browser" to MozillaProductDetector.getMozillaBrowserDefault(application).orEmpty(), "fennec_installed" to installedApps.contains(MozillaProductDetector.MozillaProducts.FIREFOX.productName), "focus_installed" to installedApps.contains(MozillaProductDetector.MozillaProducts.FOCUS.productName), "klar_installed" to installedApps.contains(MozillaProductDetector.MozillaProducts.KLAR.productName), "fxa_signed_in" to (Settings.instance?.fxaSignedIn ?: false), "fxa_has_synced_items" to (Settings.instance?.fxaHasSyncedItems ?: false), "search_widget_installed" to (Settings.instance?.searchWidgetInstalled ?: false) "fxa_signed_in" to Settings.getInstance(application).fxaSignedIn, "fxa_has_synced_items" to Settings.getInstance(application).fxaHasSyncedItems, "search_widget_installed" to Settings.getInstance(application).searchWidgetInstalled )) } Loading @@ -99,9 +99,9 @@ class LeanplumMetricsService(private val application: Application) : MetricsServ } override fun track(event: Event) { val leanplumExtras = event.extras?.map { it.key.toString() to it.value }?.toMap() val leanplumExtras = event.extras ?.map { (key, value) -> key.toString() to value } ?.toMap() event.name?.also { Leanplum.track(it, leanplumExtras) Loading
app/src/main/java/org/mozilla/fenix/utils/Settings.kt +2 −1 Original line number Diff line number Diff line Loading @@ -44,7 +44,8 @@ class Settings private constructor( else -> throw InvalidParameterException("$action is not a valid SitePermissionsRules.Action") } var instance: Settings? = null @VisibleForTesting internal var instance: Settings? = null @JvmStatic @Synchronized Loading
app/src/main/java/org/mozilla/fenix/widget/SearchWidgetProvider.kt +5 −3 Original line number Diff line number Diff line Loading @@ -14,6 +14,8 @@ import android.os.Bundle import android.speech.RecognizerIntent import android.view.View import android.widget.RemoteViews import androidx.annotation.Dimension import androidx.annotation.Dimension.DP import org.mozilla.fenix.HomeActivity import org.mozilla.fenix.IntentReceiverActivity import org.mozilla.fenix.R Loading @@ -22,11 +24,11 @@ import org.mozilla.fenix.utils.Settings class SearchWidgetProvider : AppWidgetProvider() { override fun onEnabled(context: Context) { Settings.instance?.addSearchWidgetInstalled(1) Settings.getInstance(context).addSearchWidgetInstalled(1) } override fun onDeleted(context: Context, appWidgetIds: IntArray) { Settings.instance?.addSearchWidgetInstalled(-appWidgetIds.size) Settings.getInstance(context).addSearchWidgetInstalled(-appWidgetIds.size) } override fun onUpdate(context: Context, appWidgetManager: AppWidgetManager, appWidgetIds: IntArray) { Loading Loading @@ -66,7 +68,7 @@ class SearchWidgetProvider : AppWidgetProvider() { appWidgetManager.updateAppWidget(appWidgetId, views) } private fun getLayoutSize(dp: Int) = when { private fun getLayoutSize(@Dimension(unit = DP) dp: Int) = when { dp >= DP_LARGE -> SearchWidgetProviderSize.LARGE dp >= DP_MEDIUM -> SearchWidgetProviderSize.MEDIUM dp >= DP_SMALL -> SearchWidgetProviderSize.SMALL Loading