From bce40569b02777dbd0c1d2eef964c6ea26336872 Mon Sep 17 00:00:00 2001 From: 0nko Date: Thu, 10 Jul 2025 18:43:06 +0200 Subject: [PATCH 1/2] Add a comment for the new feature --- app/src/main/java/com/duckduckgo/app/tabs/TabFeatureFlags.kt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/app/src/main/java/com/duckduckgo/app/tabs/TabFeatureFlags.kt b/app/src/main/java/com/duckduckgo/app/tabs/TabFeatureFlags.kt index b143ab9f10a6..0fd4de61ca41 100644 --- a/app/src/main/java/com/duckduckgo/app/tabs/TabFeatureFlags.kt +++ b/app/src/main/java/com/duckduckgo/app/tabs/TabFeatureFlags.kt @@ -35,4 +35,6 @@ interface TabManagerFeatureFlags { @Toggle.DefaultValue(DefaultFeatureValue.TRUE) fun tabInsertionFixes(): Toggle + + // There will be a new feature for the new design of tab manager } From da3440f606bdb3597824d29c67da4096d8c3f0bc Mon Sep 17 00:00:00 2001 From: Ondrej Ruttkay <0nko@users.noreply.github.com> Date: Fri, 18 Jul 2025 11:26:54 +0200 Subject: [PATCH 2/2] Tab manager update: Add a feature flag (#6372) Task/Issue URL: https://app.asana.com/1/137249556945/project/72649045549333/task/1210728360131191?focus=true ### Description This PR adds a new feature flag and caches its value in the `TabSwitcherViewModel`. ### Steps to test this PR QA-optional --- - To see the specific tasks where the Asana app for GitHub is being used, see below: - https://app.asana.com/0/0/1210760591708462 --- app/src/main/java/com/duckduckgo/app/tabs/TabFeatureFlags.kt | 4 +++- .../java/com/duckduckgo/app/tabs/ui/TabSwitcherViewModel.kt | 4 ++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/com/duckduckgo/app/tabs/TabFeatureFlags.kt b/app/src/main/java/com/duckduckgo/app/tabs/TabFeatureFlags.kt index 0fd4de61ca41..e0b52b328e49 100644 --- a/app/src/main/java/com/duckduckgo/app/tabs/TabFeatureFlags.kt +++ b/app/src/main/java/com/duckduckgo/app/tabs/TabFeatureFlags.kt @@ -36,5 +36,7 @@ interface TabManagerFeatureFlags { @Toggle.DefaultValue(DefaultFeatureValue.TRUE) fun tabInsertionFixes(): Toggle - // There will be a new feature for the new design of tab manager + @Toggle.InternalAlwaysEnabled + @Toggle.DefaultValue(DefaultFeatureValue.FALSE) + fun newToolbarFeature(): Toggle } diff --git a/app/src/main/java/com/duckduckgo/app/tabs/ui/TabSwitcherViewModel.kt b/app/src/main/java/com/duckduckgo/app/tabs/ui/TabSwitcherViewModel.kt index 66c6dd5b5d70..d3ca3c7a5a05 100644 --- a/app/src/main/java/com/duckduckgo/app/tabs/ui/TabSwitcherViewModel.kt +++ b/app/src/main/java/com/duckduckgo/app/tabs/ui/TabSwitcherViewModel.kt @@ -166,6 +166,10 @@ class TabSwitcherViewModel @Inject constructor( private val selectionMode: Selection get() = requireNotNull(selectionViewState.value.mode as Selection) + val isNewDesignEnabled: Boolean by lazy { + tabManagerFeatureFlags.newToolbarFeature().isEnabled() + } + sealed class Command { data object Close : Command() data class CloseAndShowUndoMessage(val deletedTabIds: List) : Command()