mirror of
https://github.com/uazo/cromite.git
synced 2025-12-28 07:54:50 +00:00
389 lines
21 KiB
Diff
389 lines
21 KiB
Diff
From: uazo <uazo@users.noreply.github.com>
|
|
Date: Sat, 21 Sep 2024 15:32:02 +0000
|
|
Subject: Use browser navigation handler
|
|
|
|
Added a flag in the settings to restore the pre-A12 navigation mode.
|
|
Pulling the edge to the right will go backwards, pulling it further forwards.
|
|
|
|
License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
|
|
---
|
|
.../compositor/CompositorViewHolder.java | 1 +
|
|
.../GestureNavigationProperties.java | 4 +--
|
|
.../GestureNavigationViewBinder.java | 6 ++--
|
|
.../HistoryNavigationCoordinator.java | 4 +++
|
|
.../gesturenav/HistoryNavigationLayout.java | 6 ++--
|
|
.../browser/gesturenav/NavigationHandler.java | 12 +++++--
|
|
.../browser/gesturenav/SideSlideLayout.java | 25 +++++++++++---
|
|
.../tabbed_mode/TabbedRootUiCoordinator.java | 4 ++-
|
|
.../cromite/sUseBrowserNavigationHandler.java | 33 +++++++++++++++++++
|
|
.../Use-browser-navigation-handler.grdp | 12 +++++++
|
|
.../res/xml/accessibility_preferences.xml | 9 +++++
|
|
.../widget/CoordinatorLayoutForPointer.java | 20 +++++++++++
|
|
.../Use-browser-navigation-handler.inc | 12 +++++++
|
|
.../Use-browser-navigation-handler.inc | 3 ++
|
|
.../Use-browser-navigation-handler.inc | 1 +
|
|
15 files changed, 135 insertions(+), 17 deletions(-)
|
|
create mode 100644 chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/cromite/sUseBrowserNavigationHandler.java
|
|
create mode 100644 chrome/browser/ui/android/strings/cromite_android_chrome_strings_grd/Use-browser-navigation-handler.grdp
|
|
create mode 100644 cromite_flags/chrome/browser/about_flags_cc/Use-browser-navigation-handler.inc
|
|
create mode 100644 cromite_flags/chrome/browser/flags/android/chrome_feature_list_cc/Use-browser-navigation-handler.inc
|
|
create mode 100644 cromite_flags/chrome/browser/flags/android/chrome_feature_list_h/Use-browser-navigation-handler.inc
|
|
|
|
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/CompositorViewHolder.java b/chrome/android/java/src/org/chromium/chrome/browser/compositor/CompositorViewHolder.java
|
|
--- a/chrome/android/java/src/org/chromium/chrome/browser/compositor/CompositorViewHolder.java
|
|
+++ b/chrome/android/java/src/org/chromium/chrome/browser/compositor/CompositorViewHolder.java
|
|
@@ -105,6 +105,7 @@ import org.chromium.ui.util.MotionEventUtils;
|
|
import org.chromium.url.GURL;
|
|
|
|
import java.util.ArrayList;
|
|
+import java.util.Collections;
|
|
import java.util.HashSet;
|
|
import java.util.List;
|
|
import java.util.Set;
|
|
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/gesturenav/GestureNavigationProperties.java b/chrome/android/java/src/org/chromium/chrome/browser/gesturenav/GestureNavigationProperties.java
|
|
--- a/chrome/android/java/src/org/chromium/chrome/browser/gesturenav/GestureNavigationProperties.java
|
|
+++ b/chrome/android/java/src/org/chromium/chrome/browser/gesturenav/GestureNavigationProperties.java
|
|
@@ -19,7 +19,7 @@ class GestureNavigationProperties {
|
|
/**
|
|
* Gesture navigation direction. {@code true} for forward navigation, {@code false} for back.
|
|
*/
|
|
- static final WritableBooleanPropertyKey DIRECTION = new WritableBooleanPropertyKey();
|
|
+ static final WritableBooleanPropertyKey CANFORWARD = new WritableBooleanPropertyKey();
|
|
|
|
/** Gesture navigation edge as defined in {@link BackGestureEventSwipeEdge}. */
|
|
static final WritableIntPropertyKey EDGE = new WritableIntPropertyKey();
|
|
@@ -41,6 +41,6 @@ class GestureNavigationProperties {
|
|
static final WritableIntPropertyKey CLOSE_INDICATOR = new WritableIntPropertyKey();
|
|
|
|
static final PropertyKey[] ALL_KEYS = {
|
|
- ACTION, DIRECTION, EDGE, ALLOW_NAV, BUBBLE_OFFSET, CLOSE_INDICATOR
|
|
+ ACTION, CANFORWARD, EDGE, ALLOW_NAV, BUBBLE_OFFSET, CLOSE_INDICATOR
|
|
};
|
|
}
|
|
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/gesturenav/GestureNavigationViewBinder.java b/chrome/android/java/src/org/chromium/chrome/browser/gesturenav/GestureNavigationViewBinder.java
|
|
--- a/chrome/android/java/src/org/chromium/chrome/browser/gesturenav/GestureNavigationViewBinder.java
|
|
+++ b/chrome/android/java/src/org/chromium/chrome/browser/gesturenav/GestureNavigationViewBinder.java
|
|
@@ -8,7 +8,7 @@ import static org.chromium.chrome.browser.gesturenav.GestureNavigationProperties
|
|
import static org.chromium.chrome.browser.gesturenav.GestureNavigationProperties.ALLOW_NAV;
|
|
import static org.chromium.chrome.browser.gesturenav.GestureNavigationProperties.BUBBLE_OFFSET;
|
|
import static org.chromium.chrome.browser.gesturenav.GestureNavigationProperties.CLOSE_INDICATOR;
|
|
-import static org.chromium.chrome.browser.gesturenav.GestureNavigationProperties.DIRECTION;
|
|
+import static org.chromium.chrome.browser.gesturenav.GestureNavigationProperties.CANFORWARD;
|
|
import static org.chromium.chrome.browser.gesturenav.GestureNavigationProperties.EDGE;
|
|
|
|
import android.view.View;
|
|
@@ -34,8 +34,8 @@ class GestureNavigationViewBinder {
|
|
} else if (ACTION == key) {
|
|
switch (model.get(ACTION)) {
|
|
case GestureAction.SHOW_ARROW:
|
|
- topView.showBubble(
|
|
- model.get(DIRECTION), model.get(EDGE), model.get(CLOSE_INDICATOR));
|
|
+ topView.showBubble2(
|
|
+ model.get(CANFORWARD), model.get(EDGE), model.get(CLOSE_INDICATOR));
|
|
break;
|
|
case GestureAction.RELEASE_BUBBLE:
|
|
topView.releaseBubble(model.get(ALLOW_NAV));
|
|
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/gesturenav/HistoryNavigationCoordinator.java b/chrome/android/java/src/org/chromium/chrome/browser/gesturenav/HistoryNavigationCoordinator.java
|
|
--- a/chrome/android/java/src/org/chromium/chrome/browser/gesturenav/HistoryNavigationCoordinator.java
|
|
+++ b/chrome/android/java/src/org/chromium/chrome/browser/gesturenav/HistoryNavigationCoordinator.java
|
|
@@ -16,6 +16,7 @@ import org.chromium.build.annotations.MonotonicNonNull;
|
|
import org.chromium.build.annotations.NullMarked;
|
|
import org.chromium.build.annotations.NullUnmarked;
|
|
import org.chromium.build.annotations.Nullable;
|
|
+import org.chromium.chrome.browser.flags.cromite.sUseBrowserNavigationHandler;
|
|
import org.chromium.chrome.browser.fullscreen.FullscreenManager;
|
|
import org.chromium.chrome.browser.fullscreen.FullscreenOptions;
|
|
import org.chromium.chrome.browser.lifecycle.ActivityLifecycleDispatcher;
|
|
@@ -205,6 +206,9 @@ public class HistoryNavigationCoordinator
|
|
* @return {@code} true if the feature is enabled.
|
|
*/
|
|
private boolean isFeatureEnabled() {
|
|
+ if (sUseBrowserNavigationHandler.getInstance().isEnabled()) {
|
|
+ return true;
|
|
+ }
|
|
if (mForceFeatureEnabledForTesting != null) {
|
|
return mForceFeatureEnabledForTesting;
|
|
}
|
|
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/gesturenav/HistoryNavigationLayout.java b/chrome/android/java/src/org/chromium/chrome/browser/gesturenav/HistoryNavigationLayout.java
|
|
--- a/chrome/android/java/src/org/chromium/chrome/browser/gesturenav/HistoryNavigationLayout.java
|
|
+++ b/chrome/android/java/src/org/chromium/chrome/browser/gesturenav/HistoryNavigationLayout.java
|
|
@@ -74,8 +74,8 @@ class HistoryNavigationLayout extends FrameLayout implements ViewGroup.OnHierarc
|
|
* @param forward {@code true} for forward navigation, or {@code false} for back.
|
|
* @param initiatingEdge Which edge of the screen the gesture is navigating from.
|
|
*/
|
|
- void showBubble(
|
|
- boolean forward,
|
|
+ void showBubble2(
|
|
+ boolean canForward,
|
|
@BackGestureEventSwipeEdge int initiatingEdge,
|
|
@CloseTarget int closeIndicator) {
|
|
if (mSideSlideLayout == null) {
|
|
@@ -93,7 +93,7 @@ class HistoryNavigationLayout extends FrameLayout implements ViewGroup.OnHierarc
|
|
});
|
|
}
|
|
mSideSlideLayout.setEnabled(true);
|
|
- mSideSlideLayout.setDirection(forward);
|
|
+ mSideSlideLayout.setDirection2(canForward);
|
|
mSideSlideLayout.setInitiatingEdge(initiatingEdge);
|
|
mSideSlideLayout.setCloseIndicator(closeIndicator);
|
|
attachLayoutIfNecessary();
|
|
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/gesturenav/NavigationHandler.java b/chrome/android/java/src/org/chromium/chrome/browser/gesturenav/NavigationHandler.java
|
|
--- a/chrome/android/java/src/org/chromium/chrome/browser/gesturenav/NavigationHandler.java
|
|
+++ b/chrome/android/java/src/org/chromium/chrome/browser/gesturenav/NavigationHandler.java
|
|
@@ -10,7 +10,7 @@ import static org.chromium.chrome.browser.gesturenav.GestureNavigationProperties
|
|
import static org.chromium.chrome.browser.gesturenav.GestureNavigationProperties.ALLOW_NAV;
|
|
import static org.chromium.chrome.browser.gesturenav.GestureNavigationProperties.BUBBLE_OFFSET;
|
|
import static org.chromium.chrome.browser.gesturenav.GestureNavigationProperties.CLOSE_INDICATOR;
|
|
-import static org.chromium.chrome.browser.gesturenav.GestureNavigationProperties.DIRECTION;
|
|
+import static org.chromium.chrome.browser.gesturenav.GestureNavigationProperties.CANFORWARD;
|
|
import static org.chromium.chrome.browser.gesturenav.GestureNavigationProperties.EDGE;
|
|
|
|
import android.app.Activity;
|
|
@@ -291,7 +291,11 @@ class NavigationHandler implements TouchEventObserver {
|
|
|
|
boolean forward = isForward();
|
|
|
|
- mModel.set(DIRECTION, forward);
|
|
+ if (mInitiatingEdge == BackGestureEventSwipeEdge.RIGHT && canNavigate(true)) {
|
|
+ mModel.set(CANFORWARD, true);
|
|
+ } else {
|
|
+ mModel.set(CANFORWARD, false);
|
|
+ }
|
|
mModel.set(EDGE, mInitiatingEdge);
|
|
if (canNavigate(forward)) {
|
|
// Correct swipe, reset mIncorrectEdgeSwipeCount.
|
|
@@ -529,12 +533,14 @@ class NavigationHandler implements TouchEventObserver {
|
|
}
|
|
|
|
private boolean isForward() {
|
|
- boolean forward = mInitiatingEdge == BackGestureEventSwipeEdge.RIGHT;
|
|
+ boolean forward = false;
|
|
+ @BackGestureEventSwipeEdge int edge = BackGestureEventSwipeEdge.RIGHT;
|
|
|
|
// If the UI uses an RTL layout, it may be necessary to flip the meaning of each edge so
|
|
// that the left edge goes forward and the right goes back.
|
|
if (LocalizationUtils.shouldMirrorBackForwardGestures()) {
|
|
forward = !forward;
|
|
+ edge = BackGestureEventSwipeEdge.LEFT;
|
|
}
|
|
return forward;
|
|
}
|
|
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/gesturenav/SideSlideLayout.java b/chrome/android/java/src/org/chromium/chrome/browser/gesturenav/SideSlideLayout.java
|
|
--- a/chrome/android/java/src/org/chromium/chrome/browser/gesturenav/SideSlideLayout.java
|
|
+++ b/chrome/android/java/src/org/chromium/chrome/browser/gesturenav/SideSlideLayout.java
|
|
@@ -108,6 +108,7 @@ public class SideSlideLayout extends ViewGroup {
|
|
private int mAnimationViewWidth;
|
|
|
|
private boolean mIsForward;
|
|
+ private boolean mCanForward;
|
|
private @CloseTarget int mCloseIndicator;
|
|
|
|
private @BackGestureEventSwipeEdge int mInitiatingEdge;
|
|
@@ -223,10 +224,10 @@ public class SideSlideLayout extends ViewGroup {
|
|
* Set the direction used for sliding gesture.
|
|
* @param forward {@code true} if direction is forward.
|
|
*/
|
|
- public void setDirection(boolean forward) {
|
|
- mIsForward = forward;
|
|
- mArrowView.setIcon(
|
|
- forward ? R.drawable.ic_arrow_forward_blue_24dp : R.drawable.ic_arrow_back_24dp);
|
|
+ public void setDirection2(boolean canForward) {
|
|
+ mIsForward = false;
|
|
+ mCanForward = canForward;
|
|
+ mArrowView.setIcon(R.drawable.ic_arrow_back_24dp);
|
|
}
|
|
|
|
public void setInitiatingEdge(@BackGestureEventSwipeEdge int edge) {
|
|
@@ -332,7 +333,7 @@ public class SideSlideLayout extends ViewGroup {
|
|
mWillNavigate = navigating;
|
|
|
|
if (mCloseIndicator != CloseTarget.NONE) {
|
|
- if (mWillNavigate) {
|
|
+ if (mCanForward && !mIsForward && mWillNavigate) {
|
|
mArrowView.showCaption(mCloseIndicator);
|
|
mArrowViewWidth = mArrowView.getMeasuredWidth();
|
|
} else {
|
|
@@ -348,6 +349,20 @@ public class SideSlideLayout extends ViewGroup {
|
|
? -targetDiff
|
|
: targetDiff);
|
|
setTargetOffsetLeftAndRight(targetX - mCurrentTargetOffset);
|
|
+
|
|
+ boolean lastForward = mIsForward;
|
|
+ if (mCanForward && originalDragPercent > (THRESHOLD_MULTIPLIER * 2)) {
|
|
+ mIsForward = true;
|
|
+ } else {
|
|
+ mIsForward = false;
|
|
+ }
|
|
+ if (lastForward != mIsForward) {
|
|
+ mArrowView.setIcon(
|
|
+ mIsForward ? R.drawable.ic_arrow_forward_blue_24dp : R.drawable.ic_arrow_back_24dp);
|
|
+ mArrowView.setImageTint(true);
|
|
+ if (navigating) performHapticFeedback(HapticFeedbackConstants.KEYBOARD_TAP);
|
|
+ hideCloseIndicator();
|
|
+ }
|
|
}
|
|
|
|
/**
|
|
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedRootUiCoordinator.java b/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedRootUiCoordinator.java
|
|
--- a/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedRootUiCoordinator.java
|
|
+++ b/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedRootUiCoordinator.java
|
|
@@ -86,6 +86,7 @@ import org.chromium.chrome.browser.firstrun.FirstRunStatus;
|
|
import org.chromium.chrome.browser.flags.ActivityType;
|
|
import org.chromium.chrome.browser.flags.ChromeFeatureList;
|
|
import org.chromium.chrome.browser.flags.ChromeSwitches;
|
|
+import org.chromium.chrome.browser.flags.cromite.sUseBrowserNavigationHandler;
|
|
import org.chromium.chrome.browser.fullscreen.BrowserControlsManager;
|
|
import org.chromium.chrome.browser.fullscreen.FullscreenManager;
|
|
import org.chromium.chrome.browser.gesturenav.BackActionDelegate;
|
|
@@ -824,7 +825,8 @@ public class TabbedRootUiCoordinator extends RootUiCoordinator {
|
|
@Override
|
|
public void onInflationComplete() {
|
|
mCoordinator = mActivity.findViewById(R.id.coordinator);
|
|
-
|
|
+ ((CoordinatorLayoutForPointer)mCoordinator).setUseBrowserNavigationHandler(
|
|
+ sUseBrowserNavigationHandler.getInstance().isEnabled());
|
|
super.onInflationComplete();
|
|
|
|
ViewStub loadingStub = mActivity.findViewById(R.id.loading_stub);
|
|
diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/cromite/sUseBrowserNavigationHandler.java b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/cromite/sUseBrowserNavigationHandler.java
|
|
new file mode 100644
|
|
--- /dev/null
|
|
+++ b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/cromite/sUseBrowserNavigationHandler.java
|
|
@@ -0,0 +1,33 @@
|
|
+/*
|
|
+ This file is part of Cromite.
|
|
+
|
|
+ Cromite is free software: you can redistribute it and/or modify
|
|
+ it under the terms of the GNU General Public License as published by
|
|
+ the Free Software Foundation, either version 3 of the License, or
|
|
+ (at your option) any later version.
|
|
+
|
|
+ Cromite is distributed in the hope that it will be useful,
|
|
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
+ GNU General Public License for more details.
|
|
+
|
|
+ You should have received a copy of the GNU General Public License
|
|
+ along with Cromite. If not, see <https://www.gnu.org/licenses/>.
|
|
+*/
|
|
+
|
|
+package org.chromium.chrome.browser.flags.cromite;
|
|
+
|
|
+import org.chromium.components.cached_flags.CachedFlag;
|
|
+import org.chromium.chrome.browser.flags.ChromeFeatureMap;
|
|
+
|
|
+public class sUseBrowserNavigationHandler {
|
|
+ private static final CachedFlag sInstance =
|
|
+ new CachedFlag(ChromeFeatureMap.getInstance(),
|
|
+ "UseBrowserNavigationHandler", false);
|
|
+
|
|
+ private sUseBrowserNavigationHandler() {}
|
|
+
|
|
+ public static CachedFlag getInstance() {
|
|
+ return sInstance;
|
|
+ }
|
|
+}
|
|
diff --git a/chrome/browser/ui/android/strings/cromite_android_chrome_strings_grd/Use-browser-navigation-handler.grdp b/chrome/browser/ui/android/strings/cromite_android_chrome_strings_grd/Use-browser-navigation-handler.grdp
|
|
new file mode 100644
|
|
--- /dev/null
|
|
+++ b/chrome/browser/ui/android/strings/cromite_android_chrome_strings_grd/Use-browser-navigation-handler.grdp
|
|
@@ -0,0 +1,12 @@
|
|
+<?xml version="1.0" encoding="utf-8"?>
|
|
+<grit-part>
|
|
+ <message name="IDS_CUSTOMIZE_NAVIGATION_MODE" desc="">
|
|
+ Customising the navigation manager
|
|
+ </message>
|
|
+ <message name="IDS_USE_BROWSER_NAVIGATION_HANDLER_TITLE" desc="">
|
|
+ Disable system gestures for web browsing
|
|
+ </message>
|
|
+ <message name="IDS_USE_BROWSER_NAVIGATION_HANDLER_SUMMARY" desc="">
|
|
+ Forces activation of the old page navigation mode
|
|
+ </message>
|
|
+</grit-part>
|
|
diff --git a/components/browser_ui/accessibility/android/java/res/xml/accessibility_preferences.xml b/components/browser_ui/accessibility/android/java/res/xml/accessibility_preferences.xml
|
|
--- a/components/browser_ui/accessibility/android/java/res/xml/accessibility_preferences.xml
|
|
+++ b/components/browser_ui/accessibility/android/java/res/xml/accessibility_preferences.xml
|
|
@@ -109,4 +109,13 @@ found in the LICENSE file.
|
|
android:summary="@string/selection_popup_smart_text_summary"
|
|
android:title="@string/selection_popup_smart_text_title" />
|
|
|
|
+ <PreferenceCategory
|
|
+ android:key="customize_navigation_mode"
|
|
+ android:title="@string/customize_navigation_mode" />
|
|
+
|
|
+ <org.chromium.components.browser_ui.settings.ChromeSwitchPreference
|
|
+ android:title="@string/use_browser_navigation_handler_title"
|
|
+ android:summary="@string/use_browser_navigation_handler_summary"
|
|
+ app:featureName="UseBrowserNavigationHandler"
|
|
+ app:needRestart="true" />
|
|
</PreferenceScreen>
|
|
diff --git a/components/browser_ui/widget/android/java/src/org/chromium/components/browser_ui/widget/CoordinatorLayoutForPointer.java b/components/browser_ui/widget/android/java/src/org/chromium/components/browser_ui/widget/CoordinatorLayoutForPointer.java
|
|
--- a/components/browser_ui/widget/android/java/src/org/chromium/components/browser_ui/widget/CoordinatorLayoutForPointer.java
|
|
+++ b/components/browser_ui/widget/android/java/src/org/chromium/components/browser_ui/widget/CoordinatorLayoutForPointer.java
|
|
@@ -16,6 +16,10 @@ import org.chromium.base.ObserverList;
|
|
import org.chromium.build.annotations.NullMarked;
|
|
import org.chromium.build.annotations.Nullable;
|
|
|
|
+import android.graphics.Rect;
|
|
+import android.os.Build;
|
|
+import java.util.Collections;
|
|
+
|
|
/**
|
|
* This class overrides {@link onResolvePointerIcon} method to correctly determine the pointer icon
|
|
* from a mouse motion event. This is needed because the default android impl does not consider view
|
|
@@ -37,6 +41,22 @@ public class CoordinatorLayoutForPointer extends CoordinatorLayout implements To
|
|
&& (y >= view.getTop() && y <= view.getBottom()));
|
|
}
|
|
|
|
+ private boolean useBrowserNavigationHandler = false;
|
|
+
|
|
+ public void setUseBrowserNavigationHandler(boolean enabled) {
|
|
+ useBrowserNavigationHandler = enabled;
|
|
+ }
|
|
+
|
|
+ @Override
|
|
+ protected void onLayout(boolean changed, int l, int t, int r, int b) {
|
|
+ super.onLayout(changed, l, t, r, b);
|
|
+ if (useBrowserNavigationHandler && Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) {
|
|
+ setSystemGestureExclusionRects(
|
|
+ Collections.singletonList(
|
|
+ new Rect(0, 0, Math.abs(r - l), Math.abs(t - b))));
|
|
+ }
|
|
+ }
|
|
+
|
|
@Override
|
|
public PointerIcon onResolvePointerIcon(MotionEvent event, int pointerIndex) {
|
|
final int x = (int) event.getX(pointerIndex);
|
|
diff --git a/cromite_flags/chrome/browser/about_flags_cc/Use-browser-navigation-handler.inc b/cromite_flags/chrome/browser/about_flags_cc/Use-browser-navigation-handler.inc
|
|
new file mode 100644
|
|
--- /dev/null
|
|
+++ b/cromite_flags/chrome/browser/about_flags_cc/Use-browser-navigation-handler.inc
|
|
@@ -0,0 +1,12 @@
|
|
+#if BUILDFLAG(IS_ANDROID)
|
|
+
|
|
+#ifdef FLAG_SECTION
|
|
+
|
|
+ {"UseBrowserNavigationHandler",
|
|
+ "Disable system gestures for web browsing",
|
|
+ "Forces activation of the old page navigation mode", kOsAndroid,
|
|
+ FEATURE_VALUE_TYPE(chrome::android::kUseBrowserNavigationHandler)},
|
|
+
|
|
+#endif
|
|
+
|
|
+#endif
|
|
diff --git a/cromite_flags/chrome/browser/flags/android/chrome_feature_list_cc/Use-browser-navigation-handler.inc b/cromite_flags/chrome/browser/flags/android/chrome_feature_list_cc/Use-browser-navigation-handler.inc
|
|
new file mode 100644
|
|
--- /dev/null
|
|
+++ b/cromite_flags/chrome/browser/flags/android/chrome_feature_list_cc/Use-browser-navigation-handler.inc
|
|
@@ -0,0 +1,3 @@
|
|
+CROMITE_FEATURE(kUseBrowserNavigationHandler,
|
|
+ "UseBrowserNavigationHandler",
|
|
+ base::FEATURE_DISABLED_BY_DEFAULT);
|
|
diff --git a/cromite_flags/chrome/browser/flags/android/chrome_feature_list_h/Use-browser-navigation-handler.inc b/cromite_flags/chrome/browser/flags/android/chrome_feature_list_h/Use-browser-navigation-handler.inc
|
|
new file mode 100644
|
|
--- /dev/null
|
|
+++ b/cromite_flags/chrome/browser/flags/android/chrome_feature_list_h/Use-browser-navigation-handler.inc
|
|
@@ -0,0 +1 @@
|
|
+BASE_DECLARE_FEATURE(kUseBrowserNavigationHandler);
|
|
--
|