From f111167baa3ab44d62cd8986941c10fa8a35c3c5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?David=20Gonz=C3=A1lez?= Date: Thu, 30 Jan 2025 20:28:49 +0100 Subject: [PATCH 01/16] Preparations for UI Experiments --- common/common-ui-experiments/.gitignore | 1 + common/common-ui-experiments/build.gradle | 56 +++++++++++++++++++ .../src/main/AndroidManifest.xml | 19 +++++++ .../ui/experiments/BrowserThemingFeature.kt | 33 +++++++++++ 4 files changed, 109 insertions(+) create mode 100644 common/common-ui-experiments/.gitignore create mode 100644 common/common-ui-experiments/build.gradle create mode 100644 common/common-ui-experiments/src/main/AndroidManifest.xml create mode 100644 common/common-ui-experiments/src/main/java/com/duckduckgo/common/ui/experiments/BrowserThemingFeature.kt diff --git a/common/common-ui-experiments/.gitignore b/common/common-ui-experiments/.gitignore new file mode 100644 index 000000000000..42afabfd2abe --- /dev/null +++ b/common/common-ui-experiments/.gitignore @@ -0,0 +1 @@ +/build \ No newline at end of file diff --git a/common/common-ui-experiments/build.gradle b/common/common-ui-experiments/build.gradle new file mode 100644 index 000000000000..7f1604bff1cc --- /dev/null +++ b/common/common-ui-experiments/build.gradle @@ -0,0 +1,56 @@ +/* + * Copyright (c) 2025 DuckDuckGo + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +plugins { + id 'com.android.library' + id 'kotlin-android' + id 'com.squareup.anvil' +} + +apply from: "$rootProject.projectDir/gradle/android-library.gradle" + +android { + namespace 'com.duckduckgo.common.ui.experiments' +} + +android { + anvil { + generateDaggerFactories = true // default is false + } + lintOptions { + baseline file("lint-baseline.xml") + } +} + +dependencies { + + implementation project(path: ':common-utils') + implementation project(path: ':di') + anvil project(path: ':anvil-compiler') + implementation project(path: ':anvil-annotations') + implementation project(path: ':app-build-config-api') + + implementation AndroidX.appCompat + implementation Google.android.material + implementation AndroidX.constraintLayout + implementation AndroidX.core.splashscreen + implementation AndroidX.recyclerView + implementation AndroidX.lifecycle.viewModelKtx + // just to get the dagger annotations + implementation Google.dagger + + implementation "androidx.core:core-ktx:_" +} \ No newline at end of file diff --git a/common/common-ui-experiments/src/main/AndroidManifest.xml b/common/common-ui-experiments/src/main/AndroidManifest.xml new file mode 100644 index 000000000000..005f6643616e --- /dev/null +++ b/common/common-ui-experiments/src/main/AndroidManifest.xml @@ -0,0 +1,19 @@ + + + + + \ No newline at end of file diff --git a/common/common-ui-experiments/src/main/java/com/duckduckgo/common/ui/experiments/BrowserThemingFeature.kt b/common/common-ui-experiments/src/main/java/com/duckduckgo/common/ui/experiments/BrowserThemingFeature.kt new file mode 100644 index 000000000000..96d31552a0ee --- /dev/null +++ b/common/common-ui-experiments/src/main/java/com/duckduckgo/common/ui/experiments/BrowserThemingFeature.kt @@ -0,0 +1,33 @@ +/* + * Copyright (c) 2025 DuckDuckGo + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.duckduckgo.common.ui.experiments + +import com.duckduckgo.anvil.annotations.ContributesRemoteFeature +import com.duckduckgo.di.scopes.AppScope +import com.duckduckgo.feature.toggles.api.Toggle + +@ContributesRemoteFeature( + scope = AppScope::class, + featureName = "browserTheming", +) +interface BrowserThemingFeature { + @Toggle.DefaultValue(false) + fun self(): Toggle + + @Toggle.DefaultValue(false) + fun colorTheming(): Toggle +} From 903f8b6ad0f3e22ed17ec0e8c1195b09e4eabb4e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?David=20Gonz=C3=A1lez?= Date: Fri, 31 Jan 2025 14:43:26 +0100 Subject: [PATCH 02/16] support experiment theming --- app/build.gradle | 1 + .../app/appearance/AppearanceActivity.kt | 13 ++++++-- .../app/appearance/AppearanceViewModel.kt | 16 ++++++++-- .../ui/initial/InitialFeedbackFragment.kt | 4 +++ common/common-ui/build.gradle | 1 + .../java/com/duckduckgo/common/ui/Theming.kt | 29 +++++------------ .../duckduckgo/common/ui/store/AppTheme.kt | 2 ++ .../ui/store/ThemingSharedPreferences.kt | 24 ++++++++++---- .../res/values/design-experiments-theming.xml | 31 +++++++++++++++++++ .../main/res/values/design-system-colors.xml | 3 ++ 10 files changed, 91 insertions(+), 33 deletions(-) create mode 100644 common/common-ui/src/main/res/values/design-experiments-theming.xml diff --git a/app/build.gradle b/app/build.gradle index aeb4054e6784..2fea05b45059 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -260,6 +260,7 @@ dependencies { implementation project(':common-utils') implementation project(':app-store') implementation project(':common-ui') + implementation project(':common-ui-experiments') internalImplementation project(':common-ui-internal') implementation project(':di') implementation project(':app-tracking-api') diff --git a/app/src/main/java/com/duckduckgo/app/appearance/AppearanceActivity.kt b/app/src/main/java/com/duckduckgo/app/appearance/AppearanceActivity.kt index d28006d64fdf..40f30adf7d2b 100644 --- a/app/src/main/java/com/duckduckgo/app/appearance/AppearanceActivity.kt +++ b/app/src/main/java/com/duckduckgo/app/appearance/AppearanceActivity.kt @@ -39,6 +39,11 @@ import com.duckduckgo.app.browser.omnibar.model.OmnibarPosition import com.duckduckgo.app.fire.FireActivity import com.duckduckgo.common.ui.DuckDuckGoActivity import com.duckduckgo.common.ui.DuckDuckGoTheme +import com.duckduckgo.common.ui.DuckDuckGoTheme.DARK +import com.duckduckgo.common.ui.DuckDuckGoTheme.DARK_EXPERIMENT +import com.duckduckgo.common.ui.DuckDuckGoTheme.LIGHT +import com.duckduckgo.common.ui.DuckDuckGoTheme.LIGHT_EXPERIMENT +import com.duckduckgo.common.ui.DuckDuckGoTheme.SYSTEM_DEFAULT import com.duckduckgo.common.ui.sendThemeChangedBroadcast import com.duckduckgo.common.ui.view.dialog.RadioListAlertDialogBuilder import com.duckduckgo.common.ui.view.dialog.TextAlertDialogBuilder @@ -128,9 +133,11 @@ class AppearanceActivity : DuckDuckGoActivity() { private fun updateSelectedTheme(selectedTheme: DuckDuckGoTheme) { val subtitle = getString( when (selectedTheme) { - DuckDuckGoTheme.DARK -> R.string.settingsDarkTheme - DuckDuckGoTheme.LIGHT -> R.string.settingsLightTheme - DuckDuckGoTheme.SYSTEM_DEFAULT -> R.string.settingsSystemTheme + DARK -> R.string.settingsDarkTheme + LIGHT -> R.string.settingsLightTheme + SYSTEM_DEFAULT -> R.string.settingsSystemTheme + DARK_EXPERIMENT -> R.string.settingsDarkTheme + LIGHT_EXPERIMENT -> R.string.settingsLightTheme }, ) binding.selectedThemeSetting.setSecondaryText(subtitle) diff --git a/app/src/main/java/com/duckduckgo/app/appearance/AppearanceViewModel.kt b/app/src/main/java/com/duckduckgo/app/appearance/AppearanceViewModel.kt index fd0a74ba426d..89ace76b18fd 100644 --- a/app/src/main/java/com/duckduckgo/app/appearance/AppearanceViewModel.kt +++ b/app/src/main/java/com/duckduckgo/app/appearance/AppearanceViewModel.kt @@ -24,9 +24,17 @@ import com.duckduckgo.app.browser.omnibar.ChangeOmnibarPositionFeature import com.duckduckgo.app.browser.omnibar.model.OmnibarPosition import com.duckduckgo.app.icon.api.AppIcon import com.duckduckgo.app.pixels.AppPixelName +import com.duckduckgo.app.pixels.AppPixelName.SETTINGS_THEME_TOGGLED_DARK +import com.duckduckgo.app.pixels.AppPixelName.SETTINGS_THEME_TOGGLED_LIGHT +import com.duckduckgo.app.pixels.AppPixelName.SETTINGS_THEME_TOGGLED_SYSTEM_DEFAULT import com.duckduckgo.app.settings.db.SettingsDataStore import com.duckduckgo.app.statistics.pixels.Pixel import com.duckduckgo.common.ui.DuckDuckGoTheme +import com.duckduckgo.common.ui.DuckDuckGoTheme.DARK +import com.duckduckgo.common.ui.DuckDuckGoTheme.DARK_EXPERIMENT +import com.duckduckgo.common.ui.DuckDuckGoTheme.LIGHT +import com.duckduckgo.common.ui.DuckDuckGoTheme.LIGHT_EXPERIMENT +import com.duckduckgo.common.ui.DuckDuckGoTheme.SYSTEM_DEFAULT import com.duckduckgo.common.ui.store.ThemingDataStore import com.duckduckgo.common.utils.DispatcherProvider import com.duckduckgo.di.scopes.ActivityScope @@ -126,9 +134,11 @@ class AppearanceViewModel @Inject constructor( val pixelName = when (selectedTheme) { - DuckDuckGoTheme.LIGHT -> AppPixelName.SETTINGS_THEME_TOGGLED_LIGHT - DuckDuckGoTheme.DARK -> AppPixelName.SETTINGS_THEME_TOGGLED_DARK - DuckDuckGoTheme.SYSTEM_DEFAULT -> AppPixelName.SETTINGS_THEME_TOGGLED_SYSTEM_DEFAULT + LIGHT -> SETTINGS_THEME_TOGGLED_LIGHT + DARK -> SETTINGS_THEME_TOGGLED_DARK + SYSTEM_DEFAULT -> SETTINGS_THEME_TOGGLED_SYSTEM_DEFAULT + DARK_EXPERIMENT -> SETTINGS_THEME_TOGGLED_DARK + LIGHT_EXPERIMENT -> SETTINGS_THEME_TOGGLED_LIGHT } pixel.fire(pixelName) } diff --git a/app/src/main/java/com/duckduckgo/app/feedback/ui/initial/InitialFeedbackFragment.kt b/app/src/main/java/com/duckduckgo/app/feedback/ui/initial/InitialFeedbackFragment.kt index c110fe0c58b7..7d3c680e6d0f 100644 --- a/app/src/main/java/com/duckduckgo/app/feedback/ui/initial/InitialFeedbackFragment.kt +++ b/app/src/main/java/com/duckduckgo/app/feedback/ui/initial/InitialFeedbackFragment.kt @@ -25,7 +25,9 @@ import com.duckduckgo.app.browser.databinding.ContentFeedbackBinding import com.duckduckgo.app.feedback.ui.common.FeedbackFragment import com.duckduckgo.app.feedback.ui.initial.InitialFeedbackFragmentViewModel.Command.* import com.duckduckgo.common.ui.DuckDuckGoTheme.DARK +import com.duckduckgo.common.ui.DuckDuckGoTheme.DARK_EXPERIMENT import com.duckduckgo.common.ui.DuckDuckGoTheme.LIGHT +import com.duckduckgo.common.ui.DuckDuckGoTheme.LIGHT_EXPERIMENT import com.duckduckgo.common.ui.DuckDuckGoTheme.SYSTEM_DEFAULT import com.duckduckgo.common.ui.store.ThemingDataStore import com.duckduckgo.common.ui.viewbinding.viewBinding @@ -64,6 +66,8 @@ class InitialFeedbackFragment : FeedbackFragment(R.layout.content_feedback) { } DARK -> renderDarkButtons() LIGHT -> renderLightButtons() + DARK_EXPERIMENT -> renderDarkButtons() + LIGHT_EXPERIMENT -> renderLightButtons() } } diff --git a/common/common-ui/build.gradle b/common/common-ui/build.gradle index bf36030e672c..5942688b3327 100644 --- a/common/common-ui/build.gradle +++ b/common/common-ui/build.gradle @@ -38,6 +38,7 @@ android { dependencies { implementation project(path: ':common-utils') + implementation project(path: ':common-ui-experiments') implementation project(path: ':di') anvil project(path: ':anvil-compiler') implementation project(path: ':anvil-annotations') diff --git a/common/common-ui/src/main/java/com/duckduckgo/common/ui/Theming.kt b/common/common-ui/src/main/java/com/duckduckgo/common/ui/Theming.kt index c631ad7be740..cfbe2f60a0a0 100644 --- a/common/common-ui/src/main/java/com/duckduckgo/common/ui/Theming.kt +++ b/common/common-ui/src/main/java/com/duckduckgo/common/ui/Theming.kt @@ -21,12 +21,11 @@ import android.content.Context import android.content.Intent import android.content.IntentFilter import android.content.res.Configuration -import android.graphics.drawable.Drawable -import android.view.ContextThemeWrapper import androidx.appcompat.app.AppCompatActivity -import androidx.core.content.res.ResourcesCompat import androidx.localbroadcastmanager.content.LocalBroadcastManager import com.duckduckgo.common.ui.DuckDuckGoTheme.DARK +import com.duckduckgo.common.ui.DuckDuckGoTheme.DARK_EXPERIMENT +import com.duckduckgo.common.ui.DuckDuckGoTheme.LIGHT_EXPERIMENT import com.duckduckgo.common.ui.DuckDuckGoTheme.SYSTEM_DEFAULT import com.duckduckgo.common.ui.Theming.Constants.BROADCAST_THEME_CHANGED import com.duckduckgo.common.ui.Theming.Constants.FIXED_THEME_ACTIVITIES @@ -36,6 +35,8 @@ enum class DuckDuckGoTheme { SYSTEM_DEFAULT, DARK, LIGHT, + DARK_EXPERIMENT, + LIGHT_EXPERIMENT, ; fun getOptionIndex(): Int { @@ -43,29 +44,13 @@ enum class DuckDuckGoTheme { SYSTEM_DEFAULT -> 1 LIGHT -> 2 DARK -> 3 + LIGHT_EXPERIMENT -> 4 + DARK_EXPERIMENT -> 5 } } } object Theming { - - fun getThemedDrawable( - context: Context, - drawableId: Int, - theme: DuckDuckGoTheme, - ): Drawable? { - val themeId = when (theme) { - SYSTEM_DEFAULT -> context.getSystemDefaultTheme() - DARK -> R.style.Theme_DuckDuckGo_Dark - else -> R.style.Theme_DuckDuckGo_Light - } - return ResourcesCompat.getDrawable( - context.resources, - drawableId, - ContextThemeWrapper(context, themeId).theme, - ) - } - object Constants { const val BROADCAST_THEME_CHANGED = "BROADCAST_THEME_CHANGED" val FIXED_THEME_ACTIVITIES = listOf( @@ -89,6 +74,8 @@ fun AppCompatActivity.getThemeId(theme: DuckDuckGoTheme): Int { return when (theme) { SYSTEM_DEFAULT -> getSystemDefaultTheme() DARK -> R.style.Theme_DuckDuckGo_Dark + LIGHT_EXPERIMENT -> R.style.Theme_DuckDuckGo_Light_Experiment + DARK_EXPERIMENT -> R.style.Theme_DuckDuckGo_Dark_Experiment else -> R.style.Theme_DuckDuckGo_Light } } diff --git a/common/common-ui/src/main/java/com/duckduckgo/common/ui/store/AppTheme.kt b/common/common-ui/src/main/java/com/duckduckgo/common/ui/store/AppTheme.kt index 35eb67e85692..9d64543ab1c9 100644 --- a/common/common-ui/src/main/java/com/duckduckgo/common/ui/store/AppTheme.kt +++ b/common/common-ui/src/main/java/com/duckduckgo/common/ui/store/AppTheme.kt @@ -38,7 +38,9 @@ class BrowserAppTheme @Inject constructor( override fun isLightModeEnabled(): Boolean { return when (themeDataStore.theme) { DuckDuckGoTheme.LIGHT -> true + DuckDuckGoTheme.LIGHT_EXPERIMENT -> true DuckDuckGoTheme.DARK -> false + DuckDuckGoTheme.DARK_EXPERIMENT -> false DuckDuckGoTheme.SYSTEM_DEFAULT -> { !isNightMode(context) } diff --git a/common/common-ui/src/main/java/com/duckduckgo/common/ui/store/ThemingSharedPreferences.kt b/common/common-ui/src/main/java/com/duckduckgo/common/ui/store/ThemingSharedPreferences.kt index 9783bd7923ca..b04ee42d6164 100644 --- a/common/common-ui/src/main/java/com/duckduckgo/common/ui/store/ThemingSharedPreferences.kt +++ b/common/common-ui/src/main/java/com/duckduckgo/common/ui/store/ThemingSharedPreferences.kt @@ -20,12 +20,13 @@ import android.content.Context import android.content.SharedPreferences import androidx.core.content.edit import com.duckduckgo.common.ui.DuckDuckGoTheme +import com.duckduckgo.common.ui.experiments.BrowserThemingFeature import javax.inject.Inject class ThemingSharedPreferences @Inject constructor( private val context: Context, -) : - ThemingDataStore { + private val browserThemingFeature: BrowserThemingFeature, +) : ThemingDataStore { private val themePrefMapper = ThemePrefsMapper() @@ -39,7 +40,7 @@ class ThemingSharedPreferences @Inject constructor( private fun selectedThemeSavedValue(): DuckDuckGoTheme { val savedValue = preferences.getString(KEY_THEME, null) - return themePrefMapper.themeFrom(savedValue, DuckDuckGoTheme.SYSTEM_DEFAULT) + return themePrefMapper.themeFrom(savedValue, DuckDuckGoTheme.SYSTEM_DEFAULT, browserThemingFeature.colorTheming().isEnabled()) } private val preferences: SharedPreferences by lazy { context.getSharedPreferences(FILENAME, Context.MODE_PRIVATE) } @@ -56,16 +57,27 @@ class ThemingSharedPreferences @Inject constructor( when (theme) { DuckDuckGoTheme.SYSTEM_DEFAULT -> THEME_SYSTEM_DEFAULT DuckDuckGoTheme.LIGHT -> THEME_LIGHT - DuckDuckGoTheme.DARK -> THEME_DARK + else -> THEME_DARK } fun themeFrom( value: String?, defValue: DuckDuckGoTheme, + isExperimentEnabled: Boolean, ) = when (value) { - THEME_LIGHT -> DuckDuckGoTheme.LIGHT - THEME_DARK -> DuckDuckGoTheme.DARK + THEME_LIGHT -> if (isExperimentEnabled) { + DuckDuckGoTheme.LIGHT_EXPERIMENT + } else { + DuckDuckGoTheme.LIGHT + } + + THEME_DARK -> if (isExperimentEnabled) { + DuckDuckGoTheme.DARK_EXPERIMENT + } else { + DuckDuckGoTheme.DARK + } + THEME_SYSTEM_DEFAULT -> DuckDuckGoTheme.SYSTEM_DEFAULT else -> defValue } diff --git a/common/common-ui/src/main/res/values/design-experiments-theming.xml b/common/common-ui/src/main/res/values/design-experiments-theming.xml new file mode 100644 index 000000000000..567f6589e321 --- /dev/null +++ b/common/common-ui/src/main/res/values/design-experiments-theming.xml @@ -0,0 +1,31 @@ + + + + + + + + + \ No newline at end of file diff --git a/common/common-ui/src/main/res/values/design-system-colors.xml b/common/common-ui/src/main/res/values/design-system-colors.xml index e912fe80ddc8..293bb80f4434 100644 --- a/common/common-ui/src/main/res/values/design-system-colors.xml +++ b/common/common-ui/src/main/res/values/design-system-colors.xml @@ -190,6 +190,9 @@ #FFFFFF #F2F5F9 + #9232E2 + #A060D9 + #A64FD1 #D4A1EE #6FBF5C From 1eb912d2c3e6212ff112a7765ac8d1aacf9a6add Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?David=20Gonz=C3=A1lez?= Date: Thu, 6 Feb 2025 22:48:10 +0100 Subject: [PATCH 03/16] added all feature flags --- .../ui/experiments/BrowserThemingFeature.kt | 16 ++++++++++++++-- .../common/ui/store/ThemingSharedPreferences.kt | 2 +- 2 files changed, 15 insertions(+), 3 deletions(-) diff --git a/common/common-ui-experiments/src/main/java/com/duckduckgo/common/ui/experiments/BrowserThemingFeature.kt b/common/common-ui-experiments/src/main/java/com/duckduckgo/common/ui/experiments/BrowserThemingFeature.kt index 96d31552a0ee..2b0c9f60e763 100644 --- a/common/common-ui-experiments/src/main/java/com/duckduckgo/common/ui/experiments/BrowserThemingFeature.kt +++ b/common/common-ui-experiments/src/main/java/com/duckduckgo/common/ui/experiments/BrowserThemingFeature.kt @@ -22,12 +22,24 @@ import com.duckduckgo.feature.toggles.api.Toggle @ContributesRemoteFeature( scope = AppScope::class, - featureName = "browserTheming", + featureName = "experimentalBrowserTheming", ) interface BrowserThemingFeature { @Toggle.DefaultValue(false) fun self(): Toggle @Toggle.DefaultValue(false) - fun colorTheming(): Toggle + fun colors(): Toggle + + @Toggle.DefaultValue(false) + fun omnibar(): Toggle + + @Toggle.DefaultValue(false) + fun icons(): Toggle + + @Toggle.DefaultValue(false) + fun webview(): Toggle + + @Toggle.DefaultValue(false) + fun tabManager(): Toggle } diff --git a/common/common-ui/src/main/java/com/duckduckgo/common/ui/store/ThemingSharedPreferences.kt b/common/common-ui/src/main/java/com/duckduckgo/common/ui/store/ThemingSharedPreferences.kt index b04ee42d6164..7fbbff0e7848 100644 --- a/common/common-ui/src/main/java/com/duckduckgo/common/ui/store/ThemingSharedPreferences.kt +++ b/common/common-ui/src/main/java/com/duckduckgo/common/ui/store/ThemingSharedPreferences.kt @@ -40,7 +40,7 @@ class ThemingSharedPreferences @Inject constructor( private fun selectedThemeSavedValue(): DuckDuckGoTheme { val savedValue = preferences.getString(KEY_THEME, null) - return themePrefMapper.themeFrom(savedValue, DuckDuckGoTheme.SYSTEM_DEFAULT, browserThemingFeature.colorTheming().isEnabled()) + return themePrefMapper.themeFrom(savedValue, DuckDuckGoTheme.SYSTEM_DEFAULT, browserThemingFeature.colors().isEnabled()) } private val preferences: SharedPreferences by lazy { context.getSharedPreferences(FILENAME, Context.MODE_PRIVATE) } From 3200be569b063915b10aec48e2bb8d315d1180cc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?David=20Gonz=C3=A1lez?= Date: Mon, 10 Feb 2025 14:57:25 +0100 Subject: [PATCH 04/16] added new flag and enabling it from Appearance --- .../app/appearance/AppearanceActivity.kt | 35 +++++++++++++++++++ .../app/appearance/AppearanceViewModel.kt | 16 +++++++++ .../main/res/layout/activity_appearance.xml | 33 +++++++++++++++++ app/src/main/res/values/donottranslate.xml | 5 +++ .../ui/experiments/BrowserThemingFeature.kt | 3 ++ .../ui/store/ThemingSharedPreferences.kt | 2 +- 6 files changed, 93 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/com/duckduckgo/app/appearance/AppearanceActivity.kt b/app/src/main/java/com/duckduckgo/app/appearance/AppearanceActivity.kt index 40f30adf7d2b..39ab0e4de050 100644 --- a/app/src/main/java/com/duckduckgo/app/appearance/AppearanceActivity.kt +++ b/app/src/main/java/com/duckduckgo/app/appearance/AppearanceActivity.kt @@ -87,6 +87,28 @@ class AppearanceActivity : DuckDuckGoActivity() { .show() } + private val experimentalUIToggleListener = CompoundButton.OnCheckedChangeListener { _, isChecked -> + viewModel.onExperimentalUIModeChanged(isChecked) + + TextAlertDialogBuilder(this) + .setTitle(R.string.appearanceNightModeDialogTitle) + .setMessage(R.string.appearanceNightModeDialogMessage) + .setPositiveButton(R.string.appearanceNightModeDialogPrimaryCTA) + .setNegativeButton(R.string.appearanceNightModeDialogSecondaryCTA) + .addEventListener( + object : TextAlertDialogBuilder.EventListener() { + override fun onPositiveButtonClicked() { + FireActivity.triggerRestart(baseContext, false) + } + + override fun onNegativeButtonClicked() { + // no-op + } + }, + ) + .show() + } + private val changeIconFlow = registerForActivityResult(ChangeIconContract()) { resultOk -> if (resultOk) { Timber.d("Icon changed.") @@ -121,6 +143,7 @@ class AppearanceActivity : DuckDuckGoActivity() { binding.experimentalNightMode.isEnabled = viewState.canForceDarkMode binding.experimentalNightMode.isVisible = viewState.supportsForceDarkMode updateSelectedOmnibarPosition(it.isOmnibarPositionFeatureEnabled, it.omnibarPosition) + updateExperimentalUISetting(it.isBrowserThemingFeatureVisible, it.isBrowserThemingFeatureEnabled) } }.launchIn(lifecycleScope) @@ -160,6 +183,18 @@ class AppearanceActivity : DuckDuckGoActivity() { } } + private fun updateExperimentalUISetting( + browserThemingFeatureVisible: Boolean, + browserThemingFeatureEnabled: Boolean, + ) { + if (browserThemingFeatureVisible) { + binding.internalUISettingsLayout.show() + binding.experimentalUIMode.quietlySetIsChecked(browserThemingFeatureEnabled, experimentalUIToggleListener) + } else { + binding.internalUISettingsLayout.gone() + } + } + private fun processCommand(it: Command) { when (it) { is LaunchAppIcon -> launchAppIconChange() diff --git a/app/src/main/java/com/duckduckgo/app/appearance/AppearanceViewModel.kt b/app/src/main/java/com/duckduckgo/app/appearance/AppearanceViewModel.kt index 89ace76b18fd..4b94e4fd7d9f 100644 --- a/app/src/main/java/com/duckduckgo/app/appearance/AppearanceViewModel.kt +++ b/app/src/main/java/com/duckduckgo/app/appearance/AppearanceViewModel.kt @@ -29,15 +29,19 @@ import com.duckduckgo.app.pixels.AppPixelName.SETTINGS_THEME_TOGGLED_LIGHT import com.duckduckgo.app.pixels.AppPixelName.SETTINGS_THEME_TOGGLED_SYSTEM_DEFAULT import com.duckduckgo.app.settings.db.SettingsDataStore import com.duckduckgo.app.statistics.pixels.Pixel +import com.duckduckgo.appbuildconfig.api.AppBuildConfig +import com.duckduckgo.appbuildconfig.api.isInternalBuild import com.duckduckgo.common.ui.DuckDuckGoTheme import com.duckduckgo.common.ui.DuckDuckGoTheme.DARK import com.duckduckgo.common.ui.DuckDuckGoTheme.DARK_EXPERIMENT import com.duckduckgo.common.ui.DuckDuckGoTheme.LIGHT import com.duckduckgo.common.ui.DuckDuckGoTheme.LIGHT_EXPERIMENT import com.duckduckgo.common.ui.DuckDuckGoTheme.SYSTEM_DEFAULT +import com.duckduckgo.common.ui.experiments.BrowserThemingFeature import com.duckduckgo.common.ui.store.ThemingDataStore import com.duckduckgo.common.utils.DispatcherProvider import com.duckduckgo.di.scopes.ActivityScope +import com.duckduckgo.feature.toggles.api.Toggle.State import javax.inject.Inject import kotlinx.coroutines.channels.BufferOverflow import kotlinx.coroutines.channels.Channel @@ -57,6 +61,8 @@ class AppearanceViewModel @Inject constructor( private val pixel: Pixel, private val dispatcherProvider: DispatcherProvider, private val changeOmnibarPositionFeature: ChangeOmnibarPositionFeature, + private val appBuildConfig: AppBuildConfig, + private val browserThemingFeature: BrowserThemingFeature, ) : ViewModel() { data class ViewState( @@ -67,6 +73,8 @@ class AppearanceViewModel @Inject constructor( val supportsForceDarkMode: Boolean = true, val omnibarPosition: OmnibarPosition = OmnibarPosition.TOP, val isOmnibarPositionFeatureEnabled: Boolean = true, + val isBrowserThemingFeatureVisible: Boolean = false, + val isBrowserThemingFeatureEnabled: Boolean = false, ) sealed class Command { @@ -90,6 +98,8 @@ class AppearanceViewModel @Inject constructor( supportsForceDarkMode = WebViewFeature.isFeatureSupported(WebViewFeature.ALGORITHMIC_DARKENING), omnibarPosition = settingsDataStore.omnibarPosition, isOmnibarPositionFeatureEnabled = changeOmnibarPositionFeature.self().isEnabled(), + isBrowserThemingFeatureEnabled = browserThemingFeature.experimentalUI().isEnabled(), + isBrowserThemingFeatureVisible = appBuildConfig.isInternalBuild(), ) } } @@ -169,4 +179,10 @@ class AppearanceViewModel @Inject constructor( settingsDataStore.experimentalWebsiteDarkMode = checked } } + + fun onExperimentalUIModeChanged(checked: Boolean) { + viewModelScope.launch(dispatcherProvider.io()) { + browserThemingFeature.experimentalUI().setRawStoredState(State(checked)) + } + } } diff --git a/app/src/main/res/layout/activity_appearance.xml b/app/src/main/res/layout/activity_appearance.xml index dced80dcb342..0d7af885e97f 100644 --- a/app/src/main/res/layout/activity_appearance.xml +++ b/app/src/main/res/layout/activity_appearance.xml @@ -102,6 +102,39 @@ app:primaryTextTruncated="false" app:secondaryText="@string/settingsAddressBarPositionTop" /> + + + + + + + + + + + + + diff --git a/app/src/main/res/values/donottranslate.xml b/app/src/main/res/values/donottranslate.xml index 004f783907ee..6e4141f22784 100644 --- a/app/src/main/res/values/donottranslate.xml +++ b/app/src/main/res/values/donottranslate.xml @@ -76,4 +76,9 @@ The government may be blocking access to duckduckgo.com on this network provider, which could affect this app\'s functionality. Other providers may not be affected. Okay + + Experimental UI Settings + Enable visual design updates from O-A + This feature is in active development, intended for feedback purposes + diff --git a/common/common-ui-experiments/src/main/java/com/duckduckgo/common/ui/experiments/BrowserThemingFeature.kt b/common/common-ui-experiments/src/main/java/com/duckduckgo/common/ui/experiments/BrowserThemingFeature.kt index 2b0c9f60e763..862b294f4b66 100644 --- a/common/common-ui-experiments/src/main/java/com/duckduckgo/common/ui/experiments/BrowserThemingFeature.kt +++ b/common/common-ui-experiments/src/main/java/com/duckduckgo/common/ui/experiments/BrowserThemingFeature.kt @@ -28,6 +28,9 @@ interface BrowserThemingFeature { @Toggle.DefaultValue(false) fun self(): Toggle + @Toggle.DefaultValue(false) + fun experimentalUI(): Toggle + @Toggle.DefaultValue(false) fun colors(): Toggle diff --git a/common/common-ui/src/main/java/com/duckduckgo/common/ui/store/ThemingSharedPreferences.kt b/common/common-ui/src/main/java/com/duckduckgo/common/ui/store/ThemingSharedPreferences.kt index 7fbbff0e7848..d2333ee7ae8b 100644 --- a/common/common-ui/src/main/java/com/duckduckgo/common/ui/store/ThemingSharedPreferences.kt +++ b/common/common-ui/src/main/java/com/duckduckgo/common/ui/store/ThemingSharedPreferences.kt @@ -40,7 +40,7 @@ class ThemingSharedPreferences @Inject constructor( private fun selectedThemeSavedValue(): DuckDuckGoTheme { val savedValue = preferences.getString(KEY_THEME, null) - return themePrefMapper.themeFrom(savedValue, DuckDuckGoTheme.SYSTEM_DEFAULT, browserThemingFeature.colors().isEnabled()) + return themePrefMapper.themeFrom(savedValue, DuckDuckGoTheme.SYSTEM_DEFAULT, browserThemingFeature.experimentalUI().isEnabled()) } private val preferences: SharedPreferences by lazy { context.getSharedPreferences(FILENAME, Context.MODE_PRIVATE) } From f69a24ed8602dcd49f06119026105aa15c989726 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?David=20Gonz=C3=A1lez?= Date: Mon, 10 Feb 2025 16:39:03 +0100 Subject: [PATCH 05/16] add lint supress --- .../java/com/duckduckgo/app/appearance/AppearanceViewModel.kt | 3 +++ 1 file changed, 3 insertions(+) diff --git a/app/src/main/java/com/duckduckgo/app/appearance/AppearanceViewModel.kt b/app/src/main/java/com/duckduckgo/app/appearance/AppearanceViewModel.kt index 4b94e4fd7d9f..326e4a83783d 100644 --- a/app/src/main/java/com/duckduckgo/app/appearance/AppearanceViewModel.kt +++ b/app/src/main/java/com/duckduckgo/app/appearance/AppearanceViewModel.kt @@ -16,6 +16,7 @@ package com.duckduckgo.app.appearance +import android.annotation.SuppressLint import androidx.lifecycle.ViewModel import androidx.lifecycle.viewModelScope import androidx.webkit.WebViewFeature @@ -180,6 +181,8 @@ class AppearanceViewModel @Inject constructor( } } + @SuppressLint("DenyListedApi") + // only visible for UI Internal experiments fun onExperimentalUIModeChanged(checked: Boolean) { viewModelScope.launch(dispatcherProvider.io()) { browserThemingFeature.experimentalUI().setRawStoredState(State(checked)) From b8947c30a3049c706f99a18c5e3bf4bddda2fc2d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?David=20Gonz=C3=A1lez?= Date: Mon, 10 Feb 2025 16:59:36 +0100 Subject: [PATCH 06/16] add baseline --- common/common-ui-experiments/lint-baseline.xml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 common/common-ui-experiments/lint-baseline.xml diff --git a/common/common-ui-experiments/lint-baseline.xml b/common/common-ui-experiments/lint-baseline.xml new file mode 100644 index 000000000000..c584e1295716 --- /dev/null +++ b/common/common-ui-experiments/lint-baseline.xml @@ -0,0 +1,4 @@ + + + + From 5303e4549364c515fe1783078fbecd95c5850917 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?David=20Gonz=C3=A1lez?= Date: Tue, 11 Feb 2025 17:53:19 +0100 Subject: [PATCH 07/16] fix test references --- .../app/appearance/AppearanceViewModelTest.kt | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/app/src/test/java/com/duckduckgo/app/appearance/AppearanceViewModelTest.kt b/app/src/test/java/com/duckduckgo/app/appearance/AppearanceViewModelTest.kt index 7ad3a645cc86..5a17da316933 100644 --- a/app/src/test/java/com/duckduckgo/app/appearance/AppearanceViewModelTest.kt +++ b/app/src/test/java/com/duckduckgo/app/appearance/AppearanceViewModelTest.kt @@ -27,8 +27,11 @@ import com.duckduckgo.app.pixels.AppPixelName import com.duckduckgo.app.settings.clear.FireAnimation import com.duckduckgo.app.settings.db.SettingsDataStore import com.duckduckgo.app.statistics.pixels.Pixel +import com.duckduckgo.appbuildconfig.api.AppBuildConfig +import com.duckduckgo.appbuildconfig.api.BuildFlavor.INTERNAL import com.duckduckgo.common.test.CoroutineTestRule import com.duckduckgo.common.ui.DuckDuckGoTheme +import com.duckduckgo.common.ui.experiments.BrowserThemingFeature import com.duckduckgo.common.ui.store.AppTheme import com.duckduckgo.common.ui.store.ThemingDataStore import com.duckduckgo.feature.toggles.api.FakeFeatureToggleFactory @@ -66,7 +69,11 @@ internal class AppearanceViewModelTest { @Mock private lateinit var mockAppTheme: AppTheme - private val featureFlag = FakeFeatureToggleFactory.create(ChangeOmnibarPositionFeature::class.java) + @Mock + private lateinit var mockAppBuildConfig: AppBuildConfig + + private val omnibarFeatureFlag = FakeFeatureToggleFactory.create(ChangeOmnibarPositionFeature::class.java) + private val browserTheming = FakeFeatureToggleFactory.create(BrowserThemingFeature::class.java) @Before fun before() { @@ -76,15 +83,19 @@ internal class AppearanceViewModelTest { whenever(mockThemeSettingsDataStore.theme).thenReturn(DuckDuckGoTheme.SYSTEM_DEFAULT) whenever(mockAppSettingsDataStore.selectedFireAnimation).thenReturn(FireAnimation.HeroFire) whenever(mockAppSettingsDataStore.omnibarPosition).thenReturn(TOP) + whenever(mockAppBuildConfig.flavor).thenReturn(INTERNAL) - featureFlag.self().setRawStoredState(Toggle.State(enable = true)) + omnibarFeatureFlag.self().setRawStoredState(Toggle.State(enable = true)) + browserTheming.experimentalUI().setRawStoredState(Toggle.State(enable = false)) testee = AppearanceViewModel( mockThemeSettingsDataStore, mockAppSettingsDataStore, mockPixel, coroutineTestRule.testDispatcherProvider, - featureFlag, + omnibarFeatureFlag, + mockAppBuildConfig, + browserTheming, ) } From 729d2d4b13b5fd587909a7f63738673ca9a2431a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?David=20Gonz=C3=A1lez?= Date: Wed, 12 Feb 2025 14:22:34 +0100 Subject: [PATCH 08/16] address pr comments --- .../app/appearance/AppearanceActivity.kt | 19 +------------------ app/src/main/res/values/donottranslate.xml | 2 +- 2 files changed, 2 insertions(+), 19 deletions(-) diff --git a/app/src/main/java/com/duckduckgo/app/appearance/AppearanceActivity.kt b/app/src/main/java/com/duckduckgo/app/appearance/AppearanceActivity.kt index 39ab0e4de050..fb50f56e9a7d 100644 --- a/app/src/main/java/com/duckduckgo/app/appearance/AppearanceActivity.kt +++ b/app/src/main/java/com/duckduckgo/app/appearance/AppearanceActivity.kt @@ -89,24 +89,7 @@ class AppearanceActivity : DuckDuckGoActivity() { private val experimentalUIToggleListener = CompoundButton.OnCheckedChangeListener { _, isChecked -> viewModel.onExperimentalUIModeChanged(isChecked) - - TextAlertDialogBuilder(this) - .setTitle(R.string.appearanceNightModeDialogTitle) - .setMessage(R.string.appearanceNightModeDialogMessage) - .setPositiveButton(R.string.appearanceNightModeDialogPrimaryCTA) - .setNegativeButton(R.string.appearanceNightModeDialogSecondaryCTA) - .addEventListener( - object : TextAlertDialogBuilder.EventListener() { - override fun onPositiveButtonClicked() { - FireActivity.triggerRestart(baseContext, false) - } - - override fun onNegativeButtonClicked() { - // no-op - } - }, - ) - .show() + FireActivity.triggerRestart(baseContext, false) } private val changeIconFlow = registerForActivityResult(ChangeIconContract()) { resultOk -> diff --git a/app/src/main/res/values/donottranslate.xml b/app/src/main/res/values/donottranslate.xml index 6e4141f22784..6a2e7027bcca 100644 --- a/app/src/main/res/values/donottranslate.xml +++ b/app/src/main/res/values/donottranslate.xml @@ -79,6 +79,6 @@ Experimental UI Settings Enable visual design updates from O-A - This feature is in active development, intended for feedback purposes + This feature is in active development, intended for feedback purposes. Changing this setting will relaunch the app. From 866602bd793c2ac1563daa40f8ecb6a9b221a12f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?David=20Gonz=C3=A1lez?= Date: Wed, 12 Feb 2025 14:27:45 +0100 Subject: [PATCH 09/16] no need to restart --- .../java/com/duckduckgo/app/appearance/AppearanceActivity.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/src/main/java/com/duckduckgo/app/appearance/AppearanceActivity.kt b/app/src/main/java/com/duckduckgo/app/appearance/AppearanceActivity.kt index fb50f56e9a7d..22119dc6ef82 100644 --- a/app/src/main/java/com/duckduckgo/app/appearance/AppearanceActivity.kt +++ b/app/src/main/java/com/duckduckgo/app/appearance/AppearanceActivity.kt @@ -89,7 +89,7 @@ class AppearanceActivity : DuckDuckGoActivity() { private val experimentalUIToggleListener = CompoundButton.OnCheckedChangeListener { _, isChecked -> viewModel.onExperimentalUIModeChanged(isChecked) - FireActivity.triggerRestart(baseContext, false) + sendThemeChangedBroadcast() } private val changeIconFlow = registerForActivityResult(ChangeIconContract()) { resultOk -> From 115e825753c217e0adaeb6a5e2500d25d1510ee9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?David=20Gonz=C3=A1lez?= Date: Wed, 12 Feb 2025 14:28:28 +0100 Subject: [PATCH 10/16] cleaning up text --- app/src/main/res/values/donottranslate.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/src/main/res/values/donottranslate.xml b/app/src/main/res/values/donottranslate.xml index 6a2e7027bcca..efa290870cc6 100644 --- a/app/src/main/res/values/donottranslate.xml +++ b/app/src/main/res/values/donottranslate.xml @@ -79,6 +79,6 @@ Experimental UI Settings Enable visual design updates from O-A - This feature is in active development, intended for feedback purposes. Changing this setting will relaunch the app. + This feature is in active development, intended for feedback purposes. From 01ac75489203261f2c6b91e91d68d45449cf13ea Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?David=20Gonz=C3=A1lez?= Date: Wed, 12 Feb 2025 14:41:35 +0100 Subject: [PATCH 11/16] updated baselines --- .../vpn-impl/lint-baseline.xml | 11 +- app/lint-baseline.xml | 2092 ++++++++----- .../autoconsent-impl/lint-baseline.xml | 24 +- autofill/autofill-impl/lint-baseline.xml | 517 +++- autofill/autofill-internal/lint-baseline.xml | 19 +- autofill/autofill-store/lint-baseline.xml | 2 +- common/common-ui/lint-baseline.xml | 417 ++- duckchat/duckchat-impl/lint-baseline.xml | 10 +- duckplayer/duckplayer-impl/lint-baseline.xml | 4 +- .../experiments-impl/lint-baseline.xml | 77 - .../feature-toggles-impl/lint-baseline.xml | 77 +- .../lint-baseline.xml | 8 +- .../installation-impl/lint-baseline.xml | 22 - .../network-protection-impl/lint-baseline.xml | 2378 ++++++++++++++- .../privacy-config-internal/lint-baseline.xml | 4 +- .../privacy-dashboard-impl/lint-baseline.xml | 57 +- .../saved-sites-impl/lint-baseline.xml | 74 +- .../site-permissions-store/lint-baseline.xml | 2 +- statistics/statistics-impl/lint-baseline.xml | 2 +- .../subscriptions-impl/lint-baseline.xml | 2671 ++++++++++++++++- sync/sync-impl/lint-baseline.xml | 146 +- 21 files changed, 7151 insertions(+), 1463 deletions(-) diff --git a/app-tracking-protection/vpn-impl/lint-baseline.xml b/app-tracking-protection/vpn-impl/lint-baseline.xml index f727d5c620d5..4dac6b55ce20 100644 --- a/app-tracking-protection/vpn-impl/lint-baseline.xml +++ b/app-tracking-protection/vpn-impl/lint-baseline.xml @@ -19,7 +19,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -27,7 +27,7 @@ id="BadPeriodicWorkRequestEnqueue" message="Use `enqueueUniquePeriodicWork()` instead of `enqueue()`"> + file="$GRADLE_USER_HOME/caches/8.8/transforms/ed9f0a40d3f975b196d47cc278eb8107/transformed/work-runtime-2.9.1/jars/classes.jar!/androidx/work/WorkManager.class"/> + + + + + + + + + + + + + + + + + message="Duplicate id @+id/cardContainer, defined or included multiple times in layout/fragment_browser_tab.xml: [layout/fragment_browser_tab.xml => layout/include_onboarding_in_context_dax_dialog.xml defines @+id/cardContainer, layout/fragment_browser_tab.xml => layout/include_new_browser_tab.xml => layout/include_onboarding_bubble_dax_dialog.xml defines @+id/cardContainer]"/> + message="Defined here, included via layout/fragment_browser_tab.xml => layout/include_onboarding_in_context_dax_dialog.xml defines @+id/cardContainer"/> + message="Defined here, included via layout/fragment_browser_tab.xml => layout/include_new_browser_tab.xml => layout/include_onboarding_bubble_dax_dialog.xml defines @+id/cardContainer"/> + message="Duplicate id @+id/cardView, defined or included multiple times in layout/fragment_browser_tab.xml: [layout/fragment_browser_tab.xml => layout/include_onboarding_in_context_dax_dialog.xml defines @+id/cardView, layout/fragment_browser_tab.xml => layout/include_new_browser_tab.xml => layout/include_onboarding_bubble_dax_dialog.xml defines @+id/cardView]"/> + message="Defined here, included via layout/fragment_browser_tab.xml => layout/include_onboarding_in_context_dax_dialog.xml defines @+id/cardView"/> + message="Defined here, included via layout/fragment_browser_tab.xml => layout/include_new_browser_tab.xml => layout/include_onboarding_bubble_dax_dialog.xml defines @+id/cardView"/> + message="Duplicate id @+id/daxBubbleDialogTitle, defined or included multiple times in layout/fragment_browser_tab.xml: [layout/fragment_browser_tab.xml => layout/include_onboarding_in_context_dax_dialog.xml defines @+id/daxBubbleDialogTitle, layout/fragment_browser_tab.xml => layout/include_new_browser_tab.xml => layout/include_onboarding_bubble_dax_dialog.xml defines @+id/daxBubbleDialogTitle]"/> + message="Defined here, included via layout/fragment_browser_tab.xml => layout/include_onboarding_in_context_dax_dialog.xml defines @+id/daxBubbleDialogTitle"/> + message="Defined here, included via layout/fragment_browser_tab.xml => layout/include_new_browser_tab.xml => layout/include_onboarding_bubble_dax_dialog.xml defines @+id/daxBubbleDialogTitle"/> + message="Duplicate id @+id/daxCtaContainer, defined or included multiple times in layout/fragment_browser_tab.xml: [layout/fragment_browser_tab.xml => layout/include_onboarding_in_context_dax_dialog.xml defines @+id/daxCtaContainer, layout/fragment_browser_tab.xml => layout/include_new_browser_tab.xml => layout/include_onboarding_bubble_dax_dialog.xml defines @+id/daxCtaContainer]"/> + message="Defined here, included via layout/fragment_browser_tab.xml => layout/include_onboarding_in_context_dax_dialog.xml defines @+id/daxCtaContainer"/> + message="Defined here, included via layout/fragment_browser_tab.xml => layout/include_new_browser_tab.xml => layout/include_onboarding_bubble_dax_dialog.xml defines @+id/daxCtaContainer"/> + message="Duplicate id @+id/daxDialogOption1, defined or included multiple times in layout/fragment_browser_tab.xml: [layout/fragment_browser_tab.xml => layout/include_onboarding_in_context_dax_dialog.xml defines @+id/daxDialogOption1, layout/fragment_browser_tab.xml => layout/include_new_browser_tab.xml => layout/include_onboarding_bubble_dax_dialog.xml defines @+id/daxDialogOption1]"/> + message="Defined here, included via layout/fragment_browser_tab.xml => layout/include_onboarding_in_context_dax_dialog.xml defines @+id/daxDialogOption1"/> + message="Defined here, included via layout/fragment_browser_tab.xml => layout/include_new_browser_tab.xml => layout/include_onboarding_bubble_dax_dialog.xml defines @+id/daxDialogOption1"/> + message="Duplicate id @+id/daxDialogOption2, defined or included multiple times in layout/fragment_browser_tab.xml: [layout/fragment_browser_tab.xml => layout/include_onboarding_in_context_dax_dialog.xml defines @+id/daxDialogOption2, layout/fragment_browser_tab.xml => layout/include_new_browser_tab.xml => layout/include_onboarding_bubble_dax_dialog.xml defines @+id/daxDialogOption2]"/> + message="Defined here, included via layout/fragment_browser_tab.xml => layout/include_onboarding_in_context_dax_dialog.xml defines @+id/daxDialogOption2"/> + message="Defined here, included via layout/fragment_browser_tab.xml => layout/include_new_browser_tab.xml => layout/include_onboarding_bubble_dax_dialog.xml defines @+id/daxDialogOption2"/> + message="Duplicate id @+id/daxDialogOption3, defined or included multiple times in layout/fragment_browser_tab.xml: [layout/fragment_browser_tab.xml => layout/include_onboarding_in_context_dax_dialog.xml defines @+id/daxDialogOption3, layout/fragment_browser_tab.xml => layout/include_new_browser_tab.xml => layout/include_onboarding_bubble_dax_dialog.xml defines @+id/daxDialogOption3]"/> + message="Defined here, included via layout/fragment_browser_tab.xml => layout/include_onboarding_in_context_dax_dialog.xml defines @+id/daxDialogOption3"/> + message="Defined here, included via layout/fragment_browser_tab.xml => layout/include_new_browser_tab.xml => layout/include_onboarding_bubble_dax_dialog.xml defines @+id/daxDialogOption3"/> + message="Duplicate id @+id/daxDialogOption4, defined or included multiple times in layout/fragment_browser_tab.xml: [layout/fragment_browser_tab.xml => layout/include_onboarding_in_context_dax_dialog.xml defines @+id/daxDialogOption4, layout/fragment_browser_tab.xml => layout/include_new_browser_tab.xml => layout/include_onboarding_bubble_dax_dialog.xml defines @+id/daxDialogOption4]"/> + message="Defined here, included via layout/fragment_browser_tab.xml => layout/include_onboarding_in_context_dax_dialog.xml defines @+id/daxDialogOption4"/> + message="Defined here, included via layout/fragment_browser_tab.xml => layout/include_new_browser_tab.xml => layout/include_onboarding_bubble_dax_dialog.xml defines @+id/daxDialogOption4"/> + message="Duplicate id @+id/dialogTextCta, defined or included multiple times in layout/fragment_browser_tab.xml: [layout/fragment_browser_tab.xml => layout/include_onboarding_in_context_dax_dialog.xml defines @+id/dialogTextCta, layout/fragment_browser_tab.xml => layout/include_new_browser_tab.xml => layout/include_onboarding_bubble_dax_dialog.xml defines @+id/dialogTextCta]"/> + message="Defined here, included via layout/fragment_browser_tab.xml => layout/include_onboarding_in_context_dax_dialog.xml defines @+id/dialogTextCta"/> + message="Defined here, included via layout/fragment_browser_tab.xml => layout/include_new_browser_tab.xml => layout/include_onboarding_bubble_dax_dialog.xml defines @+id/dialogTextCta"/> + message="Duplicate id @+id/hiddenTextCta, defined or included multiple times in layout/fragment_browser_tab.xml: [layout/fragment_browser_tab.xml => layout/include_onboarding_in_context_dax_dialog.xml defines @+id/hiddenTextCta, layout/fragment_browser_tab.xml => layout/include_new_browser_tab.xml => layout/include_onboarding_bubble_dax_dialog.xml defines @+id/hiddenTextCta]"/> + message="Defined here, included via layout/fragment_browser_tab.xml => layout/include_onboarding_in_context_dax_dialog.xml defines @+id/hiddenTextCta"/> + message="Defined here, included via layout/fragment_browser_tab.xml => layout/include_new_browser_tab.xml => layout/include_onboarding_bubble_dax_dialog.xml defines @+id/hiddenTextCta"/> + message="Duplicate id @+id/logo, defined or included multiple times in layout/fragment_browser_tab.xml: [layout/fragment_browser_tab.xml => layout/include_onboarding_in_context_dax_dialog.xml defines @+id/logo, layout/fragment_browser_tab.xml => layout/include_new_browser_tab.xml => layout/include_onboarding_bubble_dax_dialog.xml defines @+id/logo]"/> + message="Defined here, included via layout/fragment_browser_tab.xml => layout/include_onboarding_in_context_dax_dialog.xml defines @+id/logo"/> + message="Defined here, included via layout/fragment_browser_tab.xml => layout/include_new_browser_tab.xml => layout/include_onboarding_bubble_dax_dialog.xml defines @+id/logo"/> + message="Duplicate id @+id/primaryCta, defined or included multiple times in layout/fragment_browser_tab.xml: [layout/fragment_browser_tab.xml => layout/include_onboarding_in_context_dax_dialog.xml defines @+id/primaryCta, layout/fragment_browser_tab.xml => layout/include_new_browser_tab.xml => layout/include_onboarding_bubble_dax_dialog.xml defines @+id/primaryCta]"/> + file="src/main/res/layout/include_onboarding_in_context_dax_dialog.xml" + line="126" + column="29" + message="Defined here, included via layout/fragment_browser_tab.xml => layout/include_onboarding_in_context_dax_dialog.xml defines @+id/primaryCta"/> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + message="Duplicate id @+id/daxCtaContainer, defined or included multiple times in layout/pre_onboarding_dax_dialog_cta.xml: [layout/pre_onboarding_dax_dialog_cta.xml defines @+id/daxCtaContainer, layout/pre_onboarding_dax_dialog_cta.xml => layout/pre_onboarding_address_bar_position.xml defines @+id/daxCtaContainer]"/> + + + + + + @@ -349,10 +558,21 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -492,7 +624,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~"> @@ -503,7 +635,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~"> @@ -514,7 +646,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~"> @@ -635,7 +767,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -756,7 +888,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -811,7 +943,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1141,7 +1273,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1217,7 +1349,7 @@ errorLine1=" android:width="344dp"" errorLine2=" ~~~~~"> @@ -1240,7 +1372,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1262,7 +1394,7 @@ errorLine2=" ^"> @@ -1273,7 +1405,7 @@ errorLine2=" ^"> @@ -1284,7 +1416,7 @@ errorLine2=" ^"> @@ -1295,7 +1427,7 @@ errorLine2=" ^"> @@ -1306,7 +1438,7 @@ errorLine2=" ^"> @@ -1317,7 +1449,7 @@ errorLine2=" ^"> @@ -1328,7 +1460,7 @@ errorLine2=" ^"> @@ -1339,32 +1471,10 @@ errorLine2=" ^"> - - - - - - - - @@ -1383,7 +1493,7 @@ errorLine2=" ^"> @@ -1394,7 +1504,7 @@ errorLine2=" ^"> @@ -1405,7 +1515,7 @@ errorLine2=" ^"> @@ -1416,7 +1526,7 @@ errorLine2=" ^"> @@ -1427,7 +1537,7 @@ errorLine2=" ^"> @@ -1438,7 +1548,7 @@ errorLine2=" ^"> @@ -1449,7 +1559,7 @@ errorLine2=" ^"> @@ -1988,7 +2098,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -1999,7 +2109,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2010,7 +2120,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2021,7 +2131,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2032,7 +2142,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2043,7 +2153,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2054,7 +2164,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2065,7 +2175,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2076,7 +2186,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2087,7 +2197,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2098,7 +2208,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2109,7 +2219,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2120,7 +2230,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2131,7 +2241,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2142,7 +2252,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2153,7 +2263,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2164,7 +2274,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2175,7 +2285,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2186,7 +2296,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2197,7 +2307,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2208,7 +2318,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2219,7 +2329,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2230,7 +2340,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2241,7 +2351,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2516,7 +2626,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2527,7 +2637,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2538,7 +2648,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2549,7 +2659,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2560,7 +2670,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2571,7 +2681,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2582,7 +2692,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2593,7 +2703,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2604,7 +2714,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2615,7 +2725,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2626,7 +2736,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2637,7 +2747,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2648,7 +2758,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2659,7 +2769,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2670,7 +2780,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2681,7 +2791,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2692,7 +2802,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2703,7 +2813,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2714,7 +2824,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2725,7 +2835,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2736,7 +2846,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2747,7 +2857,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2758,7 +2868,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2769,7 +2879,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2780,7 +2890,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2791,7 +2901,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2802,7 +2912,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2813,7 +2923,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2824,7 +2934,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2835,7 +2945,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2846,7 +2956,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2857,7 +2967,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2868,7 +2978,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2879,7 +2989,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2890,7 +3000,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2901,7 +3011,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2912,7 +3022,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2923,7 +3033,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2934,7 +3044,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2945,7 +3055,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2956,7 +3066,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2967,7 +3077,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2978,7 +3088,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2989,7 +3099,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -3000,7 +3110,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -3011,7 +3121,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -3022,7 +3132,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -3033,7 +3143,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -3044,7 +3154,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -3055,7 +3165,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -3066,7 +3176,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -3077,7 +3187,7 @@ errorLine2=" ^"> @@ -3088,7 +3198,7 @@ errorLine2=" ^"> @@ -3132,7 +3242,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~"> @@ -3165,7 +3275,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~"> @@ -3202,28 +3312,6 @@ column="17"/> - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -3934,7 +4121,7 @@ errorLine1=" android:pathData="M131.95,467.26C138.23,466.29 144.64,467.46 150.19,470.57C150.34,470.65 150.51,470.69 150.68,470.67C150.85,470.66 151.01,470.59 151.14,470.48C151.27,470.38 151.37,470.23 151.42,470.07C151.48,469.91 151.48,469.73 151.43,469.57L146.7,455.05C146.66,454.88 146.66,454.7 146.72,454.54C146.77,454.38 146.87,454.23 147.01,454.12C147.14,454.02 147.3,453.95 147.47,453.94C147.64,453.92 147.81,453.96 147.96,454.04C153.28,457.18 157.59,461.79 160.38,467.34C160.45,467.48 160.55,467.59 160.68,467.68C160.81,467.76 160.95,467.81 161.11,467.81C161.26,467.82 161.41,467.79 161.54,467.71C161.68,467.64 161.79,467.53 161.87,467.4C165.08,462.22 169.6,458.84 175.29,456.25C175.45,456.17 175.62,456.15 175.8,456.18C175.97,456.21 176.13,456.29 176.25,456.41C176.38,456.54 176.47,456.69 176.5,456.87C176.54,457.04 176.52,457.22 176.46,457.38L163.6,476.71L150.18,484.26L131.52,468.86C131.38,468.75 131.28,468.61 131.22,468.44C131.17,468.27 131.16,468.09 131.21,467.92C131.25,467.74 131.35,467.59 131.48,467.47C131.61,467.36 131.78,467.28 131.95,467.26Z"" errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -3945,7 +4132,7 @@ errorLine1=" android:pathData="M217.11,368.31C211.83,368.31 206.6,369.4 201.76,371.53C196.91,373.66 192.54,376.77 188.92,380.67L185.42,384.07C182.32,387.42 178.65,390.19 174.6,392.25C169.29,394.88 163.45,396.22 157.55,396.15H152.06C139.37,396.15 127.39,400.67 119.49,410.59L99.73,435.46C96.36,439.68 92.17,443.14 87.41,445.63C82.65,448.13 77.43,449.59 72.09,449.92L47.31,451.48C40.63,451.91 34.18,454.08 28.58,457.79C22.99,461.49 18.43,466.61 15.37,472.63L-8.35,519.32H25.56L45.22,480.68C48.28,474.66 52.83,469.55 58.43,465.84C64.02,462.13 70.47,459.96 77.15,459.54L101.9,457.98C107.25,457.64 112.47,456.18 117.23,453.69C121.99,451.2 126.18,447.73 129.55,443.51L149.31,418.64C153.34,413.59 158.54,409.63 164.46,407.13C170.38,404.62 176.82,403.65 183.2,404.3L187.94,404.77C192.39,405.22 196.88,404.67 201.1,403.15C205.31,401.63 209.14,399.17 212.3,395.97L228.29,380.31C232.04,376.5 236.5,373.48 241.41,371.42C246.32,369.36 251.58,368.3 256.89,368.31H217.11Z"" errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -3956,11 +4143,44 @@ errorLine1=" android:pathData="M195.93,124.66L198.41,120.53C199.01,119.53 198.22,118.22 197.02,118.32L185.2,119.43C183.01,119.63 180.72,119.63 178.54,119.32L175.55,119.02C170.19,118.42 164.82,120.13 160.74,123.65L157.46,126.47C156.47,127.28 156.37,128.79 157.07,129.8L157.56,130.4C157.86,130.8 157.96,131.41 157.66,131.91C156.27,134.63 155.58,137.75 155.77,141.07L155.87,142.48C155.97,144.8 156.57,146.91 157.46,148.82C159.45,153.15 160.65,157.78 160.94,162.52L171.78,161.81C175.46,161.61 178.83,159.9 181.32,157.08C182.31,155.77 183.31,154.56 184.2,153.25C184.9,152.35 184.9,150.84 184,150.03C183.51,149.53 183.11,148.93 182.81,148.22C182.51,147.41 182.51,146.61 182.41,146.61C182.31,144.49 183.31,142.58 185,141.47C186.19,140.77 187.68,141.57 187.78,142.99L187.88,144.39C187.88,144.9 188.38,145.3 188.87,145.3C190.36,145.2 191.56,143.89 191.46,142.38L191.26,139.56C191.16,137.25 192.85,135.23 195.13,135.13L198.12,134.93C199.81,134.83 201.3,133.42 201.4,131.71L201.5,130.3C201.6,128.99 200.7,127.78 199.51,127.48L196.73,126.78C195.83,126.57 195.43,125.47 195.93,124.66Z"" errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> + + + + + + + + + + + + - - - - + message="Possible overdraw: Root element paints background `@color/blue` with a theme that also paints a background (inferred theme is `@style/Theme_DuckDuckGo_Survey`)" + errorLine1=" android:background="@color/blue"" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> + message="Possible overdraw: Root element paints background `@color/blue` with a theme that also paints a background (inferred theme is `@style/Theme_DuckDuckGo_Survey`)" + errorLine1=" android:background="@color/blue"" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -4148,6 +4357,17 @@ column="5"/> + + + + + + + + + + + + @@ -4315,12 +4557,34 @@ + + + + + + + + @@ -4346,6 +4610,28 @@ column="1"/> + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - + + + + + + + + @@ -4697,6 +5049,17 @@ column="1"/> + + + + + + + + + + + + + + + + @@ -5382,7 +5778,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -5393,7 +5789,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -5404,7 +5800,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -5415,7 +5811,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -5426,40 +5822,73 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> + + + + + + + + + + + + + message="The resource `R.string.brokenSiteProtectionsOn` appears to be unused" + errorLine1=" <string name="brokenSiteProtectionsOn">Protections are <b>ON</b> for this site</string>" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> + message="The resource `R.string.brokenSiteProtectionsOnBannerMessage` appears to be unused" + errorLine1=" <string name="brokenSiteProtectionsOnBannerMessage">Turning protections OFF might help.</string>" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -5470,7 +5899,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -5481,7 +5910,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -5492,7 +5921,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -5503,7 +5932,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -5514,7 +5943,18 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> + + + + @@ -5525,7 +5965,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -5536,7 +5976,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -5547,7 +5987,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -5558,7 +5998,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -5569,7 +6009,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -5580,7 +6020,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -5591,7 +6031,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -5602,7 +6042,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -5613,7 +6053,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -5624,7 +6064,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -5635,7 +6075,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~"> @@ -5646,7 +6086,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~"> @@ -5657,7 +6097,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~"> @@ -5668,7 +6108,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -5679,7 +6119,139 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -5690,7 +6262,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -5701,7 +6273,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -5712,7 +6284,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -5723,7 +6295,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -5734,7 +6306,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -5745,7 +6317,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -5756,7 +6328,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -5767,7 +6339,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -5778,7 +6350,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -5789,7 +6361,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -5800,7 +6372,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -5811,7 +6383,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -5822,7 +6394,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -5833,7 +6405,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -5844,7 +6416,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -5855,7 +6427,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -5866,7 +6438,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -5877,7 +6449,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -5888,7 +6460,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -5899,7 +6471,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -5910,7 +6482,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -5921,7 +6493,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -5932,7 +6504,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -5943,7 +6515,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -5954,7 +6526,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -5965,249 +6537,139 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> - - - - - - - - - - - - - - - - - - - - + message="The resource `R.string.preOnboardingDaxDialog2Title` appears to be unused" + errorLine1=" <string name="preOnboardingDaxDialog2Title">Privacy protections activated!</string>" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> + message="The resource `R.string.preOnboardingDaxDialog3Title` appears to be unused" + errorLine1=" <string name="preOnboardingDaxDialog3Title">Awesome! Welcome to the duck side.</string>" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> + message="The resource `R.string.preOnboardingDaxDialog3Button` appears to be unused" + errorLine1=" <string name="preOnboardingDaxDialog3Button">Start Browsing</string>" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> + message="The resource `R.string.onboardingSearchQueryOption1English` appears to be unused" + errorLine1=" <string name="onboardingSearchQueryOption1English">how to say duck in spanish</string>" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> + message="The resource `R.string.onboardingSerpDaxDialogDescription` appears to be unused" + errorLine1=" <string name="onboardingSerpDaxDialogDescription">That’s DuckDuckGo Search. Private. Fast. Fewer ads.</string>" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> + message="The resource `R.string.onboardingEndDaxDialogDescription` appears to be unused" + errorLine1=" <string name="onboardingEndDaxDialogDescription">Remember: every time you browse with me a creepy ad loses its wings. 👌</string>" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> + message="The resource `R.string.onboardingEndDaxDialogButton` appears to be unused" + errorLine1=" <string name="onboardingEndDaxDialogButton">All done!</string>" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> + message="The resource `R.string.highlightsPreOnboardingComparisonChartItem2` appears to be unused" + errorLine1=" <string name="highlightsPreOnboardingComparisonChartItem2">Block 3rd party trackers</string>" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> - - - - - - - - - - - - - - - - - - - - + message="The resource `R.string.highlightsPreOnboardingSelectAppIconDescription` appears to be unused" + errorLine1=" <string name="highlightsPreOnboardingSelectAppIconDescription">Pick your app icon:</string>" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> + message="The resource `R.string.highlightsPreOnboardingSelectAppIconOkButton` appears to be unused" + errorLine1=" <string name="highlightsPreOnboardingSelectAppIconOkButton">Next</string>" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -6233,6 +6695,17 @@ column="1"/> + + + + @@ -6273,7 +6746,51 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~"> + + + + + + + + + + + + + + + + @@ -6284,7 +6801,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -6295,7 +6812,7 @@ errorLine2=" ~~~~~~~~~~~"> @@ -6306,7 +6823,7 @@ errorLine2=" ~~~~~~~~~~~"> @@ -6317,7 +6834,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~"> @@ -6328,7 +6845,7 @@ errorLine2=" ~~~~~~"> @@ -6339,7 +6856,7 @@ errorLine2=" ~~~~~~~~~~~~~"> @@ -6350,7 +6867,7 @@ errorLine2=" ~~~~~~~~~~~~~~"> @@ -6361,7 +6878,7 @@ errorLine2=" ~~~~~~~~~~~~"> @@ -6372,7 +6889,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~"> @@ -6383,7 +6900,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~"> @@ -6394,7 +6911,7 @@ errorLine2=" ~~~~~~~~~~~~"> @@ -6405,7 +6922,7 @@ errorLine2=" ~~~~~~~~~~"> @@ -6416,7 +6933,7 @@ errorLine2=" ~~~~~~~~~~"> @@ -6427,7 +6944,7 @@ errorLine2=" ~~~~~~~~~~~~~"> @@ -6438,7 +6955,7 @@ errorLine2=" ~~~~~~~~~~~"> @@ -6449,7 +6966,7 @@ errorLine2=" ~~~~~~~~~~~"> @@ -6460,7 +6977,7 @@ errorLine2=" ~~~~~~~~~~"> @@ -6471,7 +6988,7 @@ errorLine2=" ~~~~~~~~~"> @@ -6482,7 +6999,7 @@ errorLine2=" ~~~~~~~~"> @@ -6493,7 +7010,7 @@ errorLine2=" ~~~~~~~~~~"> @@ -6504,7 +7021,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -6515,7 +7032,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -6526,7 +7043,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~"> @@ -6537,7 +7054,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -6548,7 +7065,7 @@ errorLine2=" ~~~~~~~~~~"> @@ -6559,7 +7076,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -6570,7 +7087,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -6581,7 +7098,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -6592,7 +7109,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -6603,7 +7120,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~"> @@ -6614,7 +7131,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -6625,7 +7142,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~"> @@ -6636,7 +7153,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~"> @@ -6647,7 +7164,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -6658,7 +7175,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~"> @@ -6669,7 +7186,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -6680,7 +7197,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~"> @@ -6700,30 +7217,30 @@ + message="Found bitmap drawable `res/drawable/onboarding_background_large_dark.png` in densityless folder"> + file="src/main/res/drawable/onboarding_background_large_dark.png"/> + message="Found bitmap drawable `res/drawable/onboarding_background_large_light.png` in densityless folder"> + file="src/main/res/drawable/onboarding_background_large_light.png"/> + message="Found bitmap drawable `res/drawable/onboarding_background_small_dark.png` in densityless folder"> + file="src/main/res/drawable/onboarding_background_small_dark.png"/> + message="Found bitmap drawable `res/drawable/onboarding_background_small_light.png` in densityless folder"> + file="src/main/res/drawable/onboarding_background_small_light.png"/> @@ -6781,28 +7298,6 @@ column="17"/> - - - - - - - - @@ -6821,7 +7316,7 @@ errorLine2=" ^"> @@ -6876,7 +7371,18 @@ errorLine2=" ~~~~~~~~~"> + + + + @@ -6887,7 +7393,18 @@ errorLine2=" ~~~~~~~~~"> + + + + @@ -6897,11 +7414,44 @@ errorLine1=" <ImageView" errorLine2=" ~~~~~~~~~"> + + + + + + + + + + + + @@ -6964,7 +7514,7 @@ errorLine2=" ~~~~~~~~~"> @@ -6975,7 +7525,7 @@ errorLine2=" ~~~~~~~~~"> @@ -6986,7 +7536,7 @@ errorLine2=" ~~~~~~~~~"> @@ -6997,7 +7547,7 @@ errorLine2=" ~~~~~~~~~"> @@ -7008,7 +7558,7 @@ errorLine2=" ~~~~~~~~~"> @@ -7019,7 +7569,7 @@ errorLine2=" ~~~~~~~~~"> @@ -7030,7 +7580,7 @@ errorLine2=" ~~~~~~~~~"> @@ -7040,11 +7590,66 @@ errorLine1=" <ImageView" errorLine2=" ~~~~~~~~~"> + + + + + + + + + + + + + + + + + + + + @@ -7254,28 +7859,6 @@ column="6"/> - - - - - - - - @@ -7294,7 +7877,7 @@ errorLine2=" ~~"> @@ -7305,10 +7888,21 @@ errorLine2=" ~~"> + + + + @@ -7327,7 +7921,7 @@ errorLine2=" ~~"> @@ -7338,10 +7932,21 @@ errorLine2=" ~~"> + + + + + id="SetTextI18n" + message="Do not concatenate text displayed with `setText`. Use resource string with placeholders." + errorLine1=" binding.daxDialogCta.progressBarText.text = "2 / 2"" + errorLine2=" ~~~~~~~"> + file="src/main/java/com/duckduckgo/app/onboarding/ui/page/WelcomePage.kt" + line="226" + column="65"/> @@ -7381,8 +7986,8 @@ errorLine1=" android:paddingStart="5dp"" errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -7392,8 +7997,8 @@ errorLine1=" android:paddingStart="@dimen/keyline_4"" errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -7403,8 +8008,8 @@ errorLine1=" android:paddingStart="5dp"" errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -7422,7 +8027,7 @@ errorLine2=" ~~~~"> @@ -7440,7 +8045,7 @@ @@ -7657,15 +8262,4 @@ column="9"/> - - - - diff --git a/autoconsent/autoconsent-impl/lint-baseline.xml b/autoconsent/autoconsent-impl/lint-baseline.xml index 4617c7f7d785..4e17fec893a8 100644 --- a/autoconsent/autoconsent-impl/lint-baseline.xml +++ b/autoconsent/autoconsent-impl/lint-baseline.xml @@ -8,8 +8,30 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> + + + + + + + + diff --git a/autofill/autofill-impl/lint-baseline.xml b/autofill/autofill-impl/lint-baseline.xml index 31a2c68a6859..85fddc82a8af 100644 --- a/autofill/autofill-impl/lint-baseline.xml +++ b/autofill/autofill-impl/lint-baseline.xml @@ -12,6 +12,341 @@ column="32"/> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -184,7 +519,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~"> @@ -195,7 +530,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~"> @@ -327,7 +662,7 @@ errorLine2=" ^"> @@ -338,7 +673,7 @@ errorLine2=" ^"> @@ -349,7 +684,7 @@ errorLine2=" ^"> @@ -360,7 +695,7 @@ errorLine2=" ^"> @@ -371,7 +706,7 @@ errorLine2=" ^"> @@ -382,7 +717,7 @@ errorLine2=" ^"> @@ -393,7 +728,7 @@ errorLine2=" ^"> @@ -404,7 +739,7 @@ errorLine2=" ^"> @@ -415,7 +750,7 @@ errorLine2=" ^"> @@ -426,7 +761,7 @@ errorLine2=" ^"> @@ -437,7 +772,7 @@ errorLine2=" ^"> @@ -448,7 +783,7 @@ errorLine2=" ^"> @@ -459,7 +794,7 @@ errorLine2=" ^"> @@ -470,7 +805,7 @@ errorLine2=" ^"> @@ -481,7 +816,7 @@ errorLine2=" ^"> @@ -492,7 +827,7 @@ errorLine2=" ^"> @@ -503,7 +838,7 @@ errorLine2=" ^"> @@ -514,7 +849,7 @@ errorLine2=" ^"> @@ -525,7 +860,7 @@ errorLine2=" ^"> @@ -536,7 +871,7 @@ errorLine2=" ^"> @@ -547,7 +882,7 @@ errorLine2=" ^"> @@ -558,7 +893,7 @@ errorLine2=" ^"> @@ -569,7 +904,7 @@ errorLine2=" ^"> @@ -580,7 +915,7 @@ errorLine2=" ^"> @@ -591,7 +926,7 @@ errorLine2=" ^"> @@ -1658,7 +1993,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -1669,7 +2004,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -1680,7 +2015,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -1691,7 +2026,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -1702,7 +2037,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -1713,7 +2048,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -1724,7 +2059,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -1735,7 +2070,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -1746,7 +2081,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -1757,7 +2092,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -1768,7 +2103,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -1779,7 +2114,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -1790,7 +2125,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -1801,7 +2136,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -1812,7 +2147,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -1823,7 +2158,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -1834,7 +2169,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -1845,7 +2180,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -1856,7 +2191,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -1867,7 +2202,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -1878,7 +2213,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -1889,7 +2224,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -1900,7 +2235,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -1911,10 +2246,32 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> + + + + + + + + @@ -1933,7 +2290,7 @@ errorLine2=" ^"> @@ -1944,7 +2301,7 @@ errorLine2=" ^"> @@ -1955,7 +2312,7 @@ errorLine2=" ^"> @@ -1966,7 +2323,7 @@ errorLine2=" ^"> @@ -1977,10 +2334,21 @@ errorLine2=" ^"> + + + + + + + + + + + + + + + + + + + + @@ -30,7 +41,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -41,7 +52,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> diff --git a/autofill/autofill-store/lint-baseline.xml b/autofill/autofill-store/lint-baseline.xml index 77fc78d87c97..702d11545747 100644 --- a/autofill/autofill-store/lint-baseline.xml +++ b/autofill/autofill-store/lint-baseline.xml @@ -8,7 +8,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> diff --git a/common/common-ui/lint-baseline.xml b/common/common-ui/lint-baseline.xml index 2740bfa296d0..8e81edc5d04f 100644 --- a/common/common-ui/lint-baseline.xml +++ b/common/common-ui/lint-baseline.xml @@ -34,6 +34,39 @@ column="13"/> + + + + + + + + + + + + @@ -283,7 +316,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -294,7 +327,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -305,7 +338,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -595,6 +628,28 @@ column="25"/> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -1350,7 +1537,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1361,7 +1548,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1372,7 +1559,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1383,7 +1570,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1394,7 +1581,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1405,7 +1592,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1416,7 +1603,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1427,7 +1614,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1438,7 +1625,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1449,7 +1636,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1460,7 +1647,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1471,7 +1658,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1482,7 +1669,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1493,7 +1680,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1504,7 +1691,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1515,7 +1702,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1526,7 +1713,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1537,7 +1724,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1548,7 +1735,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1559,7 +1746,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1570,7 +1757,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1581,7 +1768,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1592,7 +1779,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1603,7 +1790,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1614,7 +1801,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1625,107 +1812,85 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> - - - - - - - - + message="Hardcoded string "Disabled text input", should use `@string` resource" + errorLine1=" android:hint="Disabled text input"" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> + file="src/main/res/layout/component_text_input_view.xml" + line="188" + column="13"/> + message="Hardcoded string "This input is disabled", should use `@string` resource" + errorLine1=" android:text="This input is disabled" />" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> + file="src/main/res/layout/component_text_input_view.xml" + line="189" + column="13"/> + message="Hardcoded string "Disabled multi line input", should use `@string` resource" + errorLine1=" android:hint="Disabled multi line input"" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> + file="src/main/res/layout/component_text_input_view.xml" + line="198" + column="13"/> + message="Hardcoded string "This input is disabled", should use `@string` resource" + errorLine1=" android:text="This input is disabled" />" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> + file="src/main/res/layout/component_text_input_view.xml" + line="199" + column="13"/> + message="Hardcoded string "Disabled password", should use `@string` resource" + errorLine1=" android:hint="Disabled password"" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> + file="src/main/res/layout/component_text_input_view.xml" + line="208" + column="13"/> + message="Hardcoded string "This password input is disabled", should use `@string` resource" + errorLine1=" android:text="This password input is disabled" />" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> + file="src/main/res/layout/component_text_input_view.xml" + line="209" + column="13"/> + + + + + errorLine1=" android:text="Text Alert Dialog With One Button"" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> + line="78" + column="13"/> + + + + @@ -1801,7 +1988,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1812,7 +1999,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1823,7 +2010,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1834,7 +2021,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1845,7 +2032,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1856,7 +2043,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1867,7 +2054,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1878,7 +2065,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1889,7 +2076,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1900,7 +2087,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1911,7 +2098,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1922,7 +2109,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1933,7 +2120,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1944,7 +2131,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1955,7 +2142,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -2468,7 +2655,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -2479,7 +2666,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -2490,7 +2677,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> diff --git a/duckchat/duckchat-impl/lint-baseline.xml b/duckchat/duckchat-impl/lint-baseline.xml index 41c26da9c182..bcf3d3297fa2 100644 --- a/duckchat/duckchat-impl/lint-baseline.xml +++ b/duckchat/duckchat-impl/lint-baseline.xml @@ -8,18 +8,18 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> + message="Very long vector path (1427 characters), which is bad for performance. Considering reducing precision, removing minor details or rasterizing vector." + errorLine1=" android:pathData="m105.63,38.2 l1.54,-0.4a0.88,0.88 0,0 0,0.63 -0.63l0.4,-1.54A0.84,0.84 0,0 1,109 35c0.4,0 0.74,0.29 0.8,0.63l0.4,1.54a0.88,0.88 0,0 0,0.63 0.63l1.54,0.4c0.4,0.11 0.63,0.46 0.63,0.8 0,0.4 -0.29,0.74 -0.63,0.8l-1.54,0.4a0.88,0.88 0,0 0,-0.63 0.63l-0.4,1.54a0.84,0.84 0,0 1,-0.8 0.63c-0.4,0 -0.74,-0.29 -0.8,-0.63l-0.4,-1.54a0.88,0.88 0,0 0,-0.63 -0.63l-1.54,-0.4A0.84,0.84 0,0 1,105 39c0,-0.4 0.29,-0.74 0.63,-0.8ZM15.94,31.8 L18.26,31.2c0.43,-0.09 0.86,-0.51 0.94,-0.94l0.6,-2.31c0.17,-0.6 0.69,-0.94 1.2,-0.94 0.6,0 1.11,0.43 1.2,0.94l0.6,2.31c0.09,0.43 0.51,0.86 0.94,0.94l2.31,0.6c0.6,0.17 0.94,0.69 0.94,1.2 0,0.6 -0.43,1.11 -0.94,1.2l-2.31,0.6c-0.43,0.09 -0.86,0.51 -0.94,0.94l-0.6,2.31c-0.17,0.6 -0.69,0.94 -1.2,0.94 -0.6,0 -1.11,-0.43 -1.2,-0.94l-0.6,-2.31c-0.09,-0.43 -0.51,-0.86 -0.94,-0.94l-2.31,-0.6c-0.6,-0.17 -0.94,-0.69 -0.94,-1.2 0,-0.6 0.43,-1.11 0.94,-1.2ZM0.63,53.2l1.54,-0.4a0.88,0.88 0,0 0,0.63 -0.63l0.4,-1.54A0.84,0.84 0,0 1,4 50c0.4,0 0.74,0.29 0.8,0.63l0.4,1.54a0.88,0.88 0,0 0,0.63 0.63l1.54,0.4c0.4,0.11 0.63,0.46 0.63,0.8 0,0.4 -0.29,0.74 -0.63,0.8l-1.54,0.4a0.88,0.88 0,0 0,-0.63 0.63l-0.4,1.54A0.84,0.84 0,0 1,4 58c-0.4,0 -0.74,-0.29 -0.8,-0.63l-0.4,-1.54a0.88,0.88 0,0 0,-0.63 -0.63L0.63,54.8A0.84,0.84 0,0 1,0 54c0,-0.4 0.29,-0.74 0.63,-0.8ZM126.5,52c-0.82,0 -1.5,-0.68 -1.5,-1.5s0.68,-1.5 1.5,-1.5 1.5,0.68 1.5,1.5 -0.68,1.5 -1.5,1.5ZM23,70c-1.1,0 -2,-0.9 -2,-2s0.9,-2 2,-2 2,0.9 2,2 -0.9,2 -2,2Z"" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> diff --git a/duckplayer/duckplayer-impl/lint-baseline.xml b/duckplayer/duckplayer-impl/lint-baseline.xml index c1f778a75e90..ae6774112c99 100644 --- a/duckplayer/duckplayer-impl/lint-baseline.xml +++ b/duckplayer/duckplayer-impl/lint-baseline.xml @@ -8,7 +8,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -19,7 +19,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> diff --git a/experiments/experiments-impl/lint-baseline.xml b/experiments/experiments-impl/lint-baseline.xml index f9c8c4056c7c..7a009be0703c 100644 --- a/experiments/experiments-impl/lint-baseline.xml +++ b/experiments/experiments-impl/lint-baseline.xml @@ -23,81 +23,4 @@ column="69"/> - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/feature-toggles/feature-toggles-impl/lint-baseline.xml b/feature-toggles/feature-toggles-impl/lint-baseline.xml index e7d6f9d09fbd..1ba99f818b44 100644 --- a/feature-toggles/feature-toggles-impl/lint-baseline.xml +++ b/feature-toggles/feature-toggles-impl/lint-baseline.xml @@ -437,32 +437,21 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> - - - - @@ -481,7 +470,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -492,7 +481,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -503,7 +492,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -514,7 +503,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -525,7 +514,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -536,7 +525,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -547,7 +536,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -558,7 +547,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -569,7 +558,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -580,7 +569,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~"> @@ -899,7 +888,7 @@ errorLine2=" ^"> @@ -910,7 +899,7 @@ errorLine2=" ^"> @@ -921,7 +910,7 @@ errorLine2=" ^"> @@ -932,7 +921,7 @@ errorLine2=" ^"> @@ -943,7 +932,7 @@ errorLine2=" ^"> @@ -954,7 +943,7 @@ errorLine2=" ^"> @@ -965,7 +954,7 @@ errorLine2=" ^"> @@ -976,7 +965,7 @@ errorLine2=" ^"> @@ -987,7 +976,7 @@ errorLine2=" ^"> @@ -1009,7 +998,7 @@ errorLine2=" ^"> @@ -1020,7 +1009,7 @@ errorLine2=" ^"> @@ -1031,7 +1020,7 @@ errorLine2=" ^"> @@ -1042,7 +1031,7 @@ errorLine2=" ^"> @@ -1053,7 +1042,7 @@ errorLine2=" ^"> @@ -1064,7 +1053,7 @@ errorLine2=" ^"> @@ -1075,7 +1064,7 @@ errorLine2=" ^"> @@ -1086,7 +1075,7 @@ errorLine2=" ^"> @@ -1097,7 +1086,7 @@ errorLine2=" ^"> @@ -1108,7 +1097,7 @@ errorLine2=" ^"> diff --git a/feature-toggles/feature-toggles-internal/lint-baseline.xml b/feature-toggles/feature-toggles-internal/lint-baseline.xml index eb15241a57ca..b40caf5e9b66 100644 --- a/feature-toggles/feature-toggles-internal/lint-baseline.xml +++ b/feature-toggles/feature-toggles-internal/lint-baseline.xml @@ -8,7 +8,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -19,7 +19,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -30,7 +30,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -41,7 +41,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~"> diff --git a/installation/installation-impl/lint-baseline.xml b/installation/installation-impl/lint-baseline.xml index 68008f8a1c38..c584e1295716 100644 --- a/installation/installation-impl/lint-baseline.xml +++ b/installation/installation-impl/lint-baseline.xml @@ -1,26 +1,4 @@ - - - - - - - - diff --git a/network-protection/network-protection-impl/lint-baseline.xml b/network-protection/network-protection-impl/lint-baseline.xml index 386f5f63dac9..1f5f37d67214 100644 --- a/network-protection/network-protection-impl/lint-baseline.xml +++ b/network-protection/network-protection-impl/lint-baseline.xml @@ -30,7 +30,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~"> @@ -70,177 +70,1860 @@ + errorLine1=" netPSettingsLocalConfig.vpnExcludeLocalNetworkRoutes().setRawStoredState(Toggle.State(enable = enabled))" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> + + + + + errorLine1=" when (category) {" + errorLine2=" ^"> + errorLine1=" when (category) {" + errorLine2=" ^"> + errorLine1=" netPSettingsLocalConfig.vpnPauseDuringCalls().setRawStoredState(Toggle.State(enable = true))" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> + errorLine1=" netPSettingsLocalConfig.vpnPauseDuringCalls().setRawStoredState(Toggle.State(enable = false))" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> + file="src/main/java/com/duckduckgo/networkprotection/impl/snooze/VpnDisableOnCall.kt" + line="59" + column="13"/> + message="No one remembers what these constants map to. Use the API level integer value directly since it's self-defining." + errorLine1=" if (appBuildConfig.sdkInt >= Build.VERSION_CODES.UPSIDE_DOWN_CAKE) {" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + file="src/main/res/values-sv/strings-netp.xml" + line="227" + column="41"/> + id="Untranslatable" + message="The resource string "netpCustomDnsDefault" is marked as translatable="false", but is translated to "tr" (Turkish) here" + errorLine1=" <string name="netpCustomDnsDefault" translatable="false">DuckDuckGo</string>" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> + file="src/main/res/values-tr/strings-netp.xml" + line="227" + column="41"/> + id="Untranslatable" + message="The resource string "netpCustomDnsDefault" is marked as translatable="false", but is translated to "lv" (Latvian) here" + errorLine1=" <string name="netpCustomDnsDefault" translatable="false">DuckDuckGo</string>" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> + file="src/main/res/values-lv/strings-netp.xml" + line="228" + column="41"/> + id="Untranslatable" + message="The resource string "netpCustomDnsDefault" is marked as translatable="false", but is translated to "ro" (Romanian) here" + errorLine1=" <string name="netpCustomDnsDefault" translatable="false">DuckDuckGo</string>" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> + file="src/main/res/values-ro/strings-netp.xml" + line="228" + column="41"/> + id="Untranslatable" + message="The resource string "netpCustomDnsDefault" is marked as translatable="false", but is translated to "cs" (Czech) here" + errorLine1=" <string name="netpCustomDnsDefault" translatable="false">DuckDuckGo</string>" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> + file="src/main/res/values-cs/strings-netp.xml" + line="229" + column="41"/> + id="Untranslatable" + message="The resource string "netpCustomDnsDefault" is marked as translatable="false", but is translated to "hr" (Croatian) here" + errorLine1=" <string name="netpCustomDnsDefault" translatable="false">DuckDuckGo</string>" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> + file="src/main/res/values-hr/strings-netp.xml" + line="229" + column="41"/> + id="Untranslatable" + message="The resource string "netpCustomDnsDefault" is marked as translatable="false", but is translated to "lt" (Lithuanian) here" + errorLine1=" <string name="netpCustomDnsDefault" translatable="false">DuckDuckGo</string>" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> + file="src/main/res/values-lt/strings-netp.xml" + line="229" + column="41"/> + id="Untranslatable" + message="The resource string "netpCustomDnsDefault" is marked as translatable="false", but is translated to "pl" (Polish) here" + errorLine1=" <string name="netpCustomDnsDefault" translatable="false">DuckDuckGo</string>" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> + file="src/main/res/values-pl/strings-netp.xml" + line="229" + column="41"/> + id="Untranslatable" + message="The resource string "netpCustomDnsDefault" is marked as translatable="false", but is translated to "ru" (Russian) here" + errorLine1=" <string name="netpCustomDnsDefault" translatable="false">DuckDuckGo</string>" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> + file="src/main/res/values-ru/strings-netp.xml" + line="229" + column="41"/> + id="Untranslatable" + message="The resource string "netpCustomDnsDefault" is marked as translatable="false", but is translated to "sk" (Slovak) here" + errorLine1=" <string name="netpCustomDnsDefault" translatable="false">DuckDuckGo</string>" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> + file="src/main/res/values-sk/strings-netp.xml" + line="229" + column="41"/> + id="Untranslatable" + message="The resource string "netpCustomDnsDefault" is marked as translatable="false", but is translated to "sl" (Slovenian) here" + errorLine1=" <string name="netpCustomDnsDefault" translatable="false">DuckDuckGo</string>" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> + file="src/main/res/values-sl/strings-netp.xml" + line="229" + column="41"/> + + + + + + + + + + + + @@ -331,6 +2047,28 @@ column="25"/> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -30,7 +30,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> diff --git a/privacy-dashboard/privacy-dashboard-impl/lint-baseline.xml b/privacy-dashboard/privacy-dashboard-impl/lint-baseline.xml index 648af03c72d5..8aae8bbf8e92 100644 --- a/privacy-dashboard/privacy-dashboard-impl/lint-baseline.xml +++ b/privacy-dashboard/privacy-dashboard-impl/lint-baseline.xml @@ -19,65 +19,10 @@ errorLine2=" ~~~~~~~~~~~~~~~"> - - - - - - - - - - - - - - - - - - - - @@ -173,7 +173,7 @@ errorLine2=" ^"> @@ -184,7 +184,7 @@ errorLine2=" ^"> @@ -195,7 +195,7 @@ errorLine2=" ^"> @@ -206,7 +206,7 @@ errorLine2=" ^"> @@ -217,7 +217,7 @@ errorLine2=" ^"> @@ -228,7 +228,7 @@ errorLine2=" ^"> @@ -239,7 +239,7 @@ errorLine2=" ^"> @@ -250,7 +250,7 @@ errorLine2=" ^"> @@ -261,7 +261,7 @@ errorLine2=" ^"> @@ -272,7 +272,7 @@ errorLine2=" ^"> @@ -283,7 +283,7 @@ errorLine2=" ^"> @@ -316,7 +316,7 @@ errorLine2=" ^"> @@ -327,7 +327,7 @@ errorLine2=" ^"> @@ -338,7 +338,7 @@ errorLine2=" ^"> @@ -375,6 +375,17 @@ column="5"/> + + + + + + + + + + + + + + + + diff --git a/statistics/statistics-impl/lint-baseline.xml b/statistics/statistics-impl/lint-baseline.xml index 6612c18157b4..ab9a4be8367a 100644 --- a/statistics/statistics-impl/lint-baseline.xml +++ b/statistics/statistics-impl/lint-baseline.xml @@ -30,7 +30,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> diff --git a/subscriptions/subscriptions-impl/lint-baseline.xml b/subscriptions/subscriptions-impl/lint-baseline.xml index 3cd00fdc4d34..bbcb3ebb0308 100644 --- a/subscriptions/subscriptions-impl/lint-baseline.xml +++ b/subscriptions/subscriptions-impl/lint-baseline.xml @@ -81,199 +81,2223 @@ + errorLine1=" privacyProFeature.allowPurchase().setRawStoredState(Toggle.State(enable = true))" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> + errorLine1=" privacyProFeature.allowPurchase().setRawStoredState(Toggle.State(enable = true))" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> + errorLine1=" privacyProFeature.allowPurchase().setRawStoredState(Toggle.State(enable = false))" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> + message="No one remembers what these constants map to. Use the API level integer value directly since it's self-defining." + errorLine1=" return appBuildConfig.sdkInt >= Build.VERSION_CODES.R" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~"> + file="src/main/java/com/duckduckgo/subscriptions/impl/ui/SubscriptionsWebViewActivity.kt" + line="370" + column="41"/> + id="VectorRaster" + message="Limit vector icons sizes to 200×200 to keep icon drawing fast; see https://developer.android.com/studio/write/vector-asset-studio#when for more" + errorLine1=" android:width="320dp"" + errorLine2=" ~~~~~"> + file="src/main/res/drawable/ic_information_remover.xml" + line="19" + column="20"/> + id="DiscouragedApi" + message="Should not restrict activity to fixed orientation. This may not be suitable for different form factors, causing the app to be letterboxed." + errorLine1=" android:screenOrientation="portrait" />" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + file="src/main/res/values-it/strings-subscriptions.xml" + line="165" + column="32"/> + id="Untranslatable" + message="The resource string "activityPir" is marked as translatable="false", but is translated to "lt" (Lithuanian) here" + errorLine1=" <string name="activityPir" translatable="false">Privacy Pro</string>" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> + file="src/main/res/values-lt/strings-subscriptions.xml" + line="165" + column="32"/> + id="Untranslatable" + message="The resource string "activityPir" is marked as translatable="false", but is translated to "lv" (Latvian) here" + errorLine1=" <string name="activityPir" translatable="false">Privacy Pro</string>" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> + file="src/main/res/values-lv/strings-subscriptions.xml" + line="165" + column="32"/> + id="Untranslatable" + message="The resource string "activityPir" is marked as translatable="false", but is translated to "nb" (Norwegian Bokmål) here" + errorLine1=" <string name="activityPir" translatable="false">Privacy Pro</string>" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> + file="src/main/res/values-nb/strings-subscriptions.xml" + line="165" + column="32"/> + id="Untranslatable" + message="The resource string "activityPir" is marked as translatable="false", but is translated to "nl" (Dutch) here" + errorLine1=" <string name="activityPir" translatable="false">Privacy Pro</string>" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> + file="src/main/res/values-nl/strings-subscriptions.xml" + line="165" + column="32"/> + id="Untranslatable" + message="The resource string "activityPir" is marked as translatable="false", but is translated to "pl" (Polish) here" + errorLine1=" <string name="activityPir" translatable="false">Privacy Pro</string>" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> + file="src/main/res/values-pl/strings-subscriptions.xml" + line="165" + column="32"/> + id="Untranslatable" + message="The resource string "activityPir" is marked as translatable="false", but is translated to "pt" (Portuguese) here" + errorLine1=" <string name="activityPir" translatable="false">Privacy Pro</string>" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> + file="src/main/res/values-pt/strings-subscriptions.xml" + line="165" + column="32"/> + id="Untranslatable" + message="The resource string "activityPir" is marked as translatable="false", but is translated to "ro" (Romanian) here" + errorLine1=" <string name="activityPir" translatable="false">Privacy Pro</string>" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> + file="src/main/res/values-ro/strings-subscriptions.xml" + line="165" + column="32"/> + id="Untranslatable" + message="The resource string "activityPir" is marked as translatable="false", but is translated to "ru" (Russian) here" + errorLine1=" <string name="activityPir" translatable="false">Privacy Pro</string>" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> + file="src/main/res/values-ru/strings-subscriptions.xml" + line="165" + column="32"/> + id="Untranslatable" + message="The resource string "activityPir" is marked as translatable="false", but is translated to "sk" (Slovak) here" + errorLine1=" <string name="activityPir" translatable="false">Privacy Pro</string>" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> + file="src/main/res/values-sk/strings-subscriptions.xml" + line="165" + column="32"/> + id="Untranslatable" + message="The resource string "activityPir" is marked as translatable="false", but is translated to "sl" (Slovenian) here" + errorLine1=" <string name="activityPir" translatable="false">Privacy Pro</string>" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> + file="src/main/res/values-sl/strings-subscriptions.xml" + line="165" + column="32"/> + id="Untranslatable" + message="The resource string "activityPir" is marked as translatable="false", but is translated to "sv" (Swedish) here" + errorLine1=" <string name="activityPir" translatable="false">Privacy Pro</string>" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> + file="src/main/res/values-sv/strings-subscriptions.xml" + line="165" + column="32"/> + id="Untranslatable" + message="The resource string "activityPir" is marked as translatable="false", but is translated to "tr" (Turkish) here" + errorLine1=" <string name="activityPir" translatable="false">Privacy Pro</string>" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> + file="src/main/res/values-tr/strings-subscriptions.xml" + line="165" + column="32"/> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -337,7 +2713,7 @@ errorLine1=" binding.subscriptionBuy.setOnTouchListener(null)" errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -348,7 +2724,7 @@ errorLine1=" binding.subscriptionGet.setOnTouchListener(null)" errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -359,11 +2735,55 @@ errorLine1=" binding.subscriptionRestore.setOnTouchListener(null)" errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> + + + + + + + + + + + + + + + + - - - - diff --git a/sync/sync-impl/lint-baseline.xml b/sync/sync-impl/lint-baseline.xml index 96f067463a0d..c06e4abaf7a7 100644 --- a/sync/sync-impl/lint-baseline.xml +++ b/sync/sync-impl/lint-baseline.xml @@ -29,7 +29,7 @@ message="Defined here, included via layout/activity_sync.xml => layout/view_sync_enabled.xml defines @+id/syncSetupOtherPlatforms"/> @@ -118,7 +118,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -129,7 +129,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -415,7 +415,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -426,7 +426,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -558,7 +558,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -569,7 +569,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -580,7 +580,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -591,7 +591,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -602,7 +602,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -613,7 +613,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -624,7 +624,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -635,7 +635,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -646,7 +646,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -657,7 +657,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -668,7 +668,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -679,7 +679,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -690,7 +690,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -701,7 +701,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -712,7 +712,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -723,7 +723,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -734,7 +734,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -745,7 +745,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -756,7 +756,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -767,7 +767,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -778,7 +778,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -789,7 +789,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -800,7 +800,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -811,7 +811,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -998,7 +998,7 @@ errorLine2=" ~~~~~~~~~~~~~~"> @@ -1009,7 +1009,7 @@ errorLine2=" ~~~~~~~~~~~~~"> @@ -1020,7 +1020,7 @@ errorLine2=" ~~~~~~~~~~~~~"> @@ -1031,7 +1031,7 @@ errorLine2=" ~~~~~~~~~~"> @@ -1042,7 +1042,7 @@ errorLine2=" ~~~~~~~~~~~~~"> @@ -1053,7 +1053,7 @@ errorLine2=" ~~~~~~~~~~~~~~"> @@ -1064,7 +1064,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1075,7 +1075,7 @@ errorLine2=" ~~~~~~~~~~~~~"> @@ -1086,7 +1086,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1097,7 +1097,7 @@ errorLine2=" ~~~~~~~~~~~"> @@ -1108,7 +1108,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1119,7 +1119,7 @@ errorLine2=" ~~~~~~~~~~~~~"> @@ -1130,7 +1130,7 @@ errorLine2=" ~~~~~~~~~~~~~~~"> @@ -1141,7 +1141,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~"> @@ -1152,7 +1152,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1163,7 +1163,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1174,7 +1174,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1185,7 +1185,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1196,7 +1196,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1207,7 +1207,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1218,7 +1218,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1229,7 +1229,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1240,7 +1240,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1251,7 +1251,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1262,7 +1262,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1273,7 +1273,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1284,7 +1284,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1295,7 +1295,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1306,7 +1306,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1317,7 +1317,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1328,7 +1328,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1339,7 +1339,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1350,7 +1350,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1361,7 +1361,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1372,7 +1372,7 @@ errorLine2=" ~~~~~~~~~~~"> @@ -1383,7 +1383,7 @@ errorLine2=" ~~~~~~~~~~~"> @@ -1394,7 +1394,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~"> @@ -1405,7 +1405,7 @@ errorLine2=" ~~~~~~"> @@ -1416,7 +1416,7 @@ errorLine2=" ~~~~~~~~~~~~~"> @@ -1427,7 +1427,7 @@ errorLine2=" ~~~~~~~~~~~~~~"> @@ -1438,7 +1438,7 @@ errorLine2=" ~~~~~~~~~~~~"> @@ -1449,7 +1449,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~"> @@ -1460,7 +1460,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~"> @@ -1471,7 +1471,7 @@ errorLine2=" ~~~~~~~~~~~~"> From 9f2681421036bb53b427a763c656975d6834616e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?David=20Gonz=C3=A1lez?= Date: Wed, 12 Feb 2025 14:57:08 +0100 Subject: [PATCH 12/16] Revert "updated baselines" This reverts commit 01ac75489203261f2c6b91e91d68d45449cf13ea. --- .../vpn-impl/lint-baseline.xml | 11 +- app/lint-baseline.xml | 2096 +++++-------- .../autoconsent-impl/lint-baseline.xml | 24 +- autofill/autofill-impl/lint-baseline.xml | 517 +--- autofill/autofill-internal/lint-baseline.xml | 19 +- autofill/autofill-store/lint-baseline.xml | 2 +- common/common-ui/lint-baseline.xml | 417 +-- duckchat/duckchat-impl/lint-baseline.xml | 10 +- duckplayer/duckplayer-impl/lint-baseline.xml | 4 +- .../experiments-impl/lint-baseline.xml | 77 + .../feature-toggles-impl/lint-baseline.xml | 77 +- .../lint-baseline.xml | 8 +- .../installation-impl/lint-baseline.xml | 22 + .../network-protection-impl/lint-baseline.xml | 2388 +-------------- .../privacy-config-internal/lint-baseline.xml | 4 +- .../privacy-dashboard-impl/lint-baseline.xml | 57 +- .../saved-sites-impl/lint-baseline.xml | 74 +- .../site-permissions-store/lint-baseline.xml | 2 +- statistics/statistics-impl/lint-baseline.xml | 2 +- .../subscriptions-impl/lint-baseline.xml | 2671 +---------------- sync/sync-impl/lint-baseline.xml | 146 +- 21 files changed, 1470 insertions(+), 7158 deletions(-) diff --git a/app-tracking-protection/vpn-impl/lint-baseline.xml b/app-tracking-protection/vpn-impl/lint-baseline.xml index 4dac6b55ce20..f727d5c620d5 100644 --- a/app-tracking-protection/vpn-impl/lint-baseline.xml +++ b/app-tracking-protection/vpn-impl/lint-baseline.xml @@ -19,7 +19,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -27,7 +27,7 @@ id="BadPeriodicWorkRequestEnqueue" message="Use `enqueueUniquePeriodicWork()` instead of `enqueue()`"> + file="$GRADLE_USER_HOME/caches/8.8/transforms/d14625ee55ebfba3972ab06f22b2b3b9/transformed/work-runtime-2.9.1/jars/classes.jar!/androidx/work/WorkManager.class"/> - - - - - - - - - - - - - - - - + message="Duplicate id @+id/cardContainer, defined or included multiple times in layout/fragment_browser_tab.xml: [layout/fragment_browser_tab.xml => layout/include_onboarding_view_dax_dialog.xml defines @+id/cardContainer, layout/fragment_browser_tab.xml => layout/include_new_browser_tab.xml => layout/include_dax_dialog_intro_bubble_cta.xml defines @+id/cardContainer]"/> + message="Defined here, included via layout/fragment_browser_tab.xml => layout/include_onboarding_view_dax_dialog.xml defines @+id/cardContainer"/> + message="Defined here, included via layout/fragment_browser_tab.xml => layout/include_new_browser_tab.xml => layout/include_dax_dialog_intro_bubble_cta.xml defines @+id/cardContainer"/> + message="Duplicate id @+id/cardView, defined or included multiple times in layout/fragment_browser_tab.xml: [layout/fragment_browser_tab.xml => layout/include_onboarding_view_dax_dialog.xml defines @+id/cardView, layout/fragment_browser_tab.xml => layout/include_new_browser_tab.xml => layout/include_dax_dialog_intro_bubble_cta.xml defines @+id/cardView]"/> + message="Defined here, included via layout/fragment_browser_tab.xml => layout/include_onboarding_view_dax_dialog.xml defines @+id/cardView"/> + message="Defined here, included via layout/fragment_browser_tab.xml => layout/include_new_browser_tab.xml => layout/include_dax_dialog_intro_bubble_cta.xml defines @+id/cardView"/> + message="Duplicate id @+id/daxBubbleDialogTitle, defined or included multiple times in layout/fragment_browser_tab.xml: [layout/fragment_browser_tab.xml => layout/include_onboarding_view_dax_dialog.xml defines @+id/daxBubbleDialogTitle, layout/fragment_browser_tab.xml => layout/include_new_browser_tab.xml => layout/include_dax_dialog_intro_bubble_cta.xml defines @+id/daxBubbleDialogTitle]"/> + message="Defined here, included via layout/fragment_browser_tab.xml => layout/include_onboarding_view_dax_dialog.xml defines @+id/daxBubbleDialogTitle"/> + message="Defined here, included via layout/fragment_browser_tab.xml => layout/include_new_browser_tab.xml => layout/include_dax_dialog_intro_bubble_cta.xml defines @+id/daxBubbleDialogTitle"/> + message="Duplicate id @+id/daxCtaContainer, defined or included multiple times in layout/fragment_browser_tab.xml: [layout/fragment_browser_tab.xml => layout/include_onboarding_view_dax_dialog.xml defines @+id/daxCtaContainer, layout/fragment_browser_tab.xml => layout/include_new_browser_tab.xml => layout/include_dax_dialog_intro_bubble_cta.xml defines @+id/daxCtaContainer]"/> + message="Defined here, included via layout/fragment_browser_tab.xml => layout/include_onboarding_view_dax_dialog.xml defines @+id/daxCtaContainer"/> + message="Defined here, included via layout/fragment_browser_tab.xml => layout/include_new_browser_tab.xml => layout/include_dax_dialog_intro_bubble_cta.xml defines @+id/daxCtaContainer"/> + message="Duplicate id @+id/daxDialogOption1, defined or included multiple times in layout/fragment_browser_tab.xml: [layout/fragment_browser_tab.xml => layout/include_onboarding_view_dax_dialog.xml defines @+id/daxDialogOption1, layout/fragment_browser_tab.xml => layout/include_new_browser_tab.xml => layout/include_dax_dialog_intro_bubble_cta.xml defines @+id/daxDialogOption1]"/> + message="Defined here, included via layout/fragment_browser_tab.xml => layout/include_onboarding_view_dax_dialog.xml defines @+id/daxDialogOption1"/> + message="Defined here, included via layout/fragment_browser_tab.xml => layout/include_new_browser_tab.xml => layout/include_dax_dialog_intro_bubble_cta.xml defines @+id/daxDialogOption1"/> + message="Duplicate id @+id/daxDialogOption2, defined or included multiple times in layout/fragment_browser_tab.xml: [layout/fragment_browser_tab.xml => layout/include_onboarding_view_dax_dialog.xml defines @+id/daxDialogOption2, layout/fragment_browser_tab.xml => layout/include_new_browser_tab.xml => layout/include_dax_dialog_intro_bubble_cta.xml defines @+id/daxDialogOption2]"/> + message="Defined here, included via layout/fragment_browser_tab.xml => layout/include_onboarding_view_dax_dialog.xml defines @+id/daxDialogOption2"/> + message="Defined here, included via layout/fragment_browser_tab.xml => layout/include_new_browser_tab.xml => layout/include_dax_dialog_intro_bubble_cta.xml defines @+id/daxDialogOption2"/> + message="Duplicate id @+id/daxDialogOption3, defined or included multiple times in layout/fragment_browser_tab.xml: [layout/fragment_browser_tab.xml => layout/include_onboarding_view_dax_dialog.xml defines @+id/daxDialogOption3, layout/fragment_browser_tab.xml => layout/include_new_browser_tab.xml => layout/include_dax_dialog_intro_bubble_cta.xml defines @+id/daxDialogOption3]"/> + message="Defined here, included via layout/fragment_browser_tab.xml => layout/include_onboarding_view_dax_dialog.xml defines @+id/daxDialogOption3"/> + message="Defined here, included via layout/fragment_browser_tab.xml => layout/include_new_browser_tab.xml => layout/include_dax_dialog_intro_bubble_cta.xml defines @+id/daxDialogOption3"/> + message="Duplicate id @+id/daxDialogOption4, defined or included multiple times in layout/fragment_browser_tab.xml: [layout/fragment_browser_tab.xml => layout/include_onboarding_view_dax_dialog.xml defines @+id/daxDialogOption4, layout/fragment_browser_tab.xml => layout/include_new_browser_tab.xml => layout/include_dax_dialog_intro_bubble_cta.xml defines @+id/daxDialogOption4]"/> + message="Defined here, included via layout/fragment_browser_tab.xml => layout/include_onboarding_view_dax_dialog.xml defines @+id/daxDialogOption4"/> + message="Defined here, included via layout/fragment_browser_tab.xml => layout/include_new_browser_tab.xml => layout/include_dax_dialog_intro_bubble_cta.xml defines @+id/daxDialogOption4"/> + message="Duplicate id @+id/dialogTextCta, defined or included multiple times in layout/fragment_browser_tab.xml: [layout/fragment_browser_tab.xml => layout/include_onboarding_view_dax_dialog.xml defines @+id/dialogTextCta, layout/fragment_browser_tab.xml => layout/include_new_browser_tab.xml => layout/include_dax_dialog_intro_bubble_cta.xml defines @+id/dialogTextCta]"/> + message="Defined here, included via layout/fragment_browser_tab.xml => layout/include_onboarding_view_dax_dialog.xml defines @+id/dialogTextCta"/> + message="Defined here, included via layout/fragment_browser_tab.xml => layout/include_new_browser_tab.xml => layout/include_dax_dialog_intro_bubble_cta.xml defines @+id/dialogTextCta"/> + message="Duplicate id @+id/hiddenTextCta, defined or included multiple times in layout/fragment_browser_tab.xml: [layout/fragment_browser_tab.xml => layout/include_onboarding_view_dax_dialog.xml defines @+id/hiddenTextCta, layout/fragment_browser_tab.xml => layout/include_new_browser_tab.xml => layout/include_dax_dialog_intro_bubble_cta.xml defines @+id/hiddenTextCta]"/> + message="Defined here, included via layout/fragment_browser_tab.xml => layout/include_onboarding_view_dax_dialog.xml defines @+id/hiddenTextCta"/> + message="Defined here, included via layout/fragment_browser_tab.xml => layout/include_new_browser_tab.xml => layout/include_dax_dialog_intro_bubble_cta.xml defines @+id/hiddenTextCta"/> + message="Duplicate id @+id/logo, defined or included multiple times in layout/fragment_browser_tab.xml: [layout/fragment_browser_tab.xml => layout/include_onboarding_view_dax_dialog.xml defines @+id/logo, layout/fragment_browser_tab.xml => layout/include_new_browser_tab.xml => layout/include_dax_dialog_intro_bubble_cta.xml defines @+id/logo]"/> + message="Defined here, included via layout/fragment_browser_tab.xml => layout/include_onboarding_view_dax_dialog.xml defines @+id/logo"/> - - - - - - + message="Defined here, included via layout/fragment_browser_tab.xml => layout/include_new_browser_tab.xml => layout/include_dax_dialog_intro_bubble_cta.xml defines @+id/logo"/> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + message="Duplicate id @+id/primaryCta, defined or included multiple times in layout/fragment_browser_tab.xml: [layout/fragment_browser_tab.xml => layout/include_onboarding_view_dax_dialog.xml defines @+id/primaryCta, layout/fragment_browser_tab.xml => layout/include_new_browser_tab.xml => layout/include_dax_dialog_intro_bubble_cta.xml defines @+id/primaryCta]"/> - - - - - + file="src/main/res/layout/include_onboarding_view_dax_dialog.xml" + line="99" + column="25" + message="Defined here, included via layout/fragment_browser_tab.xml => layout/include_onboarding_view_dax_dialog.xml defines @+id/primaryCta"/> - - + message="Defined here, included via layout/fragment_browser_tab.xml => layout/include_new_browser_tab.xml => layout/include_dax_dialog_intro_bubble_cta.xml defines @+id/primaryCta"/> - - - - @@ -558,21 +349,10 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -624,7 +492,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~"> @@ -635,7 +503,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~"> @@ -646,7 +514,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~"> @@ -767,7 +635,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -888,7 +756,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -943,7 +811,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1273,7 +1141,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1349,7 +1217,7 @@ errorLine1=" android:width="344dp"" errorLine2=" ~~~~~"> @@ -1372,7 +1240,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1394,7 +1262,7 @@ errorLine2=" ^"> @@ -1405,7 +1273,7 @@ errorLine2=" ^"> @@ -1416,7 +1284,7 @@ errorLine2=" ^"> @@ -1427,7 +1295,7 @@ errorLine2=" ^"> @@ -1438,7 +1306,7 @@ errorLine2=" ^"> @@ -1449,7 +1317,7 @@ errorLine2=" ^"> @@ -1460,7 +1328,7 @@ errorLine2=" ^"> @@ -1471,10 +1339,32 @@ errorLine2=" ^"> + + + + + + + + @@ -1493,7 +1383,7 @@ errorLine2=" ^"> @@ -1504,7 +1394,7 @@ errorLine2=" ^"> @@ -1515,7 +1405,7 @@ errorLine2=" ^"> @@ -1526,7 +1416,7 @@ errorLine2=" ^"> @@ -1537,7 +1427,7 @@ errorLine2=" ^"> @@ -1548,7 +1438,7 @@ errorLine2=" ^"> @@ -1559,7 +1449,7 @@ errorLine2=" ^"> @@ -2098,7 +1988,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2109,7 +1999,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2120,7 +2010,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2131,7 +2021,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2142,7 +2032,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2153,7 +2043,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2164,7 +2054,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2175,7 +2065,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2186,7 +2076,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2197,7 +2087,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2208,7 +2098,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2219,7 +2109,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2230,7 +2120,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2241,7 +2131,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2252,7 +2142,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2263,7 +2153,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2274,7 +2164,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2285,7 +2175,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2296,7 +2186,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2307,7 +2197,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2318,7 +2208,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2329,7 +2219,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2340,7 +2230,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2351,7 +2241,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2626,7 +2516,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2637,7 +2527,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2648,7 +2538,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2659,7 +2549,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2670,7 +2560,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2681,7 +2571,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2692,7 +2582,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2703,7 +2593,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2714,7 +2604,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2725,7 +2615,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2736,7 +2626,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2747,7 +2637,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2758,7 +2648,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2769,7 +2659,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2780,7 +2670,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2791,7 +2681,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2802,7 +2692,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2813,7 +2703,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2824,7 +2714,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2835,7 +2725,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2846,7 +2736,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2857,7 +2747,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2868,7 +2758,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2879,7 +2769,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2890,7 +2780,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2901,7 +2791,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2912,7 +2802,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2923,7 +2813,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2934,7 +2824,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2945,7 +2835,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2956,7 +2846,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2967,7 +2857,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2978,7 +2868,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2989,7 +2879,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -3000,7 +2890,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -3011,7 +2901,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -3022,7 +2912,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -3033,7 +2923,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -3044,7 +2934,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -3055,7 +2945,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -3066,7 +2956,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -3077,7 +2967,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -3088,7 +2978,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -3099,7 +2989,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -3110,7 +3000,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -3121,7 +3011,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -3132,7 +3022,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -3143,7 +3033,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -3154,7 +3044,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -3165,7 +3055,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -3176,7 +3066,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -3187,7 +3077,7 @@ errorLine2=" ^"> @@ -3198,7 +3088,7 @@ errorLine2=" ^"> @@ -3242,7 +3132,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~"> @@ -3275,7 +3165,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~"> @@ -3312,6 +3202,28 @@ column="17"/> + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + column="25"/> @@ -4121,7 +3934,7 @@ errorLine1=" android:pathData="M131.95,467.26C138.23,466.29 144.64,467.46 150.19,470.57C150.34,470.65 150.51,470.69 150.68,470.67C150.85,470.66 151.01,470.59 151.14,470.48C151.27,470.38 151.37,470.23 151.42,470.07C151.48,469.91 151.48,469.73 151.43,469.57L146.7,455.05C146.66,454.88 146.66,454.7 146.72,454.54C146.77,454.38 146.87,454.23 147.01,454.12C147.14,454.02 147.3,453.95 147.47,453.94C147.64,453.92 147.81,453.96 147.96,454.04C153.28,457.18 157.59,461.79 160.38,467.34C160.45,467.48 160.55,467.59 160.68,467.68C160.81,467.76 160.95,467.81 161.11,467.81C161.26,467.82 161.41,467.79 161.54,467.71C161.68,467.64 161.79,467.53 161.87,467.4C165.08,462.22 169.6,458.84 175.29,456.25C175.45,456.17 175.62,456.15 175.8,456.18C175.97,456.21 176.13,456.29 176.25,456.41C176.38,456.54 176.47,456.69 176.5,456.87C176.54,457.04 176.52,457.22 176.46,457.38L163.6,476.71L150.18,484.26L131.52,468.86C131.38,468.75 131.28,468.61 131.22,468.44C131.17,468.27 131.16,468.09 131.21,467.92C131.25,467.74 131.35,467.59 131.48,467.47C131.61,467.36 131.78,467.28 131.95,467.26Z"" errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -4132,7 +3945,7 @@ errorLine1=" android:pathData="M217.11,368.31C211.83,368.31 206.6,369.4 201.76,371.53C196.91,373.66 192.54,376.77 188.92,380.67L185.42,384.07C182.32,387.42 178.65,390.19 174.6,392.25C169.29,394.88 163.45,396.22 157.55,396.15H152.06C139.37,396.15 127.39,400.67 119.49,410.59L99.73,435.46C96.36,439.68 92.17,443.14 87.41,445.63C82.65,448.13 77.43,449.59 72.09,449.92L47.31,451.48C40.63,451.91 34.18,454.08 28.58,457.79C22.99,461.49 18.43,466.61 15.37,472.63L-8.35,519.32H25.56L45.22,480.68C48.28,474.66 52.83,469.55 58.43,465.84C64.02,462.13 70.47,459.96 77.15,459.54L101.9,457.98C107.25,457.64 112.47,456.18 117.23,453.69C121.99,451.2 126.18,447.73 129.55,443.51L149.31,418.64C153.34,413.59 158.54,409.63 164.46,407.13C170.38,404.62 176.82,403.65 183.2,404.3L187.94,404.77C192.39,405.22 196.88,404.67 201.1,403.15C205.31,401.63 209.14,399.17 212.3,395.97L228.29,380.31C232.04,376.5 236.5,373.48 241.41,371.42C246.32,369.36 251.58,368.3 256.89,368.31H217.11Z"" errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -4143,44 +3956,11 @@ errorLine1=" android:pathData="M195.93,124.66L198.41,120.53C199.01,119.53 198.22,118.22 197.02,118.32L185.2,119.43C183.01,119.63 180.72,119.63 178.54,119.32L175.55,119.02C170.19,118.42 164.82,120.13 160.74,123.65L157.46,126.47C156.47,127.28 156.37,128.79 157.07,129.8L157.56,130.4C157.86,130.8 157.96,131.41 157.66,131.91C156.27,134.63 155.58,137.75 155.77,141.07L155.87,142.48C155.97,144.8 156.57,146.91 157.46,148.82C159.45,153.15 160.65,157.78 160.94,162.52L171.78,161.81C175.46,161.61 178.83,159.9 181.32,157.08C182.31,155.77 183.31,154.56 184.2,153.25C184.9,152.35 184.9,150.84 184,150.03C183.51,149.53 183.11,148.93 182.81,148.22C182.51,147.41 182.51,146.61 182.41,146.61C182.31,144.49 183.31,142.58 185,141.47C186.19,140.77 187.68,141.57 187.78,142.99L187.88,144.39C187.88,144.9 188.38,145.3 188.87,145.3C190.36,145.2 191.56,143.89 191.46,142.38L191.26,139.56C191.16,137.25 192.85,135.23 195.13,135.13L198.12,134.93C199.81,134.83 201.3,133.42 201.4,131.71L201.5,130.3C201.6,128.99 200.7,127.78 199.51,127.48L196.73,126.78C195.83,126.57 195.43,125.47 195.93,124.66Z"" errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> - - - - - - - - - - - - + + + + + message="Possible overdraw: Root element paints background `@color/cornflowerDark` with a theme that also paints a background (inferred theme is `@style/Theme_DuckDuckGo_Survey`)" + errorLine1=" android:background="@color/cornflowerDark"" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> + message="Possible overdraw: Root element paints background `@color/cornflowerDark` with a theme that also paints a background (inferred theme is `@style/Theme_DuckDuckGo_Survey`)" + errorLine1=" android:background="@color/cornflowerDark"" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -4357,17 +4148,6 @@ column="5"/> - - - - - - - - - - - - @@ -4557,34 +4315,12 @@ - - - - - - - - @@ -4610,28 +4346,6 @@ column="1"/> - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + - - - - - - - - @@ -5049,17 +4697,6 @@ column="1"/> - - - - - - - - - - - - - - - - @@ -5778,7 +5382,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -5789,7 +5393,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -5800,7 +5404,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -5811,84 +5415,51 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~"> - - - - - - - - - - - - + message="The resource `R.string.settingsAutocompleteEnabled` appears to be unused" + errorLine1=" <string name="settingsAutocompleteEnabled">Autocomplete Suggestions</string>" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> + message="The resource `R.string.tabsMenuItem` appears to be unused" + errorLine1=" <string name="tabsMenuItem">Tabs</string>" + errorLine2=" ~~~~~~~~~~~~~~~~~~~"> + message="The resource `R.string.no_suggestions` appears to be unused" + errorLine1=" <string name="no_suggestions">No Suggestions</string>" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~"> @@ -5899,7 +5470,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -5910,7 +5481,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -5921,7 +5492,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -5932,7 +5503,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -5943,18 +5514,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> - - - - @@ -5965,7 +5525,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -5976,7 +5536,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -5987,7 +5547,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -5998,7 +5558,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -6009,7 +5569,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -6020,7 +5580,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -6031,7 +5591,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -6042,7 +5602,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -6053,7 +5613,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -6064,7 +5624,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -6075,7 +5635,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~"> @@ -6086,7 +5646,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~"> @@ -6097,7 +5657,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~"> @@ -6108,7 +5668,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -6119,139 +5679,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -6262,7 +5690,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -6273,7 +5701,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -6284,7 +5712,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -6295,7 +5723,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -6306,7 +5734,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -6317,7 +5745,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -6328,7 +5756,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -6339,7 +5767,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -6350,7 +5778,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -6361,7 +5789,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -6372,7 +5800,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -6383,7 +5811,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -6394,7 +5822,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -6405,7 +5833,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -6416,7 +5844,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -6427,7 +5855,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -6438,7 +5866,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -6449,7 +5877,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -6460,7 +5888,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -6471,7 +5899,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -6482,7 +5910,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -6493,7 +5921,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -6504,7 +5932,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -6515,7 +5943,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -6526,7 +5954,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -6537,106 +5965,95 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> - - - - + message="The resource `R.string.onboardingSearchQueryOption1English` appears to be unused" + errorLine1=" <string name="onboardingSearchQueryOption1English">how to say duck in spanish</string>" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> + message="The resource `R.string.highlightsPreOnboardingDaxDialog1Title` appears to be unused" + errorLine1=" <string name="highlightsPreOnboardingDaxDialog1Title"><![CDATA[Hi there.<br/><br/>Ready for a faster browser that keeps you protected?]]></string>" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> + message="The resource `R.string.highlightsPreOnboardingDaxDialog2Title` appears to be unused" + errorLine1=" <string name="highlightsPreOnboardingDaxDialog2Title">Protections activated!</string>" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> + message="The resource `R.string.highlightsPreOnboardingComparisonChartItem2` appears to be unused" + errorLine1=" <string name="highlightsPreOnboardingComparisonChartItem2">Block 3rd party trackers</string>" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> + message="The resource `R.string.highlightsPreOnboardingComparisonChartItem3` appears to be unused" + errorLine1=" <string name="highlightsPreOnboardingComparisonChartItem3">Block cookie requests &amp; popups</string>" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> + message="The resource `R.string.highlightsPreOnboardingComparisonChartItem4` appears to be unused" + errorLine1=" <string name="highlightsPreOnboardingComparisonChartItem4">Block targeted ads</string>" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -6647,7 +6064,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -6658,7 +6075,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -6669,7 +6086,128 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -6695,17 +6233,6 @@ column="1"/> - - - - @@ -6746,51 +6273,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~"> - - - - - - - - - - - - - - - - @@ -6801,7 +6284,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -6812,7 +6295,7 @@ errorLine2=" ~~~~~~~~~~~"> @@ -6823,7 +6306,7 @@ errorLine2=" ~~~~~~~~~~~"> @@ -6834,7 +6317,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~"> @@ -6845,7 +6328,7 @@ errorLine2=" ~~~~~~"> @@ -6856,7 +6339,7 @@ errorLine2=" ~~~~~~~~~~~~~"> @@ -6867,7 +6350,7 @@ errorLine2=" ~~~~~~~~~~~~~~"> @@ -6878,7 +6361,7 @@ errorLine2=" ~~~~~~~~~~~~"> @@ -6889,7 +6372,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~"> @@ -6900,7 +6383,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~"> @@ -6911,7 +6394,7 @@ errorLine2=" ~~~~~~~~~~~~"> @@ -6922,7 +6405,7 @@ errorLine2=" ~~~~~~~~~~"> @@ -6933,7 +6416,7 @@ errorLine2=" ~~~~~~~~~~"> @@ -6944,7 +6427,7 @@ errorLine2=" ~~~~~~~~~~~~~"> @@ -6955,7 +6438,7 @@ errorLine2=" ~~~~~~~~~~~"> @@ -6966,7 +6449,7 @@ errorLine2=" ~~~~~~~~~~~"> @@ -6977,7 +6460,7 @@ errorLine2=" ~~~~~~~~~~"> @@ -6988,7 +6471,7 @@ errorLine2=" ~~~~~~~~~"> @@ -6999,7 +6482,7 @@ errorLine2=" ~~~~~~~~"> @@ -7010,7 +6493,7 @@ errorLine2=" ~~~~~~~~~~"> @@ -7021,7 +6504,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -7032,7 +6515,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -7043,7 +6526,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~"> @@ -7054,7 +6537,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -7065,7 +6548,7 @@ errorLine2=" ~~~~~~~~~~"> @@ -7076,7 +6559,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -7087,7 +6570,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -7098,7 +6581,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -7109,7 +6592,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -7120,7 +6603,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~"> @@ -7131,7 +6614,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -7142,7 +6625,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~"> @@ -7153,7 +6636,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~"> @@ -7164,7 +6647,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -7175,7 +6658,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~"> @@ -7186,7 +6669,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -7197,7 +6680,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~"> @@ -7217,30 +6700,30 @@ + message="Found bitmap drawable `res/drawable/onboarding_experiment_background_large_dark.png` in densityless folder"> + file="src/main/res/drawable/onboarding_experiment_background_large_dark.png"/> + message="Found bitmap drawable `res/drawable/onboarding_experiment_background_large_light.png` in densityless folder"> + file="src/main/res/drawable/onboarding_experiment_background_large_light.png"/> + message="Found bitmap drawable `res/drawable/onboarding_experiment_background_small_dark.png` in densityless folder"> + file="src/main/res/drawable/onboarding_experiment_background_small_dark.png"/> + message="Found bitmap drawable `res/drawable/onboarding_experiment_background_small_light.png` in densityless folder"> + file="src/main/res/drawable/onboarding_experiment_background_small_light.png"/> @@ -7298,6 +6781,28 @@ column="17"/> + + + + + + + + @@ -7316,7 +6821,7 @@ errorLine2=" ^"> @@ -7371,18 +6876,7 @@ errorLine2=" ~~~~~~~~~"> - - - - @@ -7393,18 +6887,7 @@ errorLine2=" ~~~~~~~~~"> - - - - @@ -7414,44 +6897,11 @@ errorLine1=" <ImageView" errorLine2=" ~~~~~~~~~"> - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -7558,7 +6964,7 @@ errorLine2=" ~~~~~~~~~"> @@ -7569,7 +6975,7 @@ errorLine2=" ~~~~~~~~~"> @@ -7580,7 +6986,7 @@ errorLine2=" ~~~~~~~~~"> @@ -7591,7 +6997,7 @@ errorLine2=" ~~~~~~~~~"> @@ -7602,7 +7008,7 @@ errorLine2=" ~~~~~~~~~"> @@ -7613,7 +7019,7 @@ errorLine2=" ~~~~~~~~~"> @@ -7624,7 +7030,7 @@ errorLine2=" ~~~~~~~~~"> @@ -7633,21 +7039,10 @@ message="Missing `contentDescription` attribute on image" errorLine1=" <ImageView" errorLine2=" ~~~~~~~~~"> - - - - + line="27" + column="6"/> @@ -7859,6 +7254,28 @@ column="6"/> + + + + + + + + @@ -7877,7 +7294,7 @@ errorLine2=" ~~"> @@ -7888,21 +7305,10 @@ errorLine2=" ~~"> - - - - @@ -7921,7 +7327,7 @@ errorLine2=" ~~"> @@ -7932,21 +7338,10 @@ errorLine2=" ~~"> - - - - + id="RtlSymmetry" + message="When you define `paddingEnd` you should probably also define `paddingStart` for right-to-left symmetry" + errorLine1=" android:paddingEnd="8dp"" + errorLine2=" ~~~~~~~~~~~~~~~~~~"> + file="src/main/res/layout/include_omnibar_toolbar_mockup.xml" + line="56" + column="13"/> @@ -7986,8 +7381,8 @@ errorLine1=" android:paddingStart="5dp"" errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -7997,8 +7392,8 @@ errorLine1=" android:paddingStart="@dimen/keyline_4"" errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -8008,8 +7403,8 @@ errorLine1=" android:paddingStart="5dp"" errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -8027,7 +7422,7 @@ errorLine2=" ~~~~"> @@ -8045,7 +7440,7 @@ @@ -8262,4 +7657,15 @@ column="9"/> + + + + diff --git a/autoconsent/autoconsent-impl/lint-baseline.xml b/autoconsent/autoconsent-impl/lint-baseline.xml index 4e17fec893a8..4617c7f7d785 100644 --- a/autoconsent/autoconsent-impl/lint-baseline.xml +++ b/autoconsent/autoconsent-impl/lint-baseline.xml @@ -8,30 +8,8 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> - - - - - - - - diff --git a/autofill/autofill-impl/lint-baseline.xml b/autofill/autofill-impl/lint-baseline.xml index 85fddc82a8af..31a2c68a6859 100644 --- a/autofill/autofill-impl/lint-baseline.xml +++ b/autofill/autofill-impl/lint-baseline.xml @@ -12,341 +12,6 @@ column="32"/> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -519,7 +184,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~"> @@ -530,7 +195,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~"> @@ -662,7 +327,7 @@ errorLine2=" ^"> @@ -673,7 +338,7 @@ errorLine2=" ^"> @@ -684,7 +349,7 @@ errorLine2=" ^"> @@ -695,7 +360,7 @@ errorLine2=" ^"> @@ -706,7 +371,7 @@ errorLine2=" ^"> @@ -717,7 +382,7 @@ errorLine2=" ^"> @@ -728,7 +393,7 @@ errorLine2=" ^"> @@ -739,7 +404,7 @@ errorLine2=" ^"> @@ -750,7 +415,7 @@ errorLine2=" ^"> @@ -761,7 +426,7 @@ errorLine2=" ^"> @@ -772,7 +437,7 @@ errorLine2=" ^"> @@ -783,7 +448,7 @@ errorLine2=" ^"> @@ -794,7 +459,7 @@ errorLine2=" ^"> @@ -805,7 +470,7 @@ errorLine2=" ^"> @@ -816,7 +481,7 @@ errorLine2=" ^"> @@ -827,7 +492,7 @@ errorLine2=" ^"> @@ -838,7 +503,7 @@ errorLine2=" ^"> @@ -849,7 +514,7 @@ errorLine2=" ^"> @@ -860,7 +525,7 @@ errorLine2=" ^"> @@ -871,7 +536,7 @@ errorLine2=" ^"> @@ -882,7 +547,7 @@ errorLine2=" ^"> @@ -893,7 +558,7 @@ errorLine2=" ^"> @@ -904,7 +569,7 @@ errorLine2=" ^"> @@ -915,7 +580,7 @@ errorLine2=" ^"> @@ -926,7 +591,7 @@ errorLine2=" ^"> @@ -1993,7 +1658,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2004,7 +1669,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2015,7 +1680,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2026,7 +1691,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2037,7 +1702,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2048,7 +1713,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2059,7 +1724,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2070,7 +1735,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2081,7 +1746,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2092,7 +1757,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2103,7 +1768,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2114,7 +1779,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2125,7 +1790,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2136,7 +1801,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2147,7 +1812,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2158,7 +1823,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2169,7 +1834,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2180,7 +1845,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2191,7 +1856,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2202,7 +1867,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2213,7 +1878,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2224,7 +1889,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2235,7 +1900,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -2246,32 +1911,10 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> - - - - - - - - @@ -2290,7 +1933,7 @@ errorLine2=" ^"> @@ -2301,7 +1944,7 @@ errorLine2=" ^"> @@ -2312,7 +1955,7 @@ errorLine2=" ^"> @@ -2323,7 +1966,7 @@ errorLine2=" ^"> @@ -2334,21 +1977,10 @@ errorLine2=" ^"> - - - - - - - - - - - - - - - - - - - - @@ -41,7 +30,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -52,7 +41,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> diff --git a/autofill/autofill-store/lint-baseline.xml b/autofill/autofill-store/lint-baseline.xml index 702d11545747..77fc78d87c97 100644 --- a/autofill/autofill-store/lint-baseline.xml +++ b/autofill/autofill-store/lint-baseline.xml @@ -8,7 +8,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> diff --git a/common/common-ui/lint-baseline.xml b/common/common-ui/lint-baseline.xml index 8e81edc5d04f..2740bfa296d0 100644 --- a/common/common-ui/lint-baseline.xml +++ b/common/common-ui/lint-baseline.xml @@ -34,39 +34,6 @@ column="13"/> - - - - - - - - - - - - @@ -316,7 +283,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -327,7 +294,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -338,7 +305,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -628,28 +595,6 @@ column="25"/> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -1537,7 +1350,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1548,7 +1361,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1559,7 +1372,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1570,7 +1383,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1581,7 +1394,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1592,7 +1405,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1603,7 +1416,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1614,7 +1427,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1625,7 +1438,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1636,7 +1449,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1647,7 +1460,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1658,7 +1471,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1669,7 +1482,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1680,7 +1493,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1691,7 +1504,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1702,7 +1515,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1713,7 +1526,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1724,7 +1537,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1735,7 +1548,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1746,7 +1559,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1757,7 +1570,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1768,7 +1581,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1779,7 +1592,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1790,7 +1603,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1801,7 +1614,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1812,85 +1625,107 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> + message="Hardcoded string "Positive", should use `@string` resource" + errorLine1=" android:text="Positive"" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~"> + file="src/main/res/layout/dialog_single_choice_alert.xml" + line="72" + column="9"/> + message="Hardcoded string "Positive", should use `@string` resource" + errorLine1=" android:text="Positive"" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~"> + file="src/main/res/layout/dialog_single_choice_alert.xml" + line="80" + column="9"/> + message="Hardcoded string "Cancel", should use `@string` resource" + errorLine1=" android:text="Cancel"" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~"> + file="src/main/res/layout/dialog_single_choice_alert.xml" + line="89" + column="9"/> + message="Hardcoded string "Cancel", should use `@string` resource" + errorLine1=" android:text="Cancel"" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~"> + file="src/main/res/layout/dialog_single_choice_alert.xml" + line="98" + column="9"/> + message="Hardcoded string "Positive", should use `@string` resource" + errorLine1=" android:text="Positive"" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~"> + file="src/main/res/layout/dialog_text_alert.xml" + line="62" + column="9"/> + message="Hardcoded string "Positive", should use `@string` resource" + errorLine1=" android:text="Positive"" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~"> + file="src/main/res/layout/dialog_text_alert.xml" + line="72" + column="9"/> + + + + + + + + - - - - - - - - + errorLine1=" android:text="Text Alert Dialog With One Button"" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> + line="70" + column="17"/> @@ -1988,7 +1801,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1999,7 +1812,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -2010,7 +1823,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -2021,7 +1834,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -2032,7 +1845,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -2043,7 +1856,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -2054,7 +1867,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -2065,7 +1878,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -2076,7 +1889,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -2087,7 +1900,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -2098,7 +1911,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -2109,7 +1922,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -2120,7 +1933,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -2131,7 +1944,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -2142,7 +1955,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -2655,7 +2468,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -2666,7 +2479,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -2677,7 +2490,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> diff --git a/duckchat/duckchat-impl/lint-baseline.xml b/duckchat/duckchat-impl/lint-baseline.xml index bcf3d3297fa2..41c26da9c182 100644 --- a/duckchat/duckchat-impl/lint-baseline.xml +++ b/duckchat/duckchat-impl/lint-baseline.xml @@ -8,18 +8,18 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> + message="Very long vector path (1422 characters), which is bad for performance. Considering reducing precision, removing minor details or rasterizing vector." + errorLine1=" android:pathData="m105.63,38.2 l1.54,-0.4a0.88,0.88 0,0 0,0.63 -0.63l0.4,-1.54A0.84,0.84 0,0 1,109 35c0.4,0 0.74,0.29 0.8,0.63l0.4,1.54a0.88,0.88 0,0 0,0.63 0.63l1.54,0.4c0.4,0.11 0.63,0.46 0.63,0.8 0,0.4 -0.29,0.74 -0.63,0.8l-1.54,0.4a0.88,0.88 0,0 0,-0.63 0.63l-0.4,1.54a0.84,0.84 0,0 1,-0.8 0.63c-0.4,0 -0.74,-0.29 -0.8,-0.63l-0.4,-1.54a0.88,0.88 0,0 0,-0.63 -0.63l-1.54,-0.4A0.84,0.84 0,0 1,105 39c0,-0.4 0.29,-0.74 0.63,-0.8m-89.69,-6.4 l2.31,-0.6c0.43,-0.09 0.86,-0.51 0.94,-0.94l0.6,-2.31c0.17,-0.6 0.69,-0.94 1.2,-0.94 0.6,0 1.11,0.43 1.2,0.94l0.6,2.31c0.09,0.43 0.51,0.86 0.94,0.94l2.31,0.6c0.6,0.17 0.94,0.69 0.94,1.2 0,0.6 -0.43,1.11 -0.94,1.2l-2.31,0.6c-0.43,0.09 -0.86,0.51 -0.94,0.94l-0.6,2.31c-0.17,0.6 -0.69,0.94 -1.2,0.94 -0.6,0 -1.11,-0.43 -1.2,-0.94l-0.6,-2.31c-0.09,-0.43 -0.51,-0.86 -0.94,-0.94l-2.31,-0.6c-0.6,-0.17 -0.94,-0.69 -0.94,-1.2 0,-0.6 0.43,-1.11 0.94,-1.2M0.63,53.2l1.54,-0.4a0.88,0.88 0,0 0,0.63 -0.63l0.4,-1.54A0.84,0.84 0,0 1,4 50c0.4,0 0.74,0.29 0.8,0.63l0.4,1.54a0.88,0.88 0,0 0,0.63 0.63l1.54,0.4c0.4,0.11 0.63,0.46 0.63,0.8 0,0.4 -0.29,0.74 -0.63,0.8l-1.54,0.4a0.88,0.88 0,0 0,-0.63 0.63l-0.4,1.54A0.84,0.84 0,0 1,4 58c-0.4,0 -0.74,-0.29 -0.8,-0.63l-0.4,-1.54a0.88,0.88 0,0 0,-0.63 -0.63L0.63,54.8A0.84,0.84 0,0 1,0 54c0,-0.4 0.29,-0.74 0.63,-0.8M126.5,52c-0.82,0 -1.5,-0.68 -1.5,-1.5s0.68,-1.5 1.5,-1.5 1.5,0.68 1.5,1.5 -0.68,1.5 -1.5,1.5M23,70c-1.1,0 -2,-0.9 -2,-2s0.9,-2 2,-2 2,0.9 2,2 -0.9,2 -2,2"" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> diff --git a/duckplayer/duckplayer-impl/lint-baseline.xml b/duckplayer/duckplayer-impl/lint-baseline.xml index ae6774112c99..c1f778a75e90 100644 --- a/duckplayer/duckplayer-impl/lint-baseline.xml +++ b/duckplayer/duckplayer-impl/lint-baseline.xml @@ -8,7 +8,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -19,7 +19,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> diff --git a/experiments/experiments-impl/lint-baseline.xml b/experiments/experiments-impl/lint-baseline.xml index 7a009be0703c..f9c8c4056c7c 100644 --- a/experiments/experiments-impl/lint-baseline.xml +++ b/experiments/experiments-impl/lint-baseline.xml @@ -23,4 +23,81 @@ column="69"/> + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/feature-toggles/feature-toggles-impl/lint-baseline.xml b/feature-toggles/feature-toggles-impl/lint-baseline.xml index 1ba99f818b44..e7d6f9d09fbd 100644 --- a/feature-toggles/feature-toggles-impl/lint-baseline.xml +++ b/feature-toggles/feature-toggles-impl/lint-baseline.xml @@ -437,21 +437,32 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> + + + + @@ -470,7 +481,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -481,7 +492,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -492,7 +503,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -503,7 +514,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -514,7 +525,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -525,7 +536,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -536,7 +547,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -547,7 +558,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -558,7 +569,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -569,7 +580,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~"> @@ -888,7 +899,7 @@ errorLine2=" ^"> @@ -899,7 +910,7 @@ errorLine2=" ^"> @@ -910,7 +921,7 @@ errorLine2=" ^"> @@ -921,7 +932,7 @@ errorLine2=" ^"> @@ -932,7 +943,7 @@ errorLine2=" ^"> @@ -943,7 +954,7 @@ errorLine2=" ^"> @@ -954,7 +965,7 @@ errorLine2=" ^"> @@ -965,7 +976,7 @@ errorLine2=" ^"> @@ -976,7 +987,7 @@ errorLine2=" ^"> @@ -998,7 +1009,7 @@ errorLine2=" ^"> @@ -1009,7 +1020,7 @@ errorLine2=" ^"> @@ -1020,7 +1031,7 @@ errorLine2=" ^"> @@ -1031,7 +1042,7 @@ errorLine2=" ^"> @@ -1042,7 +1053,7 @@ errorLine2=" ^"> @@ -1053,7 +1064,7 @@ errorLine2=" ^"> @@ -1064,7 +1075,7 @@ errorLine2=" ^"> @@ -1075,7 +1086,7 @@ errorLine2=" ^"> @@ -1086,7 +1097,7 @@ errorLine2=" ^"> @@ -1097,7 +1108,7 @@ errorLine2=" ^"> diff --git a/feature-toggles/feature-toggles-internal/lint-baseline.xml b/feature-toggles/feature-toggles-internal/lint-baseline.xml index b40caf5e9b66..eb15241a57ca 100644 --- a/feature-toggles/feature-toggles-internal/lint-baseline.xml +++ b/feature-toggles/feature-toggles-internal/lint-baseline.xml @@ -8,7 +8,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -19,7 +19,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -30,7 +30,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -41,7 +41,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~"> diff --git a/installation/installation-impl/lint-baseline.xml b/installation/installation-impl/lint-baseline.xml index c584e1295716..68008f8a1c38 100644 --- a/installation/installation-impl/lint-baseline.xml +++ b/installation/installation-impl/lint-baseline.xml @@ -1,4 +1,26 @@ + + + + + + + + diff --git a/network-protection/network-protection-impl/lint-baseline.xml b/network-protection/network-protection-impl/lint-baseline.xml index 1f5f37d67214..386f5f63dac9 100644 --- a/network-protection/network-protection-impl/lint-baseline.xml +++ b/network-protection/network-protection-impl/lint-baseline.xml @@ -30,7 +30,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~"> @@ -70,1903 +70,187 @@ - - - - + errorLine1=" netPSettingsLocalConfig.vpnNotificationAlerts().setRawStoredState(State(enable = true))" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> + errorLine1=" netPSettingsLocalConfig.vpnNotificationAlerts().setRawStoredState(State(enable = true))" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> + errorLine1=" netPSettingsLocalConfig.vpnNotificationAlerts().setRawStoredState(State(enable = true))" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> + errorLine1=" netPSettingsLocalConfig.vpnExcludeLocalNetworkRoutes().setRawStoredState(Toggle.State(enable = enabled))" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + errorLine1=" netPSettingsLocalConfig.vpnNotificationAlerts().setRawStoredState(Toggle.State(enable = checked))" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> + file="src/main/java/com/duckduckgo/networkprotection/impl/settings/NetPVpnSettingsViewModel.kt" + line="149" + column="9"/> + id="DenyListedApi" + message="If you find yourself using this API in production, you're doing something wrong!!" + errorLine1=" netPSettingsLocalConfig.vpnExcludeLocalNetworkRoutes().setRawStoredState(Toggle.State(remoteEnableState = true))" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> + file="src/test/java/com/duckduckgo/networkprotection/impl/settings/NetPVpnSettingsViewModelTest.kt" + line="94" + column="13"/> + id="DenyListedApi" + message="If you find yourself using this API in production, you're doing something wrong!!" + errorLine1=" netPSettingsLocalConfig.vpnNotificationAlerts().setRawStoredState(Toggle.State(remoteEnableState = false))" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> + file="src/test/java/com/duckduckgo/networkprotection/impl/settings/NetPVpnSettingsViewModelTest.kt" + line="95" + column="13"/> + id="DenyListedApi" + message="If you find yourself using this API in production, you're doing something wrong!!" + errorLine1=" localConfig.permanentRemoveExcludeAppPrompt().setRawStoredState(State(enable = true))" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> + file="src/main/java/com/duckduckgo/networkprotection/impl/management/NetworkProtectionManagementViewModel.kt" + line="413" + column="9"/> + id="DenyListedApi" + message="If you find yourself using this API in production, you're doing something wrong!!" + errorLine1=" when (category) {" + errorLine2=" ^"> + file="src/main/java/com/duckduckgo/networkprotection/impl/exclusion/systemapps/SystemAppsExclusionRepository.kt" + line="81" + column="9"/> + id="DenyListedApi" + message="If you find yourself using this API in production, you're doing something wrong!!" + errorLine1=" when (category) {" + errorLine2=" ^"> + file="src/main/java/com/duckduckgo/networkprotection/impl/exclusion/systemapps/SystemAppsExclusionRepository.kt" + line="90" + column="9"/> + id="DenyListedApi" + message="If you find yourself using this API in production, you're doing something wrong!!" + errorLine1=" netPSettingsLocalConfig.vpnPauseDuringCalls().setRawStoredState(Toggle.State(enable = true))" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> + file="src/main/java/com/duckduckgo/networkprotection/impl/snooze/VpnDisableOnCall.kt" + line="51" + column="13"/> + id="DenyListedApi" + message="If you find yourself using this API in production, you're doing something wrong!!" + errorLine1=" netPSettingsLocalConfig.vpnPauseDuringCalls().setRawStoredState(Toggle.State(enable = false))" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> + file="src/main/java/com/duckduckgo/networkprotection/impl/snooze/VpnDisableOnCall.kt" + line="59" + column="13"/> + id="DenyListedApi" + message="No one remembers what these constants map to. Use the API level integer value directly since it's self-defining." + errorLine1=" if (appBuildConfig.sdkInt >= Build.VERSION_CODES.UPSIDE_DOWN_CAKE) {" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> + file="src/main/java/com/duckduckgo/networkprotection/impl/quickaccess/VpnTileService.kt" + line="93" + column="54"/> + id="DenyListedApi" + message="If you find yourself using this API in production, you're doing something wrong!!" + errorLine1=" netPSettingsLocalConfig.blockMalware().setRawStoredState(Toggle.State(enable = true))" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> + file="src/test/java/com/duckduckgo/networkprotection/impl/WgVpnNetworkStackTest.kt" + line="152" + column="9"/> + id="QueryPermissionsNeeded" + message="As of Android 11, this method no longer returns information about all apps; see https://g.co/dev/packagevisibility for details" + errorLine1=" installedApps = packageManager.getInstalledApplications(PackageManager.GET_META_DATA)" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~"> + file="src/main/java/com/duckduckgo/networkprotection/impl/exclusion/ui/NetpAppExclusionListViewModel.kt" + line="174" + column="40"/> + id="QueryPermissionsNeeded" + message="As of Android 11, this method no longer returns information about all apps; see https://g.co/dev/packagevisibility for details" + errorLine1=" return packageManager.getInstalledApplications(PackageManager.GET_META_DATA)" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~"> + file="src/main/java/com/duckduckgo/networkprotection/impl/exclusion/systemapps/SystemAppsExclusionRepository.kt" + line="185" + column="31"/> + id="PluralsCandidate" + message="Formatting %d followed by words ("cities"): This should probably be a plural rather than a string" + errorLine1=" <string name="netpGeoswitchingHeaderCountrySubtitle" instruction="Placeholder is a number greater than 1">%1$d cities</string>" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -2047,28 +331,6 @@ column="25"/> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -30,7 +30,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> diff --git a/privacy-dashboard/privacy-dashboard-impl/lint-baseline.xml b/privacy-dashboard/privacy-dashboard-impl/lint-baseline.xml index 8aae8bbf8e92..648af03c72d5 100644 --- a/privacy-dashboard/privacy-dashboard-impl/lint-baseline.xml +++ b/privacy-dashboard/privacy-dashboard-impl/lint-baseline.xml @@ -19,10 +19,65 @@ errorLine2=" ~~~~~~~~~~~~~~~"> + + + + + + + + + + + + + + + + + + + + @@ -173,7 +173,7 @@ errorLine2=" ^"> @@ -184,7 +184,7 @@ errorLine2=" ^"> @@ -195,7 +195,7 @@ errorLine2=" ^"> @@ -206,7 +206,7 @@ errorLine2=" ^"> @@ -217,7 +217,7 @@ errorLine2=" ^"> @@ -228,7 +228,7 @@ errorLine2=" ^"> @@ -239,7 +239,7 @@ errorLine2=" ^"> @@ -250,7 +250,7 @@ errorLine2=" ^"> @@ -261,7 +261,7 @@ errorLine2=" ^"> @@ -272,7 +272,7 @@ errorLine2=" ^"> @@ -283,7 +283,7 @@ errorLine2=" ^"> @@ -316,7 +316,7 @@ errorLine2=" ^"> @@ -327,7 +327,7 @@ errorLine2=" ^"> @@ -338,7 +338,7 @@ errorLine2=" ^"> @@ -375,17 +375,6 @@ column="5"/> - - - - - - - - - - - - - - - - diff --git a/statistics/statistics-impl/lint-baseline.xml b/statistics/statistics-impl/lint-baseline.xml index ab9a4be8367a..6612c18157b4 100644 --- a/statistics/statistics-impl/lint-baseline.xml +++ b/statistics/statistics-impl/lint-baseline.xml @@ -30,7 +30,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> diff --git a/subscriptions/subscriptions-impl/lint-baseline.xml b/subscriptions/subscriptions-impl/lint-baseline.xml index bbcb3ebb0308..3cd00fdc4d34 100644 --- a/subscriptions/subscriptions-impl/lint-baseline.xml +++ b/subscriptions/subscriptions-impl/lint-baseline.xml @@ -81,2223 +81,199 @@ + errorLine1=" privacyProFeature.serpPromoCookie().setRawStoredState(Toggle.State(enable = true))" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> + errorLine1=" privacyProFeature.serpPromoCookie().setRawStoredState(Toggle.State(enable = false))" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> + errorLine1=" privacyProFeature.serpPromoCookie().setRawStoredState(Toggle.State(enable = true))" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + message="If you find yourself using this API in production, you're doing something wrong!!" + errorLine1=" privacyProFeature.serpPromoCookie().setRawStoredState(Toggle.State(enable = false))" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> + file="src/test/java/com/duckduckgo/subscriptions/impl/serp_promo/SerpPromoTest.kt" + line="57" + column="9"/> + id="DenyListedApi" + message="If you find yourself using this API in production, you're doing something wrong!!" + errorLine1=" privacyProFeature.serpPromoCookie().setRawStoredState(Toggle.State(enable = true))" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> + file="src/test/java/com/duckduckgo/subscriptions/impl/serp_promo/SerpPromoTest.kt" + line="66" + column="9"/> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + id="DenyListedApi" + message="If you find yourself using this API in production, you're doing something wrong!!" + errorLine1=" privacyProFeature.serpPromoCookie().setRawStoredState(Toggle.State(enable = false))" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> + file="src/test/java/com/duckduckgo/subscriptions/impl/serp_promo/SerpPromoTest.kt" + line="75" + column="9"/> + id="DenyListedApi" + message="If you find yourself using this API in production, you're doing something wrong!!" + errorLine1=" privacyProFeature.serpPromoCookie().setRawStoredState(Toggle.State(enable = true))" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> + file="src/test/java/com/duckduckgo/subscriptions/impl/serp_promo/SerpPromoTest.kt" + line="84" + column="9"/> + id="DenyListedApi" + message="If you find yourself using this API in production, you're doing something wrong!!" + errorLine1=" privacyProFeature.serpPromoCookie().setRawStoredState(Toggle.State(enable = false))" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> + file="src/test/java/com/duckduckgo/subscriptions/impl/serp_promo/SerpPromoTest.kt" + line="93" + column="9"/> + id="DenyListedApi" + message="If you find yourself using this API in production, you're doing something wrong!!" + errorLine1=" privacyProFeature.allowPurchase().setRawStoredState(Toggle.State(enable = true))" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> + file="src/test/java/com/duckduckgo/subscriptions/impl/ui/SubscriptionWebViewViewModelTest.kt" + line="199" + column="9"/> + id="DenyListedApi" + message="If you find yourself using this API in production, you're doing something wrong!!" + errorLine1=" privacyProFeature.allowPurchase().setRawStoredState(Toggle.State(enable = true))" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> + file="src/test/java/com/duckduckgo/subscriptions/impl/ui/SubscriptionWebViewViewModelTest.kt" + line="227" + column="9"/> + id="DenyListedApi" + message="If you find yourself using this API in production, you're doing something wrong!!" + errorLine1=" privacyProFeature.allowPurchase().setRawStoredState(Toggle.State(enable = false))" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> + file="src/test/java/com/duckduckgo/subscriptions/impl/ui/SubscriptionWebViewViewModelTest.kt" + line="248" + column="9"/> + id="DenyListedApi" + message="No one remembers what these constants map to. Use the API level integer value directly since it's self-defining." + errorLine1=" return appBuildConfig.sdkInt >= Build.VERSION_CODES.R" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~"> + file="src/main/java/com/duckduckgo/subscriptions/impl/ui/SubscriptionsWebViewActivity.kt" + line="379" + column="41"/> + id="VectorRaster" + message="Limit vector icons sizes to 200×200 to keep icon drawing fast; see https://developer.android.com/studio/write/vector-asset-studio#when for more" + errorLine1=" android:width="320dp"" + errorLine2=" ~~~~~"> + file="src/main/res/drawable/ic_information_remover.xml" + line="19" + column="20"/> + id="DiscouragedApi" + message="Should not restrict activity to fixed orientation. This may not be suitable for different form factors, causing the app to be letterboxed." + errorLine1=" android:screenOrientation="portrait" />" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> + file="src/main/AndroidManifest.xml" + line="25" + column="17"/> + id="DiscouragedApi" + message="Should not restrict activity to fixed orientation. This may not be suitable for different form factors, causing the app to be letterboxed." + errorLine1=" android:screenOrientation="portrait" />" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> + file="src/main/AndroidManifest.xml" + line="31" + column="17"/> + id="DiscouragedApi" + message="Should not restrict activity to fixed orientation. This may not be suitable for different form factors, causing the app to be letterboxed." + errorLine1=" android:screenOrientation="portrait" />" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> + file="src/main/AndroidManifest.xml" + line="38" + column="17"/> + id="DiscouragedApi" + message="Should not restrict activity to fixed orientation. This may not be suitable for different form factors, causing the app to be letterboxed." + errorLine1=" android:screenOrientation="portrait" />" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> + file="src/main/AndroidManifest.xml" + line="45" + column="17"/> + id="DiscouragedApi" + message="Should not restrict activity to fixed orientation. This may not be suitable for different form factors, causing the app to be letterboxed." + errorLine1=" android:screenOrientation="portrait" />" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> + file="src/main/AndroidManifest.xml" + line="52" + column="17"/> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -2712,53 +336,9 @@ message="Custom view ``CheckListItem`` has `setOnTouchListener` called on it but does not override `performClick`" errorLine1=" binding.subscriptionBuy.setOnTouchListener(null)" errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> - - - - - - - - - - - - - - - - @@ -2769,7 +349,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -2780,7 +360,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -2817,4 +397,15 @@ column="18"/> + + + + diff --git a/sync/sync-impl/lint-baseline.xml b/sync/sync-impl/lint-baseline.xml index c06e4abaf7a7..96f067463a0d 100644 --- a/sync/sync-impl/lint-baseline.xml +++ b/sync/sync-impl/lint-baseline.xml @@ -29,7 +29,7 @@ message="Defined here, included via layout/activity_sync.xml => layout/view_sync_enabled.xml defines @+id/syncSetupOtherPlatforms"/> @@ -118,7 +118,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -129,7 +129,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -415,7 +415,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -426,7 +426,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -558,7 +558,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -569,7 +569,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -580,7 +580,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -591,7 +591,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -602,7 +602,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -613,7 +613,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -624,7 +624,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -635,7 +635,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -646,7 +646,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -657,7 +657,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -668,7 +668,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -679,7 +679,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -690,7 +690,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -701,7 +701,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -712,7 +712,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -723,7 +723,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -734,7 +734,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -745,7 +745,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -756,7 +756,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -767,7 +767,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -778,7 +778,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -789,7 +789,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -800,7 +800,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -811,7 +811,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> @@ -998,7 +998,7 @@ errorLine2=" ~~~~~~~~~~~~~~"> @@ -1009,7 +1009,7 @@ errorLine2=" ~~~~~~~~~~~~~"> @@ -1020,7 +1020,7 @@ errorLine2=" ~~~~~~~~~~~~~"> @@ -1031,7 +1031,7 @@ errorLine2=" ~~~~~~~~~~"> @@ -1042,7 +1042,7 @@ errorLine2=" ~~~~~~~~~~~~~"> @@ -1053,7 +1053,7 @@ errorLine2=" ~~~~~~~~~~~~~~"> @@ -1064,7 +1064,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1075,7 +1075,7 @@ errorLine2=" ~~~~~~~~~~~~~"> @@ -1086,7 +1086,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1097,7 +1097,7 @@ errorLine2=" ~~~~~~~~~~~"> @@ -1108,7 +1108,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1119,7 +1119,7 @@ errorLine2=" ~~~~~~~~~~~~~"> @@ -1130,7 +1130,7 @@ errorLine2=" ~~~~~~~~~~~~~~~"> @@ -1141,7 +1141,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~"> @@ -1152,7 +1152,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1163,7 +1163,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1174,7 +1174,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1185,7 +1185,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1196,7 +1196,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1207,7 +1207,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1218,7 +1218,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1229,7 +1229,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1240,7 +1240,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1251,7 +1251,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1262,7 +1262,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1273,7 +1273,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1284,7 +1284,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1295,7 +1295,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1306,7 +1306,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1317,7 +1317,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1328,7 +1328,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1339,7 +1339,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1350,7 +1350,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1361,7 +1361,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"> @@ -1372,7 +1372,7 @@ errorLine2=" ~~~~~~~~~~~"> @@ -1383,7 +1383,7 @@ errorLine2=" ~~~~~~~~~~~"> @@ -1394,7 +1394,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~"> @@ -1405,7 +1405,7 @@ errorLine2=" ~~~~~~"> @@ -1416,7 +1416,7 @@ errorLine2=" ~~~~~~~~~~~~~"> @@ -1427,7 +1427,7 @@ errorLine2=" ~~~~~~~~~~~~~~"> @@ -1438,7 +1438,7 @@ errorLine2=" ~~~~~~~~~~~~"> @@ -1449,7 +1449,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~"> @@ -1460,7 +1460,7 @@ errorLine2=" ~~~~~~~~~~~~~~~~~~~"> @@ -1471,7 +1471,7 @@ errorLine2=" ~~~~~~~~~~~~"> From 22bd343ecc5a00a444f635a5e3b3182b01bd3227 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?David=20Gonz=C3=A1lez?= Date: Wed, 12 Feb 2025 15:16:04 +0100 Subject: [PATCH 13/16] add lint supress --- .../com/duckduckgo/app/appearance/AppearanceViewModelTest.kt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/app/src/test/java/com/duckduckgo/app/appearance/AppearanceViewModelTest.kt b/app/src/test/java/com/duckduckgo/app/appearance/AppearanceViewModelTest.kt index 5a17da316933..c39bed1d5b57 100644 --- a/app/src/test/java/com/duckduckgo/app/appearance/AppearanceViewModelTest.kt +++ b/app/src/test/java/com/duckduckgo/app/appearance/AppearanceViewModelTest.kt @@ -16,6 +16,7 @@ package com.duckduckgo.app.appearance +import android.annotation.SuppressLint import androidx.arch.core.executor.testing.InstantTaskExecutorRule import app.cash.turbine.test import com.duckduckgo.app.appearance.AppearanceViewModel.Command @@ -75,6 +76,7 @@ internal class AppearanceViewModelTest { private val omnibarFeatureFlag = FakeFeatureToggleFactory.create(ChangeOmnibarPositionFeature::class.java) private val browserTheming = FakeFeatureToggleFactory.create(BrowserThemingFeature::class.java) + @SuppressLint("DenyListedApi") @Before fun before() { MockitoAnnotations.openMocks(this) From 5b2811e99b19c971eb33e8723a1549528180b02a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?David=20Gonz=C3=A1lez?= Date: Wed, 12 Feb 2025 15:40:17 +0100 Subject: [PATCH 14/16] make sure experiment theme works for custom tabs --- .../main/java/com/duckduckgo/common/ui/DuckDuckGoActivity.kt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/common/common-ui/src/main/java/com/duckduckgo/common/ui/DuckDuckGoActivity.kt b/common/common-ui/src/main/java/com/duckduckgo/common/ui/DuckDuckGoActivity.kt index 1b695d0d660c..2b969c61e9f2 100644 --- a/common/common-ui/src/main/java/com/duckduckgo/common/ui/DuckDuckGoActivity.kt +++ b/common/common-ui/src/main/java/com/duckduckgo/common/ui/DuckDuckGoActivity.kt @@ -27,6 +27,7 @@ import androidx.lifecycle.ViewModel import androidx.lifecycle.ViewModelProvider import androidx.localbroadcastmanager.content.LocalBroadcastManager import com.duckduckgo.common.ui.DuckDuckGoTheme.DARK +import com.duckduckgo.common.ui.DuckDuckGoTheme.DARK_EXPERIMENT import com.duckduckgo.common.ui.store.ThemingDataStore import com.duckduckgo.mobile.android.R import dagger.android.AndroidInjection @@ -97,6 +98,7 @@ abstract class DuckDuckGoActivity : DaggerActivity() { } } DARK -> true + DARK_EXPERIMENT -> true else -> false } } From 211cf98976511f6f680a4fed177a829b16efa8f5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?David=20Gonz=C3=A1lez?= Date: Wed, 12 Feb 2025 16:00:57 +0100 Subject: [PATCH 15/16] clean up flags for simplicity --- .../app/appearance/AppearanceViewModel.kt | 4 ++-- .../app/appearance/AppearanceViewModelTest.kt | 2 +- .../ui/experiments/BrowserThemingFeature.kt | 18 ------------------ 3 files changed, 3 insertions(+), 21 deletions(-) diff --git a/app/src/main/java/com/duckduckgo/app/appearance/AppearanceViewModel.kt b/app/src/main/java/com/duckduckgo/app/appearance/AppearanceViewModel.kt index 326e4a83783d..a3f8b5a9abe3 100644 --- a/app/src/main/java/com/duckduckgo/app/appearance/AppearanceViewModel.kt +++ b/app/src/main/java/com/duckduckgo/app/appearance/AppearanceViewModel.kt @@ -99,7 +99,7 @@ class AppearanceViewModel @Inject constructor( supportsForceDarkMode = WebViewFeature.isFeatureSupported(WebViewFeature.ALGORITHMIC_DARKENING), omnibarPosition = settingsDataStore.omnibarPosition, isOmnibarPositionFeatureEnabled = changeOmnibarPositionFeature.self().isEnabled(), - isBrowserThemingFeatureEnabled = browserThemingFeature.experimentalUI().isEnabled(), + isBrowserThemingFeatureEnabled = browserThemingFeature.self().isEnabled(), isBrowserThemingFeatureVisible = appBuildConfig.isInternalBuild(), ) } @@ -185,7 +185,7 @@ class AppearanceViewModel @Inject constructor( // only visible for UI Internal experiments fun onExperimentalUIModeChanged(checked: Boolean) { viewModelScope.launch(dispatcherProvider.io()) { - browserThemingFeature.experimentalUI().setRawStoredState(State(checked)) + browserThemingFeature.self().setRawStoredState(State(checked)) } } } diff --git a/app/src/test/java/com/duckduckgo/app/appearance/AppearanceViewModelTest.kt b/app/src/test/java/com/duckduckgo/app/appearance/AppearanceViewModelTest.kt index c39bed1d5b57..af8440fbb05a 100644 --- a/app/src/test/java/com/duckduckgo/app/appearance/AppearanceViewModelTest.kt +++ b/app/src/test/java/com/duckduckgo/app/appearance/AppearanceViewModelTest.kt @@ -88,7 +88,7 @@ internal class AppearanceViewModelTest { whenever(mockAppBuildConfig.flavor).thenReturn(INTERNAL) omnibarFeatureFlag.self().setRawStoredState(Toggle.State(enable = true)) - browserTheming.experimentalUI().setRawStoredState(Toggle.State(enable = false)) + browserTheming.self().setRawStoredState(Toggle.State(enable = false)) testee = AppearanceViewModel( mockThemeSettingsDataStore, diff --git a/common/common-ui-experiments/src/main/java/com/duckduckgo/common/ui/experiments/BrowserThemingFeature.kt b/common/common-ui-experiments/src/main/java/com/duckduckgo/common/ui/experiments/BrowserThemingFeature.kt index 862b294f4b66..379396f56ecf 100644 --- a/common/common-ui-experiments/src/main/java/com/duckduckgo/common/ui/experiments/BrowserThemingFeature.kt +++ b/common/common-ui-experiments/src/main/java/com/duckduckgo/common/ui/experiments/BrowserThemingFeature.kt @@ -27,22 +27,4 @@ import com.duckduckgo.feature.toggles.api.Toggle interface BrowserThemingFeature { @Toggle.DefaultValue(false) fun self(): Toggle - - @Toggle.DefaultValue(false) - fun experimentalUI(): Toggle - - @Toggle.DefaultValue(false) - fun colors(): Toggle - - @Toggle.DefaultValue(false) - fun omnibar(): Toggle - - @Toggle.DefaultValue(false) - fun icons(): Toggle - - @Toggle.DefaultValue(false) - fun webview(): Toggle - - @Toggle.DefaultValue(false) - fun tabManager(): Toggle } From 96fa3b8e22207c897d9a5793d547955449175e02 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?David=20Gonz=C3=A1lez?= Date: Wed, 12 Feb 2025 16:14:06 +0100 Subject: [PATCH 16/16] mising reference --- .../com/duckduckgo/common/ui/store/ThemingSharedPreferences.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/common/common-ui/src/main/java/com/duckduckgo/common/ui/store/ThemingSharedPreferences.kt b/common/common-ui/src/main/java/com/duckduckgo/common/ui/store/ThemingSharedPreferences.kt index d2333ee7ae8b..f78775cad074 100644 --- a/common/common-ui/src/main/java/com/duckduckgo/common/ui/store/ThemingSharedPreferences.kt +++ b/common/common-ui/src/main/java/com/duckduckgo/common/ui/store/ThemingSharedPreferences.kt @@ -40,7 +40,7 @@ class ThemingSharedPreferences @Inject constructor( private fun selectedThemeSavedValue(): DuckDuckGoTheme { val savedValue = preferences.getString(KEY_THEME, null) - return themePrefMapper.themeFrom(savedValue, DuckDuckGoTheme.SYSTEM_DEFAULT, browserThemingFeature.experimentalUI().isEnabled()) + return themePrefMapper.themeFrom(savedValue, DuckDuckGoTheme.SYSTEM_DEFAULT, browserThemingFeature.self().isEnabled()) } private val preferences: SharedPreferences by lazy { context.getSharedPreferences(FILENAME, Context.MODE_PRIVATE) }