Update controls panel layout according to the design
Test: Manual on phone, foldable and a tablet Fixes: 266408709 Change-Id: I5e5a64438e566ebb7ea76c3b02d64f4c4d44b783
This commit is contained in:
@@ -18,5 +18,5 @@
|
||||
|
||||
<shape xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<solid android:color="#1F1F1F" />
|
||||
<corners android:radius="@dimen/notification_corner_radius" />
|
||||
<corners android:radius="@dimen/controls_panel_corner_radius" />
|
||||
</shape>
|
||||
@@ -15,19 +15,11 @@
|
||||
limitations under the License.
|
||||
-->
|
||||
|
||||
<FrameLayout
|
||||
<LinearLayout
|
||||
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:id="@+id/control_detail_root"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:orientation="vertical">
|
||||
|
||||
|
||||
<LinearLayout
|
||||
android:id="@+id/global_actions_controls"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:orientation="vertical"
|
||||
android:paddingHorizontal="@dimen/controls_padding_horizontal" />
|
||||
|
||||
</FrameLayout>
|
||||
</LinearLayout>
|
||||
|
||||
@@ -13,82 +13,94 @@
|
||||
~ See the License for the specific language governing permissions and
|
||||
~ limitations under the License.
|
||||
-->
|
||||
<merge
|
||||
xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<merge xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
tools:orientation="vertical"
|
||||
tools:parentTag="android.widget.LinearLayout">
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:orientation="horizontal"
|
||||
android:layout_marginBottom="@dimen/controls_header_bottom_margin">
|
||||
|
||||
<!-- make sure the header stays centered in the layout by adding a spacer -->
|
||||
<Space
|
||||
android:id="@+id/controls_spacer"
|
||||
android:layout_width="@dimen/controls_header_menu_size"
|
||||
android:layout_height="1dp"
|
||||
android:visibility="gone" />
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/controls_close"
|
||||
android:contentDescription="@string/accessibility_desc_close"
|
||||
android:src="@drawable/ic_close"
|
||||
android:background="?android:attr/selectableItemBackgroundBorderless"
|
||||
android:tint="@color/control_primary_text"
|
||||
android:layout_width="@dimen/controls_header_menu_size"
|
||||
android:layout_height="@dimen/controls_header_menu_size"
|
||||
android:padding="12dp"
|
||||
android:visibility="gone" />
|
||||
<!-- need to keep this outer view in order to have a correctly sized anchor
|
||||
for the dropdown menu, as well as dropdown background in the right place -->
|
||||
<LinearLayout
|
||||
android:id="@+id/controls_header"
|
||||
android:orientation="horizontal"
|
||||
android:layout_width="0dp"
|
||||
android:layout_weight="1"
|
||||
android:minHeight="48dp"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="center"
|
||||
android:gravity="center">
|
||||
<TextView
|
||||
style="@style/Control.Spinner.Header"
|
||||
android:clickable="false"
|
||||
android:id="@+id/app_or_structure_spinner"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="center" />
|
||||
</LinearLayout>
|
||||
<ImageView
|
||||
android:id="@+id/controls_more"
|
||||
android:src="@drawable/ic_more_vert"
|
||||
android:layout_width="@dimen/controls_header_menu_size"
|
||||
android:layout_height="@dimen/controls_header_menu_size"
|
||||
android:padding="12dp"
|
||||
android:tint="@color/control_more_vert"
|
||||
android:layout_gravity="center"
|
||||
android:contentDescription="@string/accessibility_menu"
|
||||
android:background="?android:attr/selectableItemBackgroundBorderless" />
|
||||
</LinearLayout>
|
||||
android:paddingHorizontal="@dimen/controls_header_horizontal_padding"
|
||||
android:layout_marginBottom="@dimen/controls_header_bottom_margin"
|
||||
android:orientation="horizontal">
|
||||
|
||||
<ScrollView
|
||||
<!-- make sure the header stays centered in the layout by adding a spacer -->
|
||||
<Space
|
||||
android:id="@+id/controls_spacer"
|
||||
android:layout_width="@dimen/controls_header_menu_button_size"
|
||||
android:layout_height="1dp"
|
||||
android:visibility="gone" />
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/controls_close"
|
||||
android:layout_width="@dimen/controls_header_menu_button_size"
|
||||
android:layout_height="@dimen/controls_header_menu_button_size"
|
||||
android:layout_gravity="center_vertical"
|
||||
android:background="?android:attr/selectableItemBackgroundBorderless"
|
||||
android:contentDescription="@string/accessibility_desc_close"
|
||||
android:padding="12dp"
|
||||
android:src="@drawable/ic_close"
|
||||
android:tint="@color/control_primary_text"
|
||||
android:visibility="gone"
|
||||
tools:visibility="visible" />
|
||||
|
||||
<!-- need to keep this outer view in order to have a correctly sized anchor
|
||||
for the dropdown menu, as well as dropdown background in the right place -->
|
||||
<LinearLayout
|
||||
android:id="@+id/controls_header"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="center"
|
||||
android:layout_weight="1"
|
||||
android:gravity="center"
|
||||
android:minHeight="48dp"
|
||||
android:orientation="horizontal">
|
||||
|
||||
<TextView
|
||||
android:id="@+id/app_or_structure_spinner"
|
||||
style="@style/Control.Spinner.Header"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="center"
|
||||
android:clickable="false"
|
||||
tools:text="Test app" />
|
||||
</LinearLayout>
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/controls_more"
|
||||
android:layout_width="@dimen/controls_header_menu_button_size"
|
||||
android:layout_height="@dimen/controls_header_menu_button_size"
|
||||
android:layout_gravity="center_vertical"
|
||||
android:background="?android:attr/selectableItemBackgroundBorderless"
|
||||
android:contentDescription="@string/accessibility_menu"
|
||||
android:padding="12dp"
|
||||
android:src="@drawable/ic_more_vert"
|
||||
android:tint="@color/control_more_vert" />
|
||||
</LinearLayout>
|
||||
|
||||
<ScrollView
|
||||
android:id="@+id/controls_scroll_view"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="0dp"
|
||||
android:layout_marginHorizontal="@dimen/controls_content_margin_horizontal"
|
||||
android:layout_weight="1"
|
||||
android:orientation="vertical"
|
||||
android:clipChildren="true"
|
||||
android:orientation="vertical"
|
||||
android:paddingHorizontal="16dp"
|
||||
android:scrollbars="none">
|
||||
<include layout="@layout/global_actions_controls_list_view" />
|
||||
|
||||
</ScrollView>
|
||||
<include layout="@layout/global_actions_controls_list_view" />
|
||||
|
||||
<FrameLayout
|
||||
android:id="@+id/controls_panel"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="0dp"
|
||||
android:layout_weight="1"
|
||||
android:background="@drawable/controls_panel_background"
|
||||
android:visibility="gone"
|
||||
/>
|
||||
</ScrollView>
|
||||
|
||||
<FrameLayout
|
||||
android:id="@+id/controls_panel"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="0dp"
|
||||
android:layout_marginHorizontal="@dimen/controls_content_margin_horizontal"
|
||||
android:layout_weight="1"
|
||||
android:background="@drawable/controls_panel_background"
|
||||
android:visibility="gone"
|
||||
tools:visibility="visible" />
|
||||
</merge>
|
||||
|
||||
@@ -64,5 +64,6 @@
|
||||
|
||||
<dimen name="qs_panel_padding_top">@dimen/qqs_layout_margin_top</dimen>
|
||||
|
||||
<dimen name="controls_padding_horizontal">16dp</dimen>
|
||||
<dimen name="controls_header_horizontal_padding">12dp</dimen>
|
||||
<dimen name="controls_content_margin_horizontal">16dp</dimen>
|
||||
</resources>
|
||||
|
||||
@@ -87,4 +87,7 @@
|
||||
|
||||
<!-- Biometric Auth pattern view size, better to align keyguard_security_width -->
|
||||
<dimen name="biometric_auth_pattern_view_size">348dp</dimen>
|
||||
|
||||
<dimen name="controls_header_horizontal_padding">12dp</dimen>
|
||||
<dimen name="controls_content_margin_horizontal">24dp</dimen>
|
||||
</resources>
|
||||
|
||||
@@ -37,6 +37,8 @@
|
||||
<dimen name="qs_media_rec_album_size">112dp</dimen>
|
||||
<dimen name="qs_media_rec_album_side_margin">16dp</dimen>
|
||||
|
||||
<dimen name="controls_panel_corner_radius">40dp</dimen>
|
||||
|
||||
<dimen name="lockscreen_shade_max_over_scroll_amount">42dp</dimen>
|
||||
|
||||
<!-- Roughly the same distance as media on LS to media on QS. We will translate by this value
|
||||
|
||||
@@ -33,5 +33,7 @@
|
||||
side -->
|
||||
<dimen name="qs_tiles_page_horizontal_margin">60dp</dimen>
|
||||
|
||||
<dimen name="controls_panel_corner_radius">46dp</dimen>
|
||||
|
||||
<dimen name="notification_section_divider_height">16dp</dimen>
|
||||
</resources>
|
||||
|
||||
@@ -19,7 +19,8 @@
|
||||
<!-- gap on either side of status bar notification icons -->
|
||||
<dimen name="status_bar_icon_padding">1dp</dimen>
|
||||
|
||||
<dimen name="controls_padding_horizontal">40dp</dimen>
|
||||
<dimen name="controls_header_horizontal_padding">28dp</dimen>
|
||||
<dimen name="controls_content_margin_horizontal">40dp</dimen>
|
||||
|
||||
<dimen name="large_screen_shade_header_height">56dp</dimen>
|
||||
|
||||
|
||||
@@ -1153,11 +1153,13 @@
|
||||
|
||||
<!-- Home Controls -->
|
||||
<dimen name="controls_header_menu_size">48dp</dimen>
|
||||
<dimen name="controls_header_menu_button_size">48dp</dimen>
|
||||
<dimen name="controls_header_bottom_margin">16dp</dimen>
|
||||
<dimen name="controls_header_horizontal_padding">12dp</dimen>
|
||||
<dimen name="controls_header_app_icon_size">24dp</dimen>
|
||||
<dimen name="controls_top_margin">48dp</dimen>
|
||||
<dimen name="controls_padding_horizontal">0dp</dimen>
|
||||
<dimen name="control_header_text_size">20sp</dimen>
|
||||
<dimen name="controls_content_margin_horizontal">0dp</dimen>
|
||||
<dimen name="control_header_text_size">24sp</dimen>
|
||||
<dimen name="control_item_text_size">16sp</dimen>
|
||||
<dimen name="control_menu_item_text_size">16sp</dimen>
|
||||
<dimen name="control_menu_item_min_height">56dp</dimen>
|
||||
@@ -1188,6 +1190,8 @@
|
||||
<item name="controls_task_view_width_percentage" translatable="false" format="float" type="dimen">1.0</item>
|
||||
<dimen name="controls_task_view_right_margin">0dp</dimen>
|
||||
|
||||
<dimen name="controls_panel_corner_radius">42dp</dimen>
|
||||
|
||||
<!-- Home Controls activity view detail panel-->
|
||||
<dimen name="controls_activity_view_corner_radius">@*android:dimen/config_bottomDialogCornerRadius</dimen>
|
||||
|
||||
|
||||
@@ -68,7 +68,7 @@ class ControlsActivity @Inject constructor(
|
||||
|
||||
getLifecycle().addObserver(
|
||||
ControlsAnimations.observerForAnimations(
|
||||
requireViewById<ViewGroup>(R.id.control_detail_root),
|
||||
requireViewById(R.id.control_detail_root),
|
||||
window,
|
||||
intent,
|
||||
!featureFlags.isEnabled(Flags.USE_APP_PANELS)
|
||||
@@ -95,7 +95,7 @@ class ControlsActivity @Inject constructor(
|
||||
override fun onStart() {
|
||||
super.onStart()
|
||||
|
||||
parent = requireViewById<ViewGroup>(R.id.global_actions_controls)
|
||||
parent = requireViewById(R.id.control_detail_root)
|
||||
parent.alpha = 0f
|
||||
if (featureFlags.isEnabled(Flags.USE_APP_PANELS) && !keyguardStateController.isUnlocked) {
|
||||
controlsSettingsDialogManager.maybeShowDialog(this) {
|
||||
|
||||
@@ -71,7 +71,7 @@ class PanelTaskViewController(
|
||||
taskView.post {
|
||||
val roundedCorner =
|
||||
activityContext.resources.getDimensionPixelSize(
|
||||
R.dimen.notification_corner_radius
|
||||
R.dimen.controls_panel_corner_radius
|
||||
)
|
||||
val radii = FloatArray(8) { roundedCorner.toFloat() }
|
||||
taskView.background =
|
||||
|
||||
Reference in New Issue
Block a user