Commit 1dfdd711 authored by Bo Liu's avatar Bo Liu Committed by Commit Bot

android: Use DisplayAndroid in tab_management

Bug: 1042063
Change-Id: Ib2c17548d8df20d8061d448b788a193199129faa
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2012901Reviewed-by: default avatarWei-Yin Chen (陳威尹) <wychen@chromium.org>
Commit-Queue: Wei-Yin Chen (陳威尹) <wychen@chromium.org>
Auto-Submit: Bo <boliu@chromium.org>
Cr-Commit-Position: refs/heads/master@{#733813}
parent 63c8b918
...@@ -19,12 +19,10 @@ import android.graphics.drawable.GradientDrawable; ...@@ -19,12 +19,10 @@ import android.graphics.drawable.GradientDrawable;
import android.support.v4.content.ContextCompat; import android.support.v4.content.ContextCompat;
import android.support.v4.graphics.drawable.DrawableCompat; import android.support.v4.graphics.drawable.DrawableCompat;
import android.support.v4.widget.ImageViewCompat; import android.support.v4.widget.ImageViewCompat;
import android.util.DisplayMetrics;
import android.view.Gravity; import android.view.Gravity;
import android.view.LayoutInflater; import android.view.LayoutInflater;
import android.view.View; import android.view.View;
import android.view.ViewGroup; import android.view.ViewGroup;
import android.view.WindowManager;
import android.widget.FrameLayout; import android.widget.FrameLayout;
import android.widget.ImageView; import android.widget.ImageView;
import android.widget.PopupWindow; import android.widget.PopupWindow;
...@@ -41,6 +39,7 @@ import org.chromium.base.ContextUtils; ...@@ -41,6 +39,7 @@ import org.chromium.base.ContextUtils;
import org.chromium.chrome.browser.widget.ScrimView; import org.chromium.chrome.browser.widget.ScrimView;
import org.chromium.chrome.tab_ui.R; import org.chromium.chrome.tab_ui.R;
import org.chromium.components.browser_ui.widget.animation.Interpolators; import org.chromium.components.browser_ui.widget.animation.Interpolators;
import org.chromium.ui.display.DisplayAndroid;
import org.chromium.ui.interpolators.BakedBezierInterpolator; import org.chromium.ui.interpolators.BakedBezierInterpolator;
import java.lang.annotation.Retention; import java.lang.annotation.Retention;
...@@ -140,13 +139,10 @@ public class TabGridDialogParent ...@@ -140,13 +139,10 @@ public class TabGridDialogParent
(int) context.getResources().getDimension(R.dimen.bottom_sheet_peek_height); (int) context.getResources().getDimension(R.dimen.bottom_sheet_peek_height);
mContainerParams = new FrameLayout.LayoutParams( mContainerParams = new FrameLayout.LayoutParams(
ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT); ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT);
DisplayMetrics displayMetrics = new DisplayMetrics(); DisplayAndroid display = DisplayAndroid.getNonMultiDisplay(context);
((WindowManager) context.getSystemService(Context.WINDOW_SERVICE))
.getDefaultDisplay()
.getMetrics(displayMetrics);
// Screen height and width when in portrait mode. // Screen height and width when in portrait mode.
mScreenHeight = Math.max(displayMetrics.heightPixels, displayMetrics.widthPixels); mScreenHeight = Math.max(display.getDisplayHeight(), display.getDisplayWidth());
mScreenWidth = Math.min(displayMetrics.heightPixels, displayMetrics.widthPixels); mScreenWidth = Math.min(display.getDisplayHeight(), display.getDisplayWidth());
mComponentCallbacks = new ComponentCallbacks() { mComponentCallbacks = new ComponentCallbacks() {
@Override @Override
...@@ -837,4 +833,4 @@ public class TabGridDialogParent ...@@ -837,4 +833,4 @@ public class TabGridDialogParent
static void setSourceRectCallbackForTesting(Callback<RectF> callback) { static void setSourceRectCallbackForTesting(Callback<RectF> callback) {
sSourceRectCallbackForTesting = callback; sSourceRectCallbackForTesting = callback;
} }
} }
\ No newline at end of file
...@@ -4,7 +4,6 @@ ...@@ -4,7 +4,6 @@
package org.chromium.chrome.browser.tasks.tab_management; package org.chromium.chrome.browser.tasks.tab_management;
import android.app.Activity;
import android.content.ComponentCallbacks; import android.content.ComponentCallbacks;
import android.content.Context; import android.content.Context;
import android.content.res.Configuration; import android.content.res.Configuration;
...@@ -19,7 +18,6 @@ import android.support.graphics.drawable.AnimatedVectorDrawableCompat; ...@@ -19,7 +18,6 @@ import android.support.graphics.drawable.AnimatedVectorDrawableCompat;
import android.support.v4.view.ViewCompat; import android.support.v4.view.ViewCompat;
import android.support.v7.content.res.AppCompatResources; import android.support.v7.content.res.AppCompatResources;
import android.util.AttributeSet; import android.util.AttributeSet;
import android.util.DisplayMetrics;
import android.view.Gravity; import android.view.Gravity;
import android.view.LayoutInflater; import android.view.LayoutInflater;
import android.view.View; import android.view.View;
...@@ -34,6 +32,7 @@ import androidx.annotation.VisibleForTesting; ...@@ -34,6 +32,7 @@ import androidx.annotation.VisibleForTesting;
import org.chromium.base.ApiCompatibilityUtils; import org.chromium.base.ApiCompatibilityUtils;
import org.chromium.chrome.browser.widget.ScrimView; import org.chromium.chrome.browser.widget.ScrimView;
import org.chromium.chrome.tab_ui.R; import org.chromium.chrome.tab_ui.R;
import org.chromium.ui.display.DisplayAndroid;
import org.chromium.ui.widget.ChromeImageView; import org.chromium.ui.widget.ChromeImageView;
/** /**
...@@ -193,9 +192,7 @@ public class TabGridIphItemView extends FrameLayout { ...@@ -193,9 +192,7 @@ public class TabGridIphItemView extends FrameLayout {
} }
private void updateMargins(int orientation) { private void updateMargins(int orientation) {
DisplayMetrics displayMetrics = new DisplayMetrics(); int screenHeight = DisplayAndroid.getNonMultiDisplay(getContext()).getDisplayHeight();
((Activity) getContext()).getWindowManager().getDefaultDisplay().getMetrics(displayMetrics);
int screenHeight = displayMetrics.heightPixels;
int dialogHeight = int dialogHeight =
(int) mContext.getResources().getDimension(R.dimen.tab_grid_iph_dialog_height); (int) mContext.getResources().getDimension(R.dimen.tab_grid_iph_dialog_height);
......
...@@ -53,25 +53,28 @@ public class TabGridDialogParentTest extends DummyUiActivityTestCase { ...@@ -53,25 +53,28 @@ public class TabGridDialogParentTest extends DummyUiActivityTestCase {
super.setUpTest(); super.setUpTest();
TabFeatureUtilities.setIsTabToGtsAnimationEnabledForTesting(true); TabFeatureUtilities.setIsTabToGtsAnimationEnabledForTesting(true);
mDummyParent = new FrameLayout(getActivity()); TestThreadUtils.runOnUiThreadBlocking(() -> {
mTabGridDialogParent = new TabGridDialogParent(getActivity(), mDummyParent); mDummyParent = new FrameLayout(getActivity());
mPopoupWindow = mTabGridDialogParent.getPopupWindowForTesting(); mTabGridDialogParent = new TabGridDialogParent(getActivity(), mDummyParent);
FrameLayout tabGridDialogParentView = mPopoupWindow = mTabGridDialogParent.getPopupWindowForTesting();
mTabGridDialogParent.getTabGridDialogParentViewForTesting(); FrameLayout tabGridDialogParentView =
mTabGridDialogParent.getTabGridDialogParentViewForTesting();
mTabGridDialogContainer = tabGridDialogParentView.findViewById(R.id.dialog_container_view);
mUngroupBar = mTabGridDialogContainer.findViewById(R.id.dialog_ungroup_bar); mTabGridDialogContainer =
mUngroupBarTextView = mUngroupBar.findViewById(R.id.dialog_ungroup_bar_text); tabGridDialogParentView.findViewById(R.id.dialog_container_view);
mContainerParams = (FrameLayout.LayoutParams) mTabGridDialogContainer.getLayoutParams(); mUngroupBar = mTabGridDialogContainer.findViewById(R.id.dialog_ungroup_bar);
mAnimationCardView = mTabGridDialogParent.getAnimationCardViewForTesting(); mUngroupBarTextView = mUngroupBar.findViewById(R.id.dialog_ungroup_bar_text);
mBackgroundFrameView = tabGridDialogParentView.findViewById(R.id.dialog_frame); mContainerParams = (FrameLayout.LayoutParams) mTabGridDialogContainer.getLayoutParams();
mAnimationCardView = mTabGridDialogParent.getAnimationCardViewForTesting();
mToolbarHeight = mBackgroundFrameView = tabGridDialogParentView.findViewById(R.id.dialog_frame);
(int) getActivity().getResources().getDimension(R.dimen.tab_group_toolbar_height);
mTopMargin = mToolbarHeight = (int) getActivity().getResources().getDimension(
(int) getActivity().getResources().getDimension(R.dimen.tab_grid_dialog_top_margin); R.dimen.tab_group_toolbar_height);
mSideMargin = (int) getActivity().getResources().getDimension( mTopMargin = (int) getActivity().getResources().getDimension(
R.dimen.tab_grid_dialog_side_margin); R.dimen.tab_grid_dialog_top_margin);
mSideMargin = (int) getActivity().getResources().getDimension(
R.dimen.tab_grid_dialog_side_margin);
});
} }
@Test @Test
......
...@@ -24,7 +24,6 @@ import android.content.res.Configuration; ...@@ -24,7 +24,6 @@ import android.content.res.Configuration;
import android.os.Build; import android.os.Build;
import android.support.test.espresso.NoMatchingRootException; import android.support.test.espresso.NoMatchingRootException;
import android.support.test.filters.MediumTest; import android.support.test.filters.MediumTest;
import android.util.DisplayMetrics;
import android.view.ViewGroup; import android.view.ViewGroup;
import android.widget.TextView; import android.widget.TextView;
...@@ -50,6 +49,8 @@ import org.chromium.chrome.test.ChromeJUnit4ClassRunner; ...@@ -50,6 +49,8 @@ import org.chromium.chrome.test.ChromeJUnit4ClassRunner;
import org.chromium.chrome.test.ChromeTabbedActivityTestRule; import org.chromium.chrome.test.ChromeTabbedActivityTestRule;
import org.chromium.chrome.test.util.browser.Features; import org.chromium.chrome.test.util.browser.Features;
import org.chromium.content_public.browser.test.util.CriteriaHelper; import org.chromium.content_public.browser.test.util.CriteriaHelper;
import org.chromium.content_public.browser.test.util.TestThreadUtils;
import org.chromium.ui.display.DisplayAndroid;
import org.chromium.ui.test.util.UiRestriction; import org.chromium.ui.test.util.UiRestriction;
/** End-to-end tests for TabGridIphItem component. */ /** End-to-end tests for TabGridIphItem component. */
...@@ -210,9 +211,8 @@ public class TabGridIphItemTest { ...@@ -210,9 +211,8 @@ public class TabGridIphItemTest {
private void verifyDialogMargins(ChromeTabbedActivity cta, int orientation) { private void verifyDialogMargins(ChromeTabbedActivity cta, int orientation) {
verifyIphDialogShowing(cta); verifyIphDialogShowing(cta);
DisplayMetrics displayMetrics = new DisplayMetrics(); int screenHeight = TestThreadUtils.runOnUiThreadBlockingNoException(
cta.getWindowManager().getDefaultDisplay().getMetrics(displayMetrics); () -> DisplayAndroid.getNonMultiDisplay(cta).getDisplayHeight());
int screenHeight = displayMetrics.heightPixels;
int dialogHeight = int dialogHeight =
(int) cta.getResources().getDimension(R.dimen.tab_grid_iph_dialog_height); (int) cta.getResources().getDimension(R.dimen.tab_grid_iph_dialog_height);
...@@ -285,4 +285,4 @@ public class TabGridIphItemTest { ...@@ -285,4 +285,4 @@ public class TabGridIphItemTest {
assertEquals(textSideMargin, realMargins.leftMargin); assertEquals(textSideMargin, realMargins.leftMargin);
}); });
} }
} }
\ No newline at end of file
...@@ -62,26 +62,29 @@ public class TabGridPanelViewBinderTest extends DummyUiActivityTestCase { ...@@ -62,26 +62,29 @@ public class TabGridPanelViewBinderTest extends DummyUiActivityTestCase {
@Override @Override
public void setUpTest() throws Exception { public void setUpTest() throws Exception {
super.setUpTest(); super.setUpTest();
FrameLayout parentView = new FrameLayout(getActivity()); TestThreadUtils.runOnUiThreadBlocking(() -> {
mContentView = (TabListRecyclerView) LayoutInflater.from(getActivity()) FrameLayout parentView = new FrameLayout(getActivity());
.inflate(R.layout.tab_list_recycler_view_layout, parentView, false); mContentView =
mContentView.setLayoutManager(new GridLayoutManager(getActivity(), 2)); (TabListRecyclerView) LayoutInflater.from(getActivity())
mToolbarView = (TabGroupUiToolbarView) LayoutInflater.from(getActivity()) .inflate(R.layout.tab_list_recycler_view_layout, parentView, false);
.inflate(R.layout.bottom_tab_grid_toolbar, mContentView, false); mContentView.setLayoutManager(new GridLayoutManager(getActivity(), 2));
mTabGridDialogParent = mToolbarView = (TabGroupUiToolbarView) LayoutInflater.from(getActivity())
new TabGridDialogParent(getActivity(), new FrameLayout(getActivity())); .inflate(R.layout.bottom_tab_grid_toolbar, mContentView, false);
mTabGridDialogParentView = mTabGridDialogParent.getTabGridDialogParentViewForTesting(); mTabGridDialogParent =
mLeftButton = mToolbarView.findViewById(R.id.toolbar_left_button); new TabGridDialogParent(getActivity(), new FrameLayout(getActivity()));
mRightButton = mToolbarView.findViewById(R.id.toolbar_right_button); mTabGridDialogParentView = mTabGridDialogParent.getTabGridDialogParentViewForTesting();
mTitleTextView = mToolbarView.findViewById(R.id.title); mLeftButton = mToolbarView.findViewById(R.id.toolbar_left_button);
mMainContent = mToolbarView.findViewById(R.id.main_content); mRightButton = mToolbarView.findViewById(R.id.toolbar_right_button);
mTitleTextView = mToolbarView.findViewById(R.id.title);
mModel = new PropertyModel(TabGridPanelProperties.ALL_KEYS); mMainContent = mToolbarView.findViewById(R.id.main_content);
mMCP = PropertyModelChangeProcessor.create(mModel, mModel = new PropertyModel(TabGridPanelProperties.ALL_KEYS);
new TabGridPanelViewBinder.ViewHolder(
mToolbarView, mContentView, mTabGridDialogParent), mMCP = PropertyModelChangeProcessor.create(mModel,
TabGridPanelViewBinder::bind); new TabGridPanelViewBinder.ViewHolder(
mToolbarView, mContentView, mTabGridDialogParent),
TabGridPanelViewBinder::bind);
});
} }
@Test @Test
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment