110 lines
5.9 KiB
Diff
110 lines
5.9 KiB
Diff
From: csagan5 <32685696+csagan5@users.noreply.github.com>
|
|
Date: Mon, 8 Aug 2022 02:35:35 +0200
|
|
Subject: Re-introduce modal dialog flag to close all tabs
|
|
|
|
Revert "[Tab Management] Cleanup close all tabs modal dialog flags"
|
|
|
|
This reverts commit 614a998c5af5dcd36baffa6d65090c0b8decb03f.
|
|
|
|
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
|
|
---
|
|
.../tasks/tab_management/CloseAllTabsDialog.java | 6 ++++++
|
|
chrome/browser/flags/android/chrome_feature_list.cc | 1 +
|
|
.../chrome/browser/flags/ChromeFeatureList.java | 1 +
|
|
...ntroduce-modal-dialog-flag-to-close-all-tabs.inc | 13 +++++++++++++
|
|
...ntroduce-modal-dialog-flag-to-close-all-tabs.inc | 9 +++++++++
|
|
...ntroduce-modal-dialog-flag-to-close-all-tabs.inc | 5 +++++
|
|
6 files changed, 35 insertions(+)
|
|
create mode 100644 cromite_flags/chrome/browser/about_flags_cc/Re-introduce-modal-dialog-flag-to-close-all-tabs.inc
|
|
create mode 100644 cromite_flags/chrome/browser/flags/android/chrome_feature_list_cc/Re-introduce-modal-dialog-flag-to-close-all-tabs.inc
|
|
create mode 100644 cromite_flags/chrome/browser/flags/android/chrome_feature_list_h/Re-introduce-modal-dialog-flag-to-close-all-tabs.inc
|
|
|
|
diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/CloseAllTabsDialog.java b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/CloseAllTabsDialog.java
|
|
--- a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/CloseAllTabsDialog.java
|
|
+++ b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/CloseAllTabsDialog.java
|
|
@@ -12,6 +12,7 @@ import androidx.annotation.VisibleForTesting;
|
|
import org.chromium.base.metrics.RecordHistogram;
|
|
import org.chromium.base.metrics.RecordUserAction;
|
|
import org.chromium.base.supplier.Supplier;
|
|
+import org.chromium.chrome.browser.flags.ChromeFeatureList;
|
|
import org.chromium.chrome.R;
|
|
import org.chromium.chrome.browser.tabmodel.TabModelSelector;
|
|
import org.chromium.ui.modaldialog.DialogDismissalCause;
|
|
@@ -35,6 +36,11 @@ public class CloseAllTabsDialog {
|
|
Supplier<ModalDialogManager> modalDialogManagerSupplier,
|
|
@NonNull TabModelSelector tabModelSelector,
|
|
Runnable onCloseAll) {
|
|
+ if (!ChromeFeatureList.isEnabled(ChromeFeatureList.CLOSE_ALL_TABS_MODAL_DIALOG)) {
|
|
+ onCloseAll.run();
|
|
+ return;
|
|
+ }
|
|
+
|
|
assert modalDialogManagerSupplier.hasValue();
|
|
final ModalDialogManager manager = modalDialogManagerSupplier.get();
|
|
final boolean isIncognito = tabModelSelector.getCurrentModel().isIncognito();
|
|
diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browser/flags/android/chrome_feature_list.cc
|
|
--- a/chrome/browser/flags/android/chrome_feature_list.cc
|
|
+++ b/chrome/browser/flags/android/chrome_feature_list.cc
|
|
@@ -171,6 +171,7 @@ const base::Feature* const kFeaturesExposedToJava[] = {
|
|
&kBackGestureActivityTabProvider,
|
|
&kBackGestureMoveToBackDuringStartup,
|
|
&kBackGestureRefactorAndroid,
|
|
+ &kCloseAllTabsModalDialog,
|
|
&kBackgroundThreadPool,
|
|
&kBlockIntentsWhileLocked,
|
|
&kCacheActivityTaskID,
|
|
diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java
|
|
--- a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java
|
|
+++ b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java
|
|
@@ -225,6 +225,7 @@ public abstract class ChromeFeatureList {
|
|
"CCTPageInsightsHubBetterScroll";
|
|
public static final String CCT_REPORT_PARALLEL_REQUEST_STATUS =
|
|
"CCTReportParallelRequestStatus";
|
|
+ public static final String CLOSE_ALL_TABS_MODAL_DIALOG = "CloseAllTabsModalDialog";
|
|
public static final String CCT_RESIZABLE_FOR_THIRD_PARTIES = "CCTResizableForThirdParties";
|
|
public static final String CCT_RESIZABLE_SIDE_SHEET = "CCTResizableSideSheet";
|
|
public static final String CCT_RESIZABLE_SIDE_SHEET_FOR_THIRD_PARTIES =
|
|
diff --git a/cromite_flags/chrome/browser/about_flags_cc/Re-introduce-modal-dialog-flag-to-close-all-tabs.inc b/cromite_flags/chrome/browser/about_flags_cc/Re-introduce-modal-dialog-flag-to-close-all-tabs.inc
|
|
new file mode 100644
|
|
--- /dev/null
|
|
+++ b/cromite_flags/chrome/browser/about_flags_cc/Re-introduce-modal-dialog-flag-to-close-all-tabs.inc
|
|
@@ -0,0 +1,13 @@
|
|
+#if BUILDFLAG(IS_ANDROID)
|
|
+
|
|
+#ifdef FLAG_SECTION
|
|
+
|
|
+ {"close-all-tabs-modal-dialog",
|
|
+ "Close all tabs modal dialog",
|
|
+ "Shows a confirmation modal dialog when clicking 'Close all tabs' in the"
|
|
+ "app menu.", kOsAndroid,
|
|
+ FEATURE_VALUE_TYPE(chrome::android::kCloseAllTabsModalDialog)},
|
|
+
|
|
+#endif
|
|
+
|
|
+#endif
|
|
diff --git a/cromite_flags/chrome/browser/flags/android/chrome_feature_list_cc/Re-introduce-modal-dialog-flag-to-close-all-tabs.inc b/cromite_flags/chrome/browser/flags/android/chrome_feature_list_cc/Re-introduce-modal-dialog-flag-to-close-all-tabs.inc
|
|
new file mode 100644
|
|
--- /dev/null
|
|
+++ b/cromite_flags/chrome/browser/flags/android/chrome_feature_list_cc/Re-introduce-modal-dialog-flag-to-close-all-tabs.inc
|
|
@@ -0,0 +1,9 @@
|
|
+#if BUILDFLAG(IS_ANDROID)
|
|
+
|
|
+CROMITE_FEATURE(kCloseAllTabsModalDialog,
|
|
+ "CloseAllTabsModalDialog",
|
|
+ base::FEATURE_ENABLED_BY_DEFAULT);
|
|
+
|
|
+SET_CROMITE_FEATURE_ENABLED(kArchiveTabService);
|
|
+
|
|
+#endif
|
|
diff --git a/cromite_flags/chrome/browser/flags/android/chrome_feature_list_h/Re-introduce-modal-dialog-flag-to-close-all-tabs.inc b/cromite_flags/chrome/browser/flags/android/chrome_feature_list_h/Re-introduce-modal-dialog-flag-to-close-all-tabs.inc
|
|
new file mode 100644
|
|
--- /dev/null
|
|
+++ b/cromite_flags/chrome/browser/flags/android/chrome_feature_list_h/Re-introduce-modal-dialog-flag-to-close-all-tabs.inc
|
|
@@ -0,0 +1,5 @@
|
|
+#if BUILDFLAG(IS_ANDROID)
|
|
+
|
|
+BASE_DECLARE_FEATURE(kCloseAllTabsModalDialog);
|
|
+
|
|
+#endif
|
|
--
|