reverse the order of appmenu
This commit is contained in:
parent
b7bad88837
commit
abb05cb97c
1 changed files with 51 additions and 9 deletions
|
@ -53,7 +53,8 @@ Support for tablet mode is also included.
|
||||||
.../flags/android/chrome_feature_list.cc | 2 +
|
.../flags/android/chrome_feature_list.cc | 2 +
|
||||||
.../browser/flags/CachedFeatureFlags.java | 19 +++++++
|
.../browser/flags/CachedFeatureFlags.java | 19 +++++++
|
||||||
.../browser/flags/ChromeFeatureList.java | 2 +
|
.../browser/flags/ChromeFeatureList.java | 2 +
|
||||||
.../chrome/browser/ui/appmenu/AppMenu.java | 19 +++++++
|
.../chrome/browser/ui/appmenu/AppMenu.java | 25 +++++++++
|
||||||
|
.../ui/appmenu/AppMenuHandlerImpl.java | 11 ++++
|
||||||
.../omnibox/LocationBarCoordinator.java | 9 +++-
|
.../omnibox/LocationBarCoordinator.java | 9 +++-
|
||||||
.../browser/omnibox/UrlBarCoordinator.java | 11 +++-
|
.../browser/omnibox/UrlBarCoordinator.java | 11 +++-
|
||||||
.../suggestions/AutocompleteCoordinator.java | 16 +++++-
|
.../suggestions/AutocompleteCoordinator.java | 16 +++++-
|
||||||
|
@ -76,7 +77,7 @@ Support for tablet mode is also included.
|
||||||
.../accessibility/AccessibilitySettings.java | 16 ++++++
|
.../accessibility/AccessibilitySettings.java | 16 ++++++
|
||||||
.../AccessibilitySettingsDelegate.java | 6 +++
|
.../AccessibilitySettingsDelegate.java | 6 +++
|
||||||
.../render_widget_host_view_android.cc | 3 ++
|
.../render_widget_host_view_android.cc | 3 ++
|
||||||
67 files changed, 706 insertions(+), 52 deletions(-)
|
68 files changed, 723 insertions(+), 52 deletions(-)
|
||||||
|
|
||||||
diff --git a/cc/base/features.cc b/cc/base/features.cc
|
diff --git a/cc/base/features.cc b/cc/base/features.cc
|
||||||
--- a/cc/base/features.cc
|
--- a/cc/base/features.cc
|
||||||
|
@ -1328,7 +1329,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ui/BottomContai
|
||||||
diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
|
diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
|
||||||
--- a/chrome/browser/about_flags.cc
|
--- a/chrome/browser/about_flags.cc
|
||||||
+++ b/chrome/browser/about_flags.cc
|
+++ b/chrome/browser/about_flags.cc
|
||||||
@@ -6587,6 +6587,11 @@ const FeatureEntry kFeatureEntries[] = {
|
@@ -6591,6 +6591,11 @@ const FeatureEntry kFeatureEntries[] = {
|
||||||
flag_descriptions::kImpulseScrollAnimationsDescription, kOsAll,
|
flag_descriptions::kImpulseScrollAnimationsDescription, kOsAll,
|
||||||
FEATURE_VALUE_TYPE(features::kImpulseScrollAnimations)},
|
FEATURE_VALUE_TYPE(features::kImpulseScrollAnimations)},
|
||||||
|
|
||||||
|
@ -1496,14 +1497,14 @@ diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browse
|
||||||
#include "base/metrics/field_trial_params.h"
|
#include "base/metrics/field_trial_params.h"
|
||||||
#include "chrome/browser/browser_features.h"
|
#include "chrome/browser/browser_features.h"
|
||||||
#include "chrome/browser/feature_guide/notifications/feature_notification_guide_service.h"
|
#include "chrome/browser/feature_guide/notifications/feature_notification_guide_service.h"
|
||||||
@@ -249,6 +250,7 @@ const base::Feature* const kFeaturesExposedToJava[] = {
|
@@ -250,6 +251,7 @@ const base::Feature* const kFeaturesExposedToJava[] = {
|
||||||
&kInstantStart,
|
|
||||||
&kKitKatSupported,
|
&kKitKatSupported,
|
||||||
&kLensCameraAssistedSearch,
|
&kLensCameraAssistedSearch,
|
||||||
+ &features::kMoveTopToolbarToBottom,
|
|
||||||
&kLocationBarModelOptimizations,
|
&kLocationBarModelOptimizations,
|
||||||
|
+ &features::kMoveTopToolbarToBottom,
|
||||||
&kNewWindowAppMenu,
|
&kNewWindowAppMenu,
|
||||||
&kNotificationPermissionVariant,
|
&kNotificationPermissionVariant,
|
||||||
|
&kOfflineIndicatorV2,
|
||||||
diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/CachedFeatureFlags.java b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/CachedFeatureFlags.java
|
diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/CachedFeatureFlags.java b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/CachedFeatureFlags.java
|
||||||
--- a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/CachedFeatureFlags.java
|
--- a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/CachedFeatureFlags.java
|
||||||
+++ b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/CachedFeatureFlags.java
|
+++ b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/CachedFeatureFlags.java
|
||||||
|
@ -1571,7 +1572,20 @@ diff --git a/chrome/browser/ui/android/appmenu/internal/java/src/org/chromium/ch
|
||||||
import org.chromium.chrome.browser.ui.appmenu.internal.R;
|
import org.chromium.chrome.browser.ui.appmenu.internal.R;
|
||||||
import org.chromium.components.browser_ui.styles.ChromeColors;
|
import org.chromium.components.browser_ui.styles.ChromeColors;
|
||||||
import org.chromium.components.browser_ui.widget.chips.ChipView;
|
import org.chromium.components.browser_ui.widget.chips.ChipView;
|
||||||
@@ -341,6 +343,14 @@ class AppMenu implements OnItemClickListener, OnKeyListener, AppMenuClickHandler
|
@@ -258,6 +260,12 @@ class AppMenu implements OnItemClickListener, OnKeyListener, AppMenuClickHandler
|
||||||
|
}
|
||||||
|
|
||||||
|
mListView = (ListView) contentView.findViewById(R.id.app_menu_list);
|
||||||
|
+ if (CachedFeatureFlags.isEnabled(ChromeFeatureList.MOVE_TOP_TOOLBAR_TO_BOTTOM)) {
|
||||||
|
+ // always scroll to the bottom to show new items
|
||||||
|
+ mListView.setTranscriptMode(ListView.TRANSCRIPT_MODE_ALWAYS_SCROLL);
|
||||||
|
+ // fill content starting from the bottom of the view
|
||||||
|
+ mListView.setStackFromBottom(true);
|
||||||
|
+ }
|
||||||
|
|
||||||
|
int footerHeight = inflateFooter(footerResourceId, contentView, menuWidth);
|
||||||
|
int headerHeight = inflateHeader(headerResourceId, contentView, menuWidth);
|
||||||
|
@@ -341,6 +349,14 @@ class AppMenu implements OnItemClickListener, OnKeyListener, AppMenuClickHandler
|
||||||
int anchorViewX = tempLocation[0];
|
int anchorViewX = tempLocation[0];
|
||||||
int anchorViewY = tempLocation[1];
|
int anchorViewY = tempLocation[1];
|
||||||
|
|
||||||
|
@ -1586,7 +1600,7 @@ diff --git a/chrome/browser/ui/android/appmenu/internal/java/src/org/chromium/ch
|
||||||
int[] offsets = new int[2];
|
int[] offsets = new int[2];
|
||||||
// If we have a hardware menu button, locate the app menu closer to the estimated
|
// If we have a hardware menu button, locate the app menu closer to the estimated
|
||||||
// hardware menu button location.
|
// hardware menu button location.
|
||||||
@@ -531,6 +541,15 @@ class AppMenu implements OnItemClickListener, OnKeyListener, AppMenuClickHandler
|
@@ -531,6 +547,15 @@ class AppMenu implements OnItemClickListener, OnKeyListener, AppMenuClickHandler
|
||||||
}
|
}
|
||||||
int availableScreenSpace = Math.max(
|
int availableScreenSpace = Math.max(
|
||||||
anchorViewY, appDimensions.height() - anchorViewY - anchorViewImpactHeight);
|
anchorViewY, appDimensions.height() - anchorViewY - anchorViewImpactHeight);
|
||||||
|
@ -1602,6 +1616,34 @@ diff --git a/chrome/browser/ui/android/appmenu/internal/java/src/org/chromium/ch
|
||||||
|
|
||||||
availableScreenSpace -= (padding.bottom + footerHeight + headerHeight);
|
availableScreenSpace -= (padding.bottom + footerHeight + headerHeight);
|
||||||
if (mIsByPermanentButton) availableScreenSpace -= padding.top;
|
if (mIsByPermanentButton) availableScreenSpace -= padding.top;
|
||||||
|
diff --git a/chrome/browser/ui/android/appmenu/internal/java/src/org/chromium/chrome/browser/ui/appmenu/AppMenuHandlerImpl.java b/chrome/browser/ui/android/appmenu/internal/java/src/org/chromium/chrome/browser/ui/appmenu/AppMenuHandlerImpl.java
|
||||||
|
--- a/chrome/browser/ui/android/appmenu/internal/java/src/org/chromium/chrome/browser/ui/appmenu/AppMenuHandlerImpl.java
|
||||||
|
+++ b/chrome/browser/ui/android/appmenu/internal/java/src/org/chromium/chrome/browser/ui/appmenu/AppMenuHandlerImpl.java
|
||||||
|
@@ -19,6 +19,8 @@ import androidx.annotation.VisibleForTesting;
|
||||||
|
|
||||||
|
import org.chromium.base.Callback;
|
||||||
|
import org.chromium.base.metrics.RecordUserAction;
|
||||||
|
+import org.chromium.chrome.browser.flags.ChromeFeatureList;
|
||||||
|
+import org.chromium.chrome.browser.flags.CachedFeatureFlags;
|
||||||
|
import org.chromium.chrome.browser.lifecycle.ActivityLifecycleDispatcher;
|
||||||
|
import org.chromium.chrome.browser.lifecycle.ConfigurationChangedObserver;
|
||||||
|
import org.chromium.chrome.browser.lifecycle.StartStopWithNativeObserver;
|
||||||
|
@@ -178,6 +180,15 @@ class AppMenuHandlerImpl
|
||||||
|
}),
|
||||||
|
this);
|
||||||
|
|
||||||
|
+ if (CachedFeatureFlags.isEnabled(ChromeFeatureList.MOVE_TOP_TOOLBAR_TO_BOTTOM)) {
|
||||||
|
+ // reverses the order of items in the menu
|
||||||
|
+ ModelList modelListReverted = new ModelList();
|
||||||
|
+ for (int i = 0; i < modelList.size(); i++) {
|
||||||
|
+ modelListReverted.add(0, modelList.get(i));
|
||||||
|
+ }
|
||||||
|
+ modelList = modelListReverted;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
ContextThemeWrapper wrapper =
|
||||||
|
new ContextThemeWrapper(mContext, R.style.OverflowMenuThemeOverlay);
|
||||||
|
|
||||||
diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarCoordinator.java b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarCoordinator.java
|
diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarCoordinator.java b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarCoordinator.java
|
||||||
--- a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarCoordinator.java
|
--- a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarCoordinator.java
|
||||||
+++ b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarCoordinator.java
|
+++ b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarCoordinator.java
|
||||||
|
@ -1802,7 +1844,7 @@ diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/brow
|
||||||
diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd
|
diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd
|
||||||
--- a/chrome/browser/ui/android/strings/android_chrome_strings.grd
|
--- a/chrome/browser/ui/android/strings/android_chrome_strings.grd
|
||||||
+++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd
|
+++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd
|
||||||
@@ -1386,6 +1386,12 @@ Your Google account may have other forms of browsing history like searches and a
|
@@ -1396,6 +1396,12 @@ Your Google account may have other forms of browsing history like searches and a
|
||||||
<message name="IDS_FORCE_TABLET_UI_TITLE" desc="Title of the preference that allows the user to update force tablet UI settings.">
|
<message name="IDS_FORCE_TABLET_UI_TITLE" desc="Title of the preference that allows the user to update force tablet UI settings.">
|
||||||
Force Tablet Mode
|
Force Tablet Mode
|
||||||
</message>
|
</message>
|
||||||
|
|
Loading…
Add table
Reference in a new issue