Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 7a76ea12 authored by Jiaming Cheng's avatar Jiaming Cheng Committed by Android (Google) Code Review
Browse files

Merge "[QSDetailedView] Revamp the internet details view UI (part1)" into main

parents d73b74bb 65e205e2
Loading
Loading
Loading
Loading
+470 −0
Original line number Diff line number Diff line
<?xml version="1.0" encoding="utf-8"?><!--
  ~ Copyright (C) 2025 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.
  -->

<LinearLayout 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:id="@+id/internet_connectivity_details"
    android:layout_width="@dimen/large_dialog_width"
    android:layout_height="wrap_content"
    android:orientation="vertical">

    <LinearLayout
        android:layout_width="@dimen/internet_dialog_progress_bar_width"
        android:layout_height="wrap_content"
        android:layout_gravity="center_horizontal"
        android:layout_marginBottom="@dimen/internet_dialog_network_layout_margin"
        android:orientation="vertical"
        android:paddingTop="@dimen/settingslib_expressive_space_extrasmall3">

        <ProgressBar
            android:id="@+id/wifi_searching_progress"
            style="@style/TrimmedHorizontalProgressBar"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_gravity="center_horizontal"
            android:paddingTop="@dimen/settingslib_expressive_space_extrasmall3"
            android:progressBackgroundTint="@androidprv:color/materialColorSecondaryContainer"
            android:progressTint="@androidprv:color/materialColorPrimary"
            android:splitTrack="false"
            android:visibility="gone" />
    </LinearLayout>

    <androidx.core.widget.NestedScrollView
        android:id="@+id/scroll_view"
        android:layout_width="match_parent"
        android:layout_height="match_parent">

        <LinearLayout
            android:id="@+id/scroll_layout"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:orientation="vertical">

            <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:orientation="vertical">

                <LinearLayout
                    android:id="@+id/ethernet_layout"
                    android:baselineAligned="false"
                    style="@style/InternetDialog.Network"
                    android:background="@drawable/settingslib_switch_bar_bg_on"
                    android:visibility="gone">

                    <FrameLayout
                        android:layout_width="24dp"
                        android:layout_height="24dp"
                        android:layout_gravity="center_vertical|start"
                        android:clickable="false">

                        <ImageView
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:contentDescription="@string/ethernet_label"
                            android:layout_gravity="center"
                            android:autoMirrored="true"
                            android:src="@drawable/stat_sys_ethernet_fully"
                            android:tint="@color/connected_network_primary_color" />
                    </FrameLayout>

                    <LinearLayout
                        android:layout_width="0dp"
                        android:layout_height="match_parent"
                        android:layout_weight="1"
                        android:clickable="false"
                        android:gravity="start|center_vertical"
                        android:orientation="vertical">

                        <TextView
                            style="@style/InternetDetails.EntryTitle.Active"
                            android:text="@string/ethernet_label" />

                        <TextView
                            style="@style/InternetDetails.EntrySubTitle.Active"
                            android:text="@string/to_switch_networks_disconnect_ethernet" />
                    </LinearLayout>
                </LinearLayout>

                <LinearLayout
                    android:id="@+id/mobile_network_layout"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:orientation="vertical">

                    <LinearLayout
                        android:id="@+id/turn_on_mobile_layout"
                        style="@style/InternetDialog.Network"
                        android:baselineAligned="false"
                        android:layout_height="@dimen/internet_details_toggle_row_height"
                        android:clickable="false"
                        android:focusable="false"
                        android:gravity="center">

                        <LinearLayout
                            android:layout_width="0dp"
                            android:layout_height="match_parent"
                            android:layout_weight="1"
                            android:clickable="false"
                            android:gravity="start|center_vertical"
                            android:orientation="vertical">

                            <TextView
                                android:id="@+id/mobile_toggle_title"
                                android:layout_width="wrap_content"
                                android:layout_height="wrap_content"
                                android:gravity="start|center_vertical"
                                android:text="@string/mobile_data"
                                android:textAppearance="@style/TextAppearance.TileDetailsEntryTitle" />
                        </LinearLayout>

                        <FrameLayout
                            android:layout_width="@dimen/tile_details_switch_container_width"
                            android:layout_height="@dimen/tile_details_switch_track_height"
                            android:layout_marginBottom="6dp"
                            android:layout_marginTop="6dp">

                            <com.google.android.material.materialswitch.MaterialSwitch
                                android:id="@+id/mobile_toggle"
                                android:layout_width="wrap_content"
                                android:layout_height="wrap_content"
                                android:scaleX="0.77"
                                android:scaleY="0.77"
                                android:layout_gravity="center_vertical"
                                android:focusable="false"
                                android:clickable="false"
                                android:theme="@style/Theme.Material3.DynamicColors.DayNight"
                                style="@style/SettingslibSwitchStyle.Expressive"
                                tools:ignore="UseSwitchCompatOrMaterialXml" />
                        </FrameLayout>

                    </LinearLayout>

                    <LinearLayout
                        android:id="@+id/mobile_connected_layout"
                        android:baselineAligned="false"
                        style="@style/InternetDialog.Network">

                        <FrameLayout
                            android:layout_width="wrap_content"
                            android:layout_height="24dp"
                            android:clickable="false"
                            android:layout_gravity="center_vertical|start">

                            <ImageView
                                android:id="@+id/signal_icon"
                                android:contentDescription="@string/mobile_data"
                                android:autoMirrored="true"
                                android:layout_width="wrap_content"
                                android:layout_height="wrap_content"
                                android:layout_gravity="center" />
                        </FrameLayout>

                        <LinearLayout
                            android:layout_weight="1"
                            android:orientation="vertical"
                            android:clickable="false"
                            android:layout_width="0dp"
                            android:layout_height="wrap_content"
                            android:minHeight="72dp"
                            android:gravity="center_vertical">

                            <TextView
                                android:id="@+id/mobile_title"
                                android:maxLines="1"
                                style="@style/InternetDetails.EntryTitle" />

                            <TextView
                                android:id="@+id/mobile_summary"
                                style="@style/InternetDetails.EntrySubTitle" />

                            <TextView
                                android:id="@+id/airplane_mode_summary"
                                android:text="@string/airplane_mode"
                                android:visibility="gone"
                                style="@style/InternetDetails.EntrySubTitle" />
                        </LinearLayout>

                    </LinearLayout>
                </LinearLayout>

                <ViewStub
                    android:id="@+id/secondary_mobile_network_stub"
                    android:inflatedId="@+id/secondary_mobile_network_layout"
                    android:layout="@layout/qs_dialog_secondary_mobile_network"
                    style="@style/InternetDialog.Network" />

                <LinearLayout
                    android:id="@+id/turn_on_wifi_layout"
                    style="@style/InternetDialog.Network"
                    android:baselineAligned="false"
                    android:layout_height="@dimen/internet_dialog_wifi_network_height"
                    android:gravity="center"
                    android:clickable="false"
                    android:focusable="false">

                    <LinearLayout
                        android:layout_width="0dp"
                        android:layout_height="match_parent"
                        android:layout_weight="1"
                        android:gravity="start|center_vertical"
                        android:orientation="vertical"
                        android:clickable="false">

                        <TextView
                            android:id="@+id/wifi_toggle_title"
                            android:text="@string/turn_on_wifi"
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:gravity="start|center_vertical"
                            android:textAppearance="@style/TextAppearance.TileDetailsEntryTitle" />

                        <TextView
                            android:id="@+id/wifi_toggle_summary"
                            android:text="@string/wifitrackerlib_admin_restricted_network"
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:gravity="start|center_vertical"
                            android:textAppearance="@style/TextAppearance.TileDetailsEntrySubTitle"
                            android:visibility="gone" />
                    </LinearLayout>

                    <FrameLayout
                        android:layout_width="@dimen/tile_details_switch_container_width"
                        android:layout_height="@dimen/tile_details_switch_track_height"
                        android:layout_marginTop="6dp"
                        android:layout_marginBottom="6dp">

                        <com.google.android.material.materialswitch.MaterialSwitch
                            android:id="@+id/wifi_toggle"
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:scaleX="0.77"
                            android:scaleY="0.77"
                            android:layout_gravity="center_vertical"
                            android:focusable="false"
                            android:clickable="false"
                            android:theme="@style/Theme.Material3.DynamicColors.DayNight"
                            style="@style/SettingslibSwitchStyle.Expressive"
                            tools:ignore="UseSwitchCompatOrMaterialXml" />
                    </FrameLayout>
                </LinearLayout>

                <LinearLayout
                    android:id="@+id/wifi_connected_layout"
                    style="@style/InternetDialog.Network"
                    android:baselineAligned="false"
                    android:layout_height="@dimen/internet_dialog_wifi_network_height"
                    android:paddingStart="20dp"
                    android:paddingEnd="24dp"
                    android:background="@drawable/settingslib_switch_bar_bg_on"
                    android:visibility="gone">

                    <FrameLayout
                        android:layout_width="24dp"
                        android:layout_height="24dp"
                        android:clickable="false"
                        android:layout_gravity="center_vertical|start">

                        <ImageView
                            android:id="@+id/wifi_connected_icon"
                            android:contentDescription="@string/turn_on_wifi"
                            android:layout_width="match_parent"
                            android:layout_height="match_parent"
                            android:scaleType="fitCenter"
                            android:layout_gravity="center" />
                    </FrameLayout>

                    <LinearLayout
                        android:orientation="vertical"
                        android:clickable="false"
                        android:layout_width="0dp"
                        android:layout_height="@dimen/internet_dialog_wifi_network_height"
                        android:layout_marginEnd="30dp"
                        android:layout_weight="1"
                        android:gravity="start|center_vertical">

                        <TextView
                            android:id="@+id/wifi_connected_title"
                            style="@style/InternetDetails.EntryTitle.Active"
                            android:textSize="14sp" />

                        <TextView
                            android:id="@+id/wifi_connected_summary"
                            style="@style/InternetDetails.EntrySubTitle.Active" />
                    </LinearLayout>

                    <FrameLayout
                        android:layout_width="24dp"
                        android:layout_height="match_parent"
                        android:clickable="false"
                        android:layout_gravity="end|center_vertical"
                        android:gravity="center">

                        <ImageView
                            android:id="@+id/wifi_settings_icon"
                            android:contentDescription="@string/turn_on_wifi"
                            android:src="@drawable/ic_settings_24dp"
                            android:layout_width="24dp"
                            android:layout_gravity="end|center_vertical"
                            android:layout_height="wrap_content" />
                    </FrameLayout>
                </LinearLayout>

                <androidx.recyclerview.widget.RecyclerView
                    android:id="@+id/wifi_list_layout"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:nestedScrollingEnabled="false"
                    android:overScrollMode="never"
                    android:scrollbars="vertical" />
            </LinearLayout>

            <LinearLayout
                android:id="@+id/see_all_layout"
                style="@style/InternetDialog.Network"
                android:layout_height="64dp"
                android:paddingStart="20dp">

                <FrameLayout
                    android:layout_width="24dp"
                    android:layout_height="24dp"
                    android:layout_gravity="center_vertical|start"
                    android:clickable="false">

                    <ImageView
                        android:id="@+id/arrow_forward"
                        android:contentDescription="@string/see_all_networks"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:layout_gravity="center"
                        android:src="@drawable/ic_arrow_forward" />
                </FrameLayout>

                <FrameLayout
                    android:layout_width="match_parent"
                    android:layout_height="match_parent"
                    android:layout_marginStart="@dimen/internet_dialog_network_layout_margin"
                    android:clickable="false"
                    android:orientation="vertical">

                    <TextView
                        android:layout_width="wrap_content"
                        android:layout_height="match_parent"
                        android:gravity="start|center_vertical"
                        android:text="@string/see_all_networks"
                        android:textAppearance="@style/TextAppearance.TileDetailsEntryTitle"
                        android:textSize="14sp" />
                </FrameLayout>
            </LinearLayout>

            <LinearLayout
                android:id="@+id/wifi_scan_notify_layout"
                style="@style/InternetDialog.Network"
                android:layout_height="wrap_content"
                android:clickable="false"
                android:focusable="false"
                android:orientation="vertical"
                android:paddingBottom="4dp"
                android:visibility="gone">

                <LinearLayout
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:gravity="start|top"
                    android:minWidth="56dp"
                    android:orientation="horizontal"
                    android:paddingBottom="4dp"
                    android:paddingEnd="12dp"
                    android:paddingTop="16dp">

                    <ImageView
                        android:contentDescription="@string/turn_on_wifi"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:src="@drawable/ic_info_outline"
                        android:tint="?android:attr/textColorTertiary" />
                </LinearLayout>

                <LinearLayout
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:orientation="vertical">

                    <TextView
                        android:id="@+id/wifi_scan_notify_text"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:clickable="true"
                        android:paddingBottom="8dp"
                        android:paddingTop="16dp"
                        android:textColor="?android:attr/textColorSecondary" />
                </LinearLayout>
            </LinearLayout>

            <androidx.constraintlayout.widget.ConstraintLayout
                android:id="@+id/button_layout"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_marginBottom="@dimen/dialog_bottom_padding"
                android:layout_marginEnd="@dimen/dialog_side_padding"
                android:layout_marginStart="@dimen/dialog_side_padding"
                android:layout_marginTop="8dp"
                android:clickable="false"
                android:focusable="false">

                <Button
                    android:id="@+id/apm_button"
                    style="@style/Widget.Dialog.Button.BorderButton"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_marginEnd="10dp"
                    android:clickable="true"
                    android:ellipsize="end"
                    android:focusable="true"
                    android:maxLines="1"
                    android:text="@string/turn_off_airplane_mode"
                    app:layout_constrainedWidth="true"
                    app:layout_constraintBottom_toBottomOf="parent"
                    app:layout_constraintEnd_toStartOf="@id/share_wifi_button"
                    app:layout_constraintHorizontal_bias="0"
                    app:layout_constraintStart_toStartOf="parent"
                    app:layout_constraintTop_toTopOf="parent" />

                <Button
                    android:id="@+id/share_wifi_button"
                    style="?android:attr/buttonBarNeutralButtonStyle"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_marginEnd="10dp"
                    android:clickable="true"
                    android:ellipsize="end"
                    android:focusable="true"
                    android:maxLines="1"
                    android:text="@string/share_wifi_button_text"
                    android:visibility="gone"
                    app:layout_constrainedWidth="true"
                    app:layout_constraintBottom_toBottomOf="parent"
                    app:layout_constraintHorizontal_bias="0"
                    app:layout_constraintStart_toEndOf="@id/apm_button"
                    app:layout_constraintTop_toTopOf="parent" />
            </androidx.constraintlayout.widget.ConstraintLayout>

        </LinearLayout>
    </androidx.core.widget.NestedScrollView>
</LinearLayout>
+6 −0
Original line number Diff line number Diff line
@@ -2245,4 +2245,10 @@
    <dimen name="aux_spacing_overlay_panel_shape_radius">46dp</dimen>
    <!-- Spacing attributes to overwrite end -->

    <!-- Tile Details start-->
    <dimen name="internet_details_toggle_row_height">48dp</dimen>
    <dimen name="tile_details_switch_container_width">52dp</dimen>
    <dimen name="tile_details_switch_track_height">24dp</dimen>
    <!-- Tile Details end -->

</resources>
+55 −0

File changed.

Preview size limit exceeded, changes collapsed.

+1 −1
Original line number Diff line number Diff line
@@ -33,7 +33,7 @@ fun InternetDetailsContent(viewModel: InternetDetailsViewModel) {
        factory = { context ->
            // Inflate with the existing dialog xml layout and bind it with the manager
            val view =
                LayoutInflater.from(context).inflate(R.layout.internet_connectivity_dialog, null)
                LayoutInflater.from(context).inflate(R.layout.internet_connectivity_details, null)
            viewModel.internetDetailsContentManager.bind(view, coroutineScope)

            view
+14 −33

File changed.

Preview size limit exceeded, changes collapsed.

Loading