Merge "Update screenshot and long screenshot UI to match mocks" into udc-dev am: 2f80e5e175

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/22760954

Change-Id: I7044dba45415f77be68e12b367683bbfc27490c9
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
Miranda Kephart
2023-05-05 16:58:41 +00:00
committed by Automerger Merge Worker
17 changed files with 122 additions and 73 deletions

View File

@@ -20,7 +20,7 @@
android:color="@color/overlay_button_ripple">
<item android:id="@android:id/background">
<shape android:shape="rectangle">
<solid android:color="?androidprv:attr/colorAccentSecondary"/>
<solid android:color="?androidprv:attr/materialColorSecondary"/>
<corners android:radius="@dimen/overlay_button_corner_radius"/>
</shape>
</item>

View File

@@ -18,6 +18,6 @@
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:androidprv="http://schemas.android.com/apk/prv/res/android"
android:shape="rectangle">
<solid android:color="?androidprv:attr/colorSurface"/>
<solid android:color="?androidprv:attr/materialColorSurfaceBright"/>
<corners android:radius="@dimen/overlay_action_container_corner_radius"/>
</shape>

View File

@@ -16,14 +16,11 @@
-->
<vector xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:androidprv="http://schemas.android.com/apk/prv/res/android"
android:width="48dp"
android:height="48dp"
android:viewportWidth="32.0"
android:viewportHeight="32.0">
android:width="24dp"
android:height="24dp"
android:viewportWidth="24.0"
android:viewportHeight="24.0">
<path
android:fillColor="?androidprv:attr/colorAccentTertiary"
android:pathData="M16,16m-16,0a16,16 0,1 1,32 0a16,16 0,1 1,-32 0"/>
<path
android:fillColor="?attr/overlayButtonTextColor"
android:pathData="M23,10.41L21.59,9 16,14.59 10.41,9 9,10.41 14.59,16 9,21.59 10.41,23 16,17.41 21.59,23 23,21.59 17.41,16z"/>
</vector>
android:fillColor="#ff000000"
android:pathData="M12,12m-12,0a12,12 0,1 1,24 0a12,12 0,1 1,-24 0"/>
</vector>

View File

@@ -18,6 +18,6 @@
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:androidprv="http://schemas.android.com/apk/prv/res/android"
android:shape="rectangle">
<solid android:color="?androidprv:attr/colorSurface"/>
<corners android:radius="24dp"/>
<solid android:color="?androidprv:attr/materialColorSurfaceBright"/>
<corners android:radius="16dp"/>
</shape>

View File

@@ -17,12 +17,11 @@
<!-- Button background for activities downstream of overlays
(clipboard text editor, long screenshots) -->
<ripple xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:androidprv="http://schemas.android.com/apk/prv/res/android"
android:color="@color/overlay_button_ripple">
<item android:id="@android:id/background">
<inset android:insetTop="4dp" android:insetBottom="4dp">
<shape android:shape="rectangle">
<solid android:color="?androidprv:attr/colorAccentPrimary"/>
<solid android:color="#fff"/>
<corners android:radius="20dp"/>
<size android:height="40dp"/>
</shape>
@@ -31,7 +30,7 @@
<item android:id="@android:id/mask">
<inset android:insetTop="4dp" android:insetBottom="4dp">
<shape android:shape="rectangle">
<solid android:color="?android:textColorPrimary"/>
<solid android:color="#000"/>
<corners android:radius="20dp"/>
<size android:height="40dp"/>
</shape>

View File

@@ -0,0 +1,40 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
~ Copyright (C) 2021 The Android Open Source Project
~
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
~ You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
<!-- Button background for activities downstream of overlays
(clipboard text editor, long screenshots) -->
<ripple xmlns:android="http://schemas.android.com/apk/res/android"
android:color="@color/overlay_button_ripple">
<item android:id="@android:id/background">
<inset android:insetTop="4dp" android:insetBottom="4dp">
<shape android:shape="rectangle">
<solid android:color="@android:color/transparent" />
<stroke android:width="1dp" android:color="#fff"/>
<corners android:radius="20dp"/>
<size android:height="40dp"/>
</shape>
</inset>
</item>
<item android:id="@android:id/mask">
<inset android:insetTop="4dp" android:insetBottom="4dp">
<shape android:shape="rectangle">
<solid android:color="#000"/>
<corners android:radius="20dp"/>
<size android:height="40dp"/>
</shape>
</inset>
</item>
</ripple>

View File

@@ -17,5 +17,6 @@
<shape
xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<corners android:radius="20dp"/>
<!-- preview radius should be equal to [overlay border radius - overlay border width] -->
<corners android:radius="12dp"/>
</shape>

View File

@@ -20,13 +20,7 @@
android:color="@color/overlay_button_ripple">
<item android:id="@android:id/background">
<shape android:shape="rectangle">
<solid android:color="?androidprv:attr/colorAccentPrimary"/>
<corners android:radius="16dp"/>
</shape>
</item>
<item android:id="@android:id/mask">
<shape android:shape="rectangle">
<solid android:color="?android:textColorPrimary"/>
<solid android:color="?androidprv:attr/materialColorSecondaryFixedDim"/>
<corners android:radius="16dp"/>
</shape>
</item>

View File

@@ -1,6 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:androidprv="http://schemas.android.com/apk/prv/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent">
@@ -15,6 +16,8 @@
android:paddingHorizontal="16dp"
android:background="@drawable/overlay_button_background"
android:text="@string/clipboard_edit_text_done"
android:backgroundTint="?androidprv:attr/materialColorPrimary"
android:textColor="?androidprv:attr/materialColorOnPrimary"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />

View File

@@ -179,6 +179,10 @@
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_margin="@dimen/overlay_dismiss_button_margin"
android:src="@drawable/overlay_cancel"/>
android:background="@drawable/circular_background"
android:backgroundTint="?androidprv:attr/materialColorPrimaryFixedDim"
android:tint="?androidprv:attr/materialColorOnPrimaryFixed"
android:padding="4dp"
android:src="@drawable/ic_close"/>
</FrameLayout>
</com.android.systemui.clipboardoverlay.ClipboardOverlayView>

View File

@@ -16,9 +16,9 @@
-->
<androidx.constraintlayout.widget.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:androidprv="http://schemas.android.com/apk/prv/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:background="?android:colorBackgroundFloating"
android:id="@+id/root"
android:layout_width="match_parent"
android:layout_height="match_parent">
@@ -32,7 +32,8 @@
android:layout_marginStart="8dp"
android:layout_marginTop="@dimen/long_screenshot_action_bar_top_margin"
android:background="@drawable/overlay_button_background"
android:textColor="?android:textColorSecondary"
android:backgroundTint="?androidprv:attr/materialColorPrimary"
android:textColor="?androidprv:attr/materialColorOnPrimary"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintBottom_toTopOf="@id/preview" />
@@ -45,8 +46,9 @@
android:text="@android:string/cancel"
android:layout_marginStart="6dp"
android:layout_marginTop="@dimen/long_screenshot_action_bar_top_margin"
android:background="@drawable/overlay_button_background"
android:textColor="?android:textColorSecondary"
android:background="@drawable/overlay_button_outline"
android:backgroundTint="?androidprv:attr/materialColorPrimary"
android:textColor="?androidprv:attr/materialColorOnSurface"
app:layout_constraintStart_toEndOf="@id/save"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintBottom_toTopOf="@id/preview"
@@ -55,7 +57,7 @@
<ImageButton
android:id="@+id/share"
style="@android:style/Widget.Material.Button.Borderless"
android:tint="?android:textColorPrimary"
android:tint="?androidprv:attr/materialColorOnSurface"
android:layout_width="48dp"
android:layout_height="48dp"
android:layout_marginEnd="8dp"
@@ -112,10 +114,10 @@
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintBottom_toBottomOf="parent"
app:handleThickness="@dimen/screenshot_crop_handle_thickness"
app:handleColor="?android:attr/colorAccent"
app:scrimColor="?android:colorBackgroundFloating"
app:handleColor="?androidprv:attr/materialColorSecondary"
app:scrimColor="?androidprv:attr/materialColorSurfaceContainer"
app:scrimAlpha="128"
app:containerBackgroundColor="?android:colorBackgroundFloating"
app:containerBackgroundColor="?androidprv:attr/materialColorSurfaceContainer"
tools:background="?android:colorBackground"
tools:minHeight="100dp"
tools:minWidth="100dp" />
@@ -129,12 +131,11 @@
app:layout_constraintTop_toTopOf="@id/preview"
app:layout_constraintLeft_toLeftOf="parent"
app:handleThickness="@dimen/screenshot_crop_handle_thickness"
app:handleColor="?android:attr/colorAccent"
app:scrimColor="?android:colorBackgroundFloating"
app:handleColor="?androidprv:attr/materialColorSecondary"
app:scrimColor="?androidprv:attr/materialColorSurfaceContainer"
app:scrimAlpha="128"
app:borderThickness="4dp"
app:borderColor="#fff"
/>
app:borderColor="?androidprv:attr/materialColorSurfaceBright" />
<ImageButton
android:id="@+id/edit"
@@ -146,12 +147,11 @@
android:background="@drawable/screenshot_edit_background"
android:src="@drawable/ic_screenshot_edit"
android:contentDescription="@string/screenshot_edit_label"
android:tint="?android:textColorSecondary"
android:tint="?androidprv:attr/materialColorOnSecondaryFixed"
android:padding="16dp"
android:scaleType="fitCenter"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
/>
app:layout_constraintEnd_toEndOf="parent"/>
<ImageView
android:id="@+id/transition"
@@ -160,7 +160,6 @@
app:layout_constraintTop_toTopOf="@id/preview"
app:layout_constraintLeft_toLeftOf="parent"
android:scaleType="centerCrop"
android:visibility="invisible"
/>
android:visibility="invisible" />
</androidx.constraintlayout.widget.ConstraintLayout>

View File

@@ -16,12 +16,12 @@
-->
<com.android.systemui.screenshot.OverlayActionChip
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:androidprv="http://schemas.android.com/apk/prv/res/android"
android:id="@+id/overlay_action_chip"
android:theme="@style/FloatingOverlay"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/overlay_action_chip_margin_start"
android:paddingVertical="@dimen/overlay_action_chip_margin_vertical"
android:layout_gravity="center"
android:gravity="center"
android:alpha="0.0">
@@ -33,7 +33,7 @@
android:gravity="center">
<ImageView
android:id="@+id/overlay_action_chip_icon"
android:tint="?attr/overlayButtonTextColor"
android:tint="?androidprv:attr/materialColorOnSecondary"
android:layout_width="@dimen/overlay_action_chip_icon_size"
android:layout_height="@dimen/overlay_action_chip_icon_size"/>
<TextView
@@ -42,6 +42,6 @@
android:layout_height="wrap_content"
android:fontFamily="@*android:string/config_headlineFontFamilyMedium"
android:textSize="@dimen/overlay_action_chip_text_size"
android:textColor="?attr/overlayButtonTextColor"/>
android:textColor="?androidprv:attr/materialColorOnSecondary"/>
</LinearLayout>
</com.android.systemui.screenshot.OverlayActionChip>

View File

@@ -16,6 +16,7 @@
-->
<com.android.systemui.screenshot.DraggableConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:androidprv="http://schemas.android.com/apk/prv/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent">
@@ -68,7 +69,7 @@
android:layout_marginTop="@dimen/overlay_border_width_neg"
android:layout_marginEnd="@dimen/overlay_border_width_neg"
android:layout_marginBottom="@dimen/overlay_preview_container_margin"
android:elevation="7dp"
android:elevation="8dp"
android:alpha="0"
android:background="@drawable/overlay_border"
app:layout_constraintStart_toStartOf="@id/actions_container_background"
@@ -83,7 +84,7 @@
android:layout_marginStart="@dimen/overlay_border_width"
android:layout_marginBottom="@dimen/overlay_border_width"
android:layout_gravity="center"
android:elevation="7dp"
android:elevation="8dp"
android:contentDescription="@string/screenshot_edit_description"
android:scaleType="fitEnd"
android:background="@drawable/overlay_preview_background"
@@ -93,17 +94,17 @@
app:layout_constraintBottom_toBottomOf="@id/screenshot_preview_border"/>
<ImageView
android:id="@+id/screenshot_badge"
android:layout_width="48dp"
android:layout_height="48dp"
android:layout_width="56dp"
android:layout_height="56dp"
android:visibility="gone"
android:elevation="8dp"
android:elevation="9dp"
app:layout_constraintBottom_toBottomOf="@id/screenshot_preview_border"
app:layout_constraintEnd_toEndOf="@id/screenshot_preview_border"/>
<FrameLayout
android:id="@+id/screenshot_dismiss_button"
android:layout_width="@dimen/overlay_dismiss_button_tappable_size"
android:layout_height="@dimen/overlay_dismiss_button_tappable_size"
android:elevation="10dp"
android:elevation="11dp"
android:visibility="gone"
app:layout_constraintStart_toEndOf="@id/screenshot_preview"
app:layout_constraintEnd_toEndOf="@id/screenshot_preview"
@@ -115,7 +116,11 @@
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_margin="@dimen/overlay_dismiss_button_margin"
android:src="@drawable/overlay_cancel"/>
android:background="@drawable/circular_background"
android:backgroundTint="?androidprv:attr/materialColorPrimary"
android:tint="?androidprv:attr/materialColorOnPrimary"
android:padding="4dp"
android:src="@drawable/ic_close"/>
</FrameLayout>
<ImageView
android:id="@+id/screenshot_scrollable_preview"
@@ -150,8 +155,7 @@
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintWidth_max="450dp"
app:layout_constraintHorizontal_bias="0"
>
app:layout_constraintHorizontal_bias="0">
<include layout="@layout/screenshot_work_profile_first_run" />
<include layout="@layout/screenshot_detection_notice" />
</FrameLayout>

View File

@@ -1,6 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:androidprv="http://schemas.android.com/apk/prv/res/android"
android:id="@+id/work_profile_first_run"
android:layout_height="wrap_content"
android:layout_width="match_parent"
@@ -33,9 +34,13 @@
android:layout_height="@dimen/overlay_dismiss_button_tappable_size"
android:contentDescription="@string/screenshot_dismiss_work_profile">
<ImageView
android:layout_width="24dp"
android:layout_height="24dp"
android:layout_width="16dp"
android:layout_height="16dp"
android:layout_gravity="center"
android:src="@drawable/overlay_cancel"/>
android:background="@drawable/circular_background"
android:backgroundTint="?androidprv:attr/materialColorSurfaceContainerHigh"
android:tint="?androidprv:attr/materialColorOnSurface"
android:padding="2dp"
android:src="@drawable/ic_close"/>
</FrameLayout>
</LinearLayout>

View File

@@ -342,23 +342,22 @@
<dimen name="screenshot_crop_handle_thickness">3dp</dimen>
<dimen name="long_screenshot_action_bar_top_margin">8dp</dimen>
<dimen name="long_screenshot_action_bar_top_margin">4dp</dimen>
<!-- Dimensions shared between "overlays" (clipboard and screenshot preview UIs) -->
<!-- Constrained size of the floating overlay preview -->
<dimen name="overlay_x_scale">80dp</dimen>
<!-- Radius of the chip background on floating overlay actions -->
<dimen name="overlay_button_corner_radius">8dp</dimen>
<dimen name="overlay_button_corner_radius">16dp</dimen>
<!-- Margin between successive chips -->
<dimen name="overlay_action_chip_margin_start">8dp</dimen>
<!-- Padding to make tappable chip height 48dp (18+11+11+4+4) -->
<dimen name="overlay_action_chip_margin_vertical">4dp</dimen>
<dimen name="overlay_action_chip_padding_vertical">11dp</dimen>
<dimen name="overlay_action_chip_icon_size">18sp</dimen>
<dimen name="overlay_action_chip_padding_vertical">12dp</dimen>
<dimen name="overlay_action_chip_icon_size">24sp</dimen>
<!-- Padding on each side of the icon for icon-only chips -->
<dimen name="overlay_action_chip_icon_only_padding_horizontal">14dp</dimen>
<dimen name="overlay_action_chip_icon_only_padding_horizontal">12dp</dimen>
<!-- Padding at the edges of the chip for icon-and-text chips -->
<dimen name="overlay_action_chip_padding_horizontal">12dp</dimen>
<dimen name="overlay_action_chip_padding_start">12dp</dimen>
<dimen name="overlay_action_chip_padding_end">16dp</dimen>
<!-- Spacing between chip icon and chip text -->
<dimen name="overlay_action_chip_spacing">8dp</dimen>
<dimen name="overlay_action_chip_text_size">14sp</dimen>
@@ -368,8 +367,8 @@
<dimen name="overlay_action_container_margin_horizontal">8dp</dimen>
<dimen name="overlay_action_container_margin_bottom">6dp</dimen>
<dimen name="overlay_bg_protection_height">242dp</dimen>
<dimen name="overlay_action_container_corner_radius">18dp</dimen>
<dimen name="overlay_action_container_padding_vertical">4dp</dimen>
<dimen name="overlay_action_container_corner_radius">20dp</dimen>
<dimen name="overlay_action_container_padding_vertical">8dp</dimen>
<dimen name="overlay_action_container_padding_right">8dp</dimen>
<dimen name="overlay_action_container_padding_end">8dp</dimen>
<dimen name="overlay_dismiss_button_tappable_size">48dp</dimen>

View File

@@ -782,10 +782,12 @@
</style>
<style name="LongScreenshotActivity" parent="@android:style/Theme.DeviceDefault.DayNight">
<item name="android:colorBackground">?androidprv:attr/materialColorSurfaceContainer</item>
<item name="android:windowNoTitle">true</item>
<item name="android:windowLightStatusBar">true</item>
<item name="android:windowLightNavigationBar">true</item>
<item name="android:navigationBarColor">?android:attr/colorBackgroundFloating</item>
<item name="android:statusBarColor">?androidprv:attr/materialColorSurfaceContainer</item>
<item name="android:navigationBarColor">?androidprv:attr/materialColorSurfaceContainerHighest</item>
<item name="android:windowActivityTransitions">true</item>
</style>

View File

@@ -121,13 +121,15 @@ public class OverlayActionChip extends FrameLayout {
LinearLayout.LayoutParams textParams =
(LinearLayout.LayoutParams) mTextView.getLayoutParams();
if (hasText) {
int paddingHorizontal = mContext.getResources().getDimensionPixelSize(
R.dimen.overlay_action_chip_padding_horizontal);
int paddingStart = mContext.getResources().getDimensionPixelSize(
R.dimen.overlay_action_chip_padding_start);
int spacing = mContext.getResources().getDimensionPixelSize(
R.dimen.overlay_action_chip_spacing);
iconParams.setMarginStart(paddingHorizontal);
int paddingEnd = mContext.getResources().getDimensionPixelSize(
R.dimen.overlay_action_chip_padding_end);
iconParams.setMarginStart(paddingStart);
iconParams.setMarginEnd(spacing);
textParams.setMarginEnd(paddingHorizontal);
textParams.setMarginEnd(paddingEnd);
} else {
int paddingHorizontal = mContext.getResources().getDimensionPixelSize(
R.dimen.overlay_action_chip_icon_only_padding_horizontal);