fix tab rearrange, disable mathml, fix use OPAQUE_ORIGIN_FOR_INCOMING_INTENTS

see https://github.com/uazo/bromite-buildtools/issues/33#issuecomment-1409929449
This commit is contained in:
Carmelo Messina
2023-01-31 17:19:07 +01:00
parent 0540e3ac78
commit b4ca08406a
4 changed files with 117 additions and 18 deletions
+4 -2
View File
@@ -269,5 +269,7 @@ AudioBuffer-AnalyserNode-fp-mitigations.patch
00Partitioning-all-cookies-by-top-frame-domain.patch
00109-2-Move-navigation-bar-to-bottom-fixup.patch
00109-Add-an-always-incognito-mode-fixup.patch
00Remove-experimental-relative-c---abi-vtables.patch
00Remove-experimental-relative-c---abi-vtables.patch
00Disable-MathMLCore.patch
00fix-InitiatorOrigin--add-fixup-.patch
00109-Add-an-always-incognito-mode-fixup.patch
@@ -3,36 +3,32 @@ Date: Mon, 30 Jan 2023 15:13:51 +0000
Subject: 109-2 Move navigation bar to bottom fixup
---
.../tasks/tab_management/TabListCoordinator.java | 8 +++++---
.../tasks/tab_management/TabListCoordinator.java | 5 +++--
.../DropdownItemViewInfoListManager.java | 15 +++++++++++----
2 files changed, 16 insertions(+), 7 deletions(-)
2 files changed, 14 insertions(+), 6 deletions(-)
diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabListCoordinator.java b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabListCoordinator.java
--- a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabListCoordinator.java
+++ b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabListCoordinator.java
@@ -139,8 +139,10 @@ public class TabListCoordinator
@@ -139,15 +139,16 @@ public class TabListCoordinator
@Override
public void scrollToPositionWithOffset(int position, int offset) {
- mLastPosition = position;
+ if (offset != 0) return;
mLastPosition = position;
- super.scrollToPositionWithOffset(position, getPaddingBottom());
+ if (mIsFirstLayout) {
+ mLastPosition = position;
+ super.scrollToPositionWithOffset(mLastPosition, getPaddingBottom());
+ }
+ super.scrollToPositionWithOffset(mLastPosition, getPaddingBottom());
}
@Override
@@ -152,8 +154,8 @@ public class TabListCoordinator
public void onLayoutCompleted(RecyclerView.State state) {
super.onLayoutCompleted(state);
- if (state.isPreLayout()) return;
+ if (state.isPreLayout() || state.isMeasuring()) return;
View lastView = findViewByPosition(findFirstVisibleItemPosition());
if (lastView != null) {
mTopPadding = Math.min(mTopPadding, mRecyclerView.getHeight() - lastView.getHeight());
if (mIsFirstLayout) {
- mIsFirstLayout = false;
scrollToPositionWithOffset(mLastPosition, 0);
+ mIsFirstLayout = false;
}
}
diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/suggestions/DropdownItemViewInfoListManager.java b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/suggestions/DropdownItemViewInfoListManager.java
--- a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/suggestions/DropdownItemViewInfoListManager.java
+++ b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/suggestions/DropdownItemViewInfoListManager.java
+25
View File
@@ -0,0 +1,25 @@
From: Your Name <you@example.com>
Date: Tue, 31 Jan 2023 13:57:29 +0000
Subject: Disable MathMLCore
---
.../blink/renderer/platform/runtime_enabled_features.json5 | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5 b/third_party/blink/renderer/platform/runtime_enabled_features.json5
--- a/third_party/blink/renderer/platform/runtime_enabled_features.json5
+++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5
@@ -1684,9 +1684,10 @@
},
{
name: "MathMLCore",
- status: "stable",
+ status: "experimental",
depends_on: ["LayoutNG"],
base_feature: "MathMLCore",
+ base_feature_status: "disabled",
},
{
name:"MeasureMemory",
--
2.25.1
@@ -0,0 +1,76 @@
From: Your Name <you@example.com>
Date: Tue, 31 Jan 2023 13:58:21 +0000
Subject: fix InitiatorOrigin (add fixup)
---
.../chromium/chrome/browser/IntentHandler.java | 16 +++++++++++++++-
.../chrome/browser/LaunchIntentDispatcher.java | 2 +-
.../shared_intent/SharedIntentShareActivity.java | 1 +
3 files changed, 17 insertions(+), 2 deletions(-)
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/IntentHandler.java b/chrome/android/java/src/org/chromium/chrome/browser/IntentHandler.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/IntentHandler.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/IntentHandler.java
@@ -214,6 +214,9 @@ public class IntentHandler {
private static final String EXTRA_TAB_LAUNCH_TYPE =
"org.chromium.chrome.browser.tab_launch_type";
+ private static final String EXTRA_TAB_FORCE_INCOGNITO_TYPE =
+ "org.chromium.chrome.browser.force_incognito";
+
/**
* A hash code for the URL to verify intent data hasn't been modified.
*/
@@ -1443,6 +1446,17 @@ public class IntentHandler {
return IntentUtils.safeGetSerializableExtra(intent, EXTRA_TAB_LAUNCH_TYPE);
}
+ public static void setForceIncognitoMode(Intent intent) {
+ intent.putExtra(EXTRA_TAB_FORCE_INCOGNITO_TYPE, 1);
+ intent.putExtra(IntentHandler.EXTRA_OPEN_NEW_INCOGNITO_TAB, true);
+ setTabLaunchType(intent, TabLaunchType.FROM_EXTERNAL_APP);
+ }
+
+ public static boolean isForceIncognitoMode(Intent intent) {
+ Integer value = IntentUtils.safeGetSerializableExtra(intent, EXTRA_TAB_FORCE_INCOGNITO_TYPE);
+ return value == null ? false : value == 1;
+ }
+
/**
* Creates an Intent that will launch a ChromeTabbedActivity on the new tab page. The Intent
* will be trusted and therefore able to launch Incognito tabs.
@@ -1580,7 +1594,7 @@ public class IntentHandler {
String headers = getExtraHeadersFromIntent(intent);
headers = maybeAddAdditionalContentHeaders(intent, url, headers);
- if (IntentHandler.wasIntentSenderChrome(intent)) {
+ if (IntentHandler.wasIntentSenderChrome(intent) && !isForceIncognitoMode(intent)) {
// Handle post data case.
String postDataType =
IntentUtils.safeGetStringExtra(intent, IntentHandler.EXTRA_POST_DATA_TYPE);
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/LaunchIntentDispatcher.java b/chrome/android/java/src/org/chromium/chrome/browser/LaunchIntentDispatcher.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/LaunchIntentDispatcher.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/LaunchIntentDispatcher.java
@@ -456,8 +456,8 @@ public class LaunchIntentDispatcher implements IntentHandler.IntentHandlerDelega
/*incognito*/true);
newIntent.setData(mIntent.getData());
newIntent.setPackage(applicationContext.getPackageName());
- IntentHandler.setTabLaunchType(newIntent, TabLaunchType.FROM_EXTERNAL_APP);
newIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
+ IntentHandler.setForceIncognitoMode(newIntent);
}
long time = SystemClock.elapsedRealtime();
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/sharing/shared_intent/SharedIntentShareActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/sharing/shared_intent/SharedIntentShareActivity.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/sharing/shared_intent/SharedIntentShareActivity.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/sharing/shared_intent/SharedIntentShareActivity.java
@@ -100,6 +100,7 @@ public class SharedIntentShareActivity
chromeIntent.setData(Uri.parse(linkUrl));
chromeIntent.setPackage(applicationContext.getPackageName());
chromeIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
+ IntentHandler.setForceIncognitoMode(chromeIntent);
LaunchIntentDispatcher.dispatch(this, chromeIntent);
finish();
--
2.25.1