diff options
Diffstat (limited to 'ui/src/main/res/layout/tunnel_detail_fragment.xml')
-rw-r--r-- | ui/src/main/res/layout/tunnel_detail_fragment.xml | 224 |
1 files changed, 118 insertions, 106 deletions
diff --git a/ui/src/main/res/layout/tunnel_detail_fragment.xml b/ui/src/main/res/layout/tunnel_detail_fragment.xml index 134b61e5..8e2b8e20 100644 --- a/ui/src/main/res/layout/tunnel_detail_fragment.xml +++ b/ui/src/main/res/layout/tunnel_detail_fragment.xml @@ -22,118 +22,130 @@ type="com.wireguard.config.Config" /> </data> - <ScrollView + <androidx.constraintlayout.widget.ConstraintLayout android:layout_width="match_parent" android:layout_height="match_parent" + android:orientation="vertical" + android:clickable="true" + android:focusable="true" android:background="?attr/colorBackground"> - <LinearLayout + <com.google.android.material.card.MaterialCardView + android:id="@+id/tunnel_detail_card" android:layout_width="match_parent" android:layout_height="wrap_content" - android:orientation="vertical"> - - <androidx.cardview.widget.CardView + android:layout_marginTop="16dp" + android:layout_marginStart="8dp" + android:layout_marginEnd="8dp" + android:layout_marginBottom="8dp" + app:cardBackgroundColor="?attr/elevationOverlayColor" + app:cardCornerRadius="0dp" + app:cardElevation="2dp" + app:contentPadding="8dp" + app:layout_constraintTop_toTopOf="parent" + app:layout_constraintStart_toStartOf="parent"> + + <androidx.constraintlayout.widget.ConstraintLayout android:layout_width="match_parent" - android:layout_height="wrap_content" - android:layout_marginStart="8dp" - android:layout_marginTop="8dp" - android:layout_marginEnd="8dp" - android:layout_marginBottom="4dp" - android:background="?attr/colorBackground" - app:cardCornerRadius="4dp" - app:cardElevation="2dp" - app:contentPadding="8dp"> - - <RelativeLayout + android:layout_height="wrap_content"> + + <com.google.android.material.textview.MaterialTextView + android:id="@+id/interface_title" + style="@style/TextAppearance.MaterialComponents.Headline6" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:text="@string/interface_title" + app:layout_constraintTop_toTopOf="parent" + app:layout_constraintStart_toStartOf="parent"/> + + <com.wireguard.android.widget.ToggleSwitch + android:id="@+id/tunnel_switch" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_marginTop="16dp" + app:checked="@{tunnel.state == State.UP}" + app:onBeforeCheckedChanged="@{fragment::setTunnelState}" + app:layout_constraintBaseline_toBaselineOf="@+id/interface_title" + app:layout_constraintEnd_toEndOf="parent"/> + + <TextView + android:id="@+id/interface_name_label" android:layout_width="match_parent" - android:layout_height="wrap_content"> - - <TextView - android:id="@+id/interface_title" - style="?android:attr/textAppearanceMedium" - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:layout_alignParentStart="true" - android:layout_alignParentTop="true" - android:text="@string/interface_title" /> - - <com.wireguard.android.widget.ToggleSwitch - android:id="@+id/tunnel_switch" - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:layout_alignBaseline="@+id/interface_title" - android:layout_alignParentEnd="true" - app:checked="@{tunnel.state == State.UP}" - app:onBeforeCheckedChanged="@{fragment::setTunnelState}" /> - - <TextView - android:id="@+id/interface_name_label" - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:layout_below="@+id/interface_title" - android:layout_marginTop="8dp" - android:labelFor="@+id/interface_name_text" - android:text="@string/name" /> - - <TextView - android:id="@+id/interface_name_text" - style="?android:attr/textAppearanceMedium" - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:layout_below="@+id/interface_name_label" - android:text="@{tunnel.name}" /> - - <TextView - android:id="@+id/public_key_label" - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:layout_below="@id/interface_name_text" - android:layout_marginTop="8dp" - android:labelFor="@+id/public_key_text" - android:text="@string/public_key" /> - - <TextView - android:id="@+id/public_key_text" - style="?android:attr/textAppearanceMedium" - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:layout_below="@+id/public_key_label" - android:contentDescription="@string/public_key_description" - android:ellipsize="end" - android:maxLines="1" - android:onClick="@{ClipboardUtils::copyTextView}" - android:text="@{config.interface.keyPair.publicKey.toBase64}" /> - - <TextView - android:id="@+id/addresses_label" - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:layout_below="@id/public_key_text" - android:layout_marginTop="8dp" - android:labelFor="@+id/addresses_text" - android:text="@string/addresses" /> - - <TextView - android:id="@+id/addresses_text" - style="?android:attr/textAppearanceMedium" - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:layout_below="@+id/addresses_label" - android:contentDescription="@string/addresses" - android:text="@{config.interface.addresses}" /> - </RelativeLayout> - </androidx.cardview.widget.CardView> - - <LinearLayout - android:id="@+id/peers_layout" - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:layout_marginBottom="4dp" - android:divider="@null" - android:orientation="vertical" - app:items="@{config.peers}" - app:layout="@{@layout/tunnel_detail_peer}" - tools:ignore="UselessLeaf" /> - </LinearLayout> - </ScrollView> + android:layout_height="wrap_content" + android:layout_marginTop="8dp" + android:labelFor="@+id/interface_name_text" + android:text="@string/name" + app:layout_constraintStart_toStartOf="parent" + app:layout_constraintTop_toBottomOf="@+id/interface_title"/> + + <TextView + android:id="@+id/interface_name_text" + style="@style/DetailText" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:text="@{tunnel.name}" + app:layout_constraintStart_toStartOf="parent" + app:layout_constraintTop_toBottomOf="@+id/interface_name_label" + tools:text="wg0"/> + + <TextView + android:id="@+id/public_key_label" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:layout_marginTop="8dp" + android:labelFor="@+id/public_key_text" + android:text="@string/public_key" + app:layout_constraintStart_toStartOf="parent" + app:layout_constraintTop_toBottomOf="@id/interface_name_text"/> + + <TextView + android:id="@+id/public_key_text" + style="@style/DetailText" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:contentDescription="@string/public_key_description" + android:ellipsize="end" + android:maxLines="1" + android:onClick="@{ClipboardUtils::copyTextView}" + android:text="@{config.interface.keyPair.publicKey.toBase64}" + app:layout_constraintStart_toStartOf="parent" + app:layout_constraintTop_toBottomOf="@+id/public_key_label" + tools:text="wOs2eguFEohqIZxlSJ1CAT9584tc6ejj9hfGFsoBVkA="/> + + <TextView + android:id="@+id/addresses_label" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:layout_marginTop="8dp" + android:labelFor="@+id/addresses_text" + android:text="@string/addresses" + app:layout_constraintStart_toStartOf="parent" + app:layout_constraintTop_toBottomOf="@id/public_key_text"/> + + <TextView + android:id="@+id/addresses_text" + style="@style/DetailText" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:contentDescription="@string/addresses" + android:text="@{config.interface.addresses}" + app:layout_constraintStart_toStartOf="parent" + app:layout_constraintTop_toBottomOf="@+id/addresses_label" + tools:text="fc00:bbbb:bbbb:bb11::3:368b/128"/> + </androidx.constraintlayout.widget.ConstraintLayout> + </com.google.android.material.card.MaterialCardView> + + <LinearLayout + android:id="@+id/peers_layout" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:layout_marginTop="8dp" + android:divider="@null" + android:orientation="vertical" + app:items="@{config.peers}" + app:layout="@{@layout/tunnel_detail_peer}" + app:layout_constraintTop_toBottomOf="@+id/tunnel_detail_card" + app:layout_constraintStart_toStartOf="parent" + tools:ignore="UselessLeaf"/> + </androidx.constraintlayout.widget.ConstraintLayout> </layout> |