Commit 26eeb3ee authored by bttk's avatar bttk Committed by Commit Bot

Define missing status icon width dimensions for sw600dp

The sw600dp layout location_bar_icon differed from the unqualified
variant only with the value of end padding until they diverged in
http://crrev.com/c/1653842

Now the alternative layout is merged back into the default variant.
All overrides are now in values-sw600dp/dimens.xml

Values location_bar_icon_* and location_bar_start_icon_* were
identical, so now the latter values are removed.

Bug: 1130414
Change-Id: I087861fbab00768009ed881bc3753a83a8458f0f
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2427211Reviewed-by: default avatarTed Choc <tedchoc@chromium.org>
Reviewed-by: default avatarBrandon Wylie <wylieb@chromium.org>
Commit-Queue: Ted Choc <tedchoc@chromium.org>
Auto-Submit: who/bttk <bttk@chromium.org>
Cr-Commit-Position: refs/heads/master@{#812137}
parent 45e8ca02
......@@ -770,7 +770,6 @@ chrome_java_resources = [
"java/res/layout-sw360dp/preference_spinner_single_line.xml",
"java/res/layout-sw600dp/find_toolbar.xml",
"java/res/layout-sw600dp/location_bar.xml",
"java/res/layout-sw600dp/location_status_icon.xml",
"java/res/layout/accept_languages_item.xml",
"java/res/layout/accept_languages_list.xml",
"java/res/layout/accessibility_tab_switcher.xml",
......
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright 2018 The Chromium Authors. All rights reserved.
Use of this source code is governed by a BSD-style license that can be
found in the LICENSE file. -->
<merge
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<org.chromium.ui.widget.ChromeImageButton
android:id="@+id/location_bar_status_icon"
style="@style/LocationBarButton"
android:layout_width="@dimen/location_bar_icon_width"
android:layout_height="match_parent"
android:layout_gravity="center"
android:src="@android:color/transparent"
android:visibility="gone"
android:contentDescription="@string/accessibility_toolbar_btn_site_info"
android:scaleType="center" />
</merge>
......@@ -25,6 +25,9 @@
<dimen name="tab_strip_and_toolbar_height">96dp</dimen>
<dimen name="location_bar_icon_width">40dp</dimen>
<dimen name="location_bar_icon_margin_end">0dp</dimen>
<dimen name="sei_location_bar_icon_end_padding">0dp</dimen>
<dimen name="location_bar_status_icon_width">40dp</dimen>
<dimen name="location_bar_action_icon_width">40dp</dimen>
<dimen name="location_bar_url_action_offset">0dp</dimen>
<dimen name="omnibox_suggestion_start_offset_without_icon">@dimen/location_bar_icon_width</dimen>
......
......@@ -236,8 +236,7 @@
<dimen name="location_bar_url_text_size">16sp</dimen>
<dimen name="location_bar_icon_width">28dp</dimen>
<dimen name="location_bar_action_icon_width">48dp</dimen>
<dimen name="location_bar_start_icon_width">28dp</dimen>
<dimen name="location_bar_start_icon_margin_end">4dp</dimen>
<dimen name="location_bar_icon_margin_end">4dp</dimen>
<dimen name="location_bar_lateral_padding">10dp</dimen>
<!-- When the url action container is shown, the location bar end padding is built in to its
actions, so the action container itself uses a negative offset to properly align with the end
......
......@@ -619,9 +619,9 @@
</style>
<style name="OmniboxIcon" parent="LocationBarButton">
<item name="android:layout_width">@dimen/location_bar_start_icon_width</item>
<item name="android:layout_width">@dimen/location_bar_icon_width</item>
<item name="android:layout_height">match_parent</item>
<item name="android:layout_marginEnd">@dimen/location_bar_start_icon_margin_end</item>
<item name="android:layout_marginEnd">@dimen/location_bar_icon_margin_end</item>
</style>
<!-- Revamped context menu -->
......
......@@ -70,7 +70,7 @@ public class StatusCoordinator implements View.OnClickListener, UrlTextChangeLis
Resources res = mStatusView.getResources();
mMediator.setUrlMinWidth(res.getDimensionPixelSize(R.dimen.location_bar_min_url_width)
+ res.getDimensionPixelSize(R.dimen.location_bar_start_icon_width)
+ res.getDimensionPixelSize(R.dimen.location_bar_icon_width)
+ (res.getDimensionPixelSize(R.dimen.location_bar_lateral_padding) * 2));
mMediator.setSeparatorFieldMinWidth(
......
......@@ -454,8 +454,8 @@ public class StatusView extends LinearLayout {
getResources().getDimensionPixelSize(R.dimen.location_bar_lateral_padding);
}
if (mTouchDelegateEndOffset == 0) {
mTouchDelegateEndOffset = getResources().getDimensionPixelSize(
R.dimen.location_bar_start_icon_margin_end);
mTouchDelegateEndOffset =
getResources().getDimensionPixelSize(R.dimen.location_bar_icon_margin_end);
}
touchDelegateBounds.left -= isRtl ? mTouchDelegateEndOffset : mTouchDelegateStartOffset;
touchDelegateBounds.right += isRtl ? mTouchDelegateStartOffset : mTouchDelegateEndOffset;
......
......@@ -15,6 +15,8 @@ import static org.hamcrest.Matchers.not;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertNull;
import static org.mockito.Mockito.doReturn;
import static org.chromium.content_public.browser.test.util.TestThreadUtils.runOnUiThreadBlocking;
......@@ -24,9 +26,9 @@ import android.widget.LinearLayout;
import androidx.test.filters.MediumTest;
import org.junit.Assert;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.Mock;
import org.mockito.MockitoAnnotations;
import org.chromium.base.test.util.Feature;
......@@ -47,6 +49,9 @@ import org.chromium.ui.test.util.UiRestriction;
*/
@RunWith(ChromeJUnit4ClassRunner.class)
public class StatusViewTest extends DummyUiActivityTestCase {
@Mock
private StatusView.StatusViewDelegate mStatusViewDelegate;
private StatusView mStatusView;
private PropertyModel mStatusModel;
private PropertyModelChangeProcessor mStatusMCP;
......@@ -68,6 +73,7 @@ public class StatusViewTest extends DummyUiActivityTestCase {
.getLayoutInflater()
.inflate(R.layout.location_status, view, true)
.findViewById(R.id.location_bar_status);
mStatusView.setDelegateForTesting(mStatusViewDelegate);
mStatusView.setCompositeTouchDelegate(new CompositeTouchDelegate(view));
mStatusView.setToolbarCommonPropertiesModel(
new LocationBarModel(mStatusView.getContext()));
......@@ -118,7 +124,7 @@ public class StatusViewTest extends DummyUiActivityTestCase {
runOnUiThreadBlocking(
() -> { mStatusModel.set(StatusProperties.STATUS_ICON_RESOURCE, null); });
onView(withId(R.id.location_bar_status_icon))
.check((view, e) -> Assert.assertNull(mStatusView.getTouchDelegateForTesting()));
.check((view, e) -> assertNull(mStatusView.getTouchDelegateForTesting()));
}
@Test
......@@ -147,7 +153,7 @@ public class StatusViewTest extends DummyUiActivityTestCase {
@Restriction(UiRestriction.RESTRICTION_TYPE_PHONE)
@Feature({"Omnibox"})
@EnableFeatures("OmniboxSearchEngineLogo")
public void testSearchEngineLogo_noIncognitoPadding() {
public void testSearchEngineLogo_incognito_noMarginEnd() {
// Set incognito badge visible.
runOnUiThreadBlocking(
() -> { mStatusModel.set(StatusProperties.INCOGNITO_BADGE_VISIBLE, true); });
......@@ -160,7 +166,31 @@ public class StatusViewTest extends DummyUiActivityTestCase {
onView(withId(R.id.location_bar_incognito_badge)).check((view, e) -> {
ViewGroup.MarginLayoutParams params =
(ViewGroup.MarginLayoutParams) view.getLayoutParams();
assertEquals(params.getMarginEnd(), 0);
assertEquals(0, params.getMarginEnd());
});
}
@Test
@MediumTest
@Feature({"Omnibox"})
@EnableFeatures("OmniboxSearchEngineLogo")
public void testSearchEngineLogo_noIncognito_statusDimensions() {
doReturn(true).when(mStatusViewDelegate).shouldShowSearchEngineLogo(false);
runOnUiThreadBlocking(() -> {
mStatusModel.set(StatusProperties.STATUS_ICON_RESOURCE,
new StatusIconResource(R.drawable.ic_logo_googleg_24dp, 0));
mStatusModel.set(StatusProperties.SHOW_STATUS_ICON, true);
mStatusView.updateSearchEngineStatusIcon(true, true, "");
});
int expectedWidth = getActivity().getResources().getDimensionPixelSize(
R.dimen.location_bar_status_icon_width);
onView(withId(R.id.location_bar_status_icon)).check((view, e) -> {
assertEquals(expectedWidth, view.getMeasuredWidth());
});
int expectedPadding = getActivity().getResources().getDimensionPixelOffset(
R.dimen.sei_location_bar_icon_end_padding);
onView(withId(R.id.location_bar_status)).check((view, e) -> {
assertEquals(expectedPadding, view.getPaddingEnd());
});
}
}
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