93 lines
5.7 KiB
Diff
93 lines
5.7 KiB
Diff
From: csagan5 <32685696+csagan5@users.noreply.github.com>
|
|
Date: Fri, 24 Jan 2020 19:17:22 +0100
|
|
Subject: Disable smart selection by default
|
|
|
|
Allow web search in incognito mode; Smart Selection still
|
|
disabled in incognito as per upstream.
|
|
|
|
Partial revert of da1d809c003749846cb4ade8c11b6d038e44416b to restore
|
|
the ChromeSmartSelection feature flag.
|
|
|
|
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
|
|
---
|
|
.../browser/contextualsearch/SelectionClientManager.java | 5 +++++
|
|
chrome/browser/flags/android/chrome_feature_list.cc | 1 +
|
|
.../org/chromium/chrome/browser/flags/ChromeFeatureList.java | 1 +
|
|
.../browser/selection/SelectionPopupControllerImpl.java | 1 -
|
|
.../disable-smart-selection-by-default.inc | 3 +++
|
|
.../disable-smart-selection-by-default.inc | 1 +
|
|
6 files changed, 11 insertions(+), 1 deletion(-)
|
|
create mode 100644 cromite_flags/chrome/browser/flags/android/chrome_feature_list_cc/disable-smart-selection-by-default.inc
|
|
create mode 100644 cromite_flags/chrome/browser/flags/android/chrome_feature_list_h/disable-smart-selection-by-default.inc
|
|
|
|
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/contextualsearch/SelectionClientManager.java b/chrome/android/java/src/org/chromium/chrome/browser/contextualsearch/SelectionClientManager.java
|
|
--- a/chrome/android/java/src/org/chromium/chrome/browser/contextualsearch/SelectionClientManager.java
|
|
+++ b/chrome/android/java/src/org/chromium/chrome/browser/contextualsearch/SelectionClientManager.java
|
|
@@ -10,6 +10,7 @@ import androidx.annotation.VisibleForTesting;
|
|
|
|
import org.chromium.build.annotations.NullMarked;
|
|
import org.chromium.build.annotations.Nullable;
|
|
+import org.chromium.chrome.browser.flags.ChromeFeatureList;
|
|
import org.chromium.content_public.browser.SelectAroundCaretResult;
|
|
import org.chromium.content_public.browser.SelectionClient;
|
|
import org.chromium.content_public.browser.SelectionEventProcessor;
|
|
@@ -51,6 +52,10 @@ public class SelectionClientManager {
|
|
*/
|
|
SelectionClientManager(WebContents webContents) {
|
|
assert webContents != null;
|
|
+ if (!ChromeFeatureList.isEnabled(ChromeFeatureList.CHROME_SMART_SELECTION)) {
|
|
+ mIsSmartSelectionEnabledInChrome = false;
|
|
+ return;
|
|
+ }
|
|
mOptionalSelectionClient = SelectionClient.createSmartSelectionClient(webContents);
|
|
SelectionPopupController controller = SelectionPopupController.fromWebContents(webContents);
|
|
controller.setSelectionClient(mOptionalSelectionClient);
|
|
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
|
|
@@ -299,6 +299,7 @@ const base::Feature* const kFeaturesExposedToJava[] = {
|
|
&kCCTFreInSameTask,
|
|
&kCCTGoogleBottomBar,
|
|
&kCCTGoogleBottomBarVariantLayouts,
|
|
+ &kChromeSmartSelection,
|
|
&kCCTIncognitoAvailableToThirdParty,
|
|
&kCCTMinimizedEnabledByDefault,
|
|
&kCCTMultipleParallelRequests,
|
|
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
|
|
@@ -636,6 +636,7 @@ public abstract class ChromeFeatureList {
|
|
"SearchInCCTIfEnabledByEmbedder";
|
|
public static final String SEARCH_IN_SETTINGS = "SearchInSettings";
|
|
public static final String SEED_ACCOUNTS_REVAMP = "SeedAccountsRevamp";
|
|
+ public static final String CHROME_SMART_SELECTION = "ChromeSmartSelection";
|
|
public static final String SEGMENTATION_PLATFORM_ANDROID_HOME_MODULE_RANKER =
|
|
"SegmentationPlatformAndroidHomeModuleRanker";
|
|
public static final String SEGMENTATION_PLATFORM_ANDROID_HOME_MODULE_RANKER_V2 =
|
|
diff --git a/content/public/android/java/src/org/chromium/content/browser/selection/SelectionPopupControllerImpl.java b/content/public/android/java/src/org/chromium/content/browser/selection/SelectionPopupControllerImpl.java
|
|
--- a/content/public/android/java/src/org/chromium/content/browser/selection/SelectionPopupControllerImpl.java
|
|
+++ b/content/public/android/java/src/org/chromium/content/browser/selection/SelectionPopupControllerImpl.java
|
|
@@ -1018,7 +1018,6 @@ public class SelectionPopupControllerImpl extends ActionModeCallbackHelper
|
|
public boolean canWebSearch() {
|
|
return hasSelection()
|
|
&& !isFocusedNodeEditable()
|
|
- && !isIncognito()
|
|
&& isSelectActionModeAllowed(MENU_ITEM_WEB_SEARCH);
|
|
}
|
|
|
|
diff --git a/cromite_flags/chrome/browser/flags/android/chrome_feature_list_cc/disable-smart-selection-by-default.inc b/cromite_flags/chrome/browser/flags/android/chrome_feature_list_cc/disable-smart-selection-by-default.inc
|
|
new file mode 100644
|
|
--- /dev/null
|
|
+++ b/cromite_flags/chrome/browser/flags/android/chrome_feature_list_cc/disable-smart-selection-by-default.inc
|
|
@@ -0,0 +1,3 @@
|
|
+CROMITE_FEATURE(kChromeSmartSelection,
|
|
+ "ChromeSmartSelection",
|
|
+ base::FEATURE_DISABLED_BY_DEFAULT);
|
|
diff --git a/cromite_flags/chrome/browser/flags/android/chrome_feature_list_h/disable-smart-selection-by-default.inc b/cromite_flags/chrome/browser/flags/android/chrome_feature_list_h/disable-smart-selection-by-default.inc
|
|
new file mode 100644
|
|
--- /dev/null
|
|
+++ b/cromite_flags/chrome/browser/flags/android/chrome_feature_list_h/disable-smart-selection-by-default.inc
|
|
@@ -0,0 +1 @@
|
|
+BASE_DECLARE_FEATURE(kChromeSmartSelection);
|
|
--
|