
Involved creating another view/state for which the swap workflow can be in. It is not explicitly stated by setting the state of the SwapService, as is the case with other views. Rather, it is inferred based on the presence of a `NewRepoConfig` crafted from the incoming intent in `onResume()`. Also gave me an idea of how to move more logic out of individual views, and into the SwapWorkflowActivity. That is, inflateInnerView should return the inflated view, to be cast into the specific subclass. From there, the activity can call methods directly on the view to set it up, rather than having the view do that stuff itself. In the future, may consider doing this with other views too.
78 lines
3.0 KiB
XML
78 lines
3.0 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
|
|
<org.fdroid.fdroid.views.swap.ConfirmReceive xmlns:android="http://schemas.android.com/apk/res/android"
|
|
xmlns:app="http://schemas.android.com/apk/res-auto"
|
|
xmlns:tools="http://schemas.android.com/tools"
|
|
android:orientation="vertical"
|
|
android:layout_width="match_parent"
|
|
android:layout_height="match_parent"
|
|
android:background="@color/swap_blue"
|
|
android:padding="18dp">
|
|
<!-- Padding is 32px * 0.56 = 18dip -->
|
|
|
|
<ImageView
|
|
android:id="@+id/icon"
|
|
android:src="@drawable/ic_launcher"
|
|
android:contentDescription="@string/icon"
|
|
android:layout_alignParentTop="true"
|
|
android:layout_width="117.6dp"
|
|
android:layout_height="117.6dp"
|
|
android:layout_centerHorizontal="true"/>
|
|
<!-- 210 * 0.56 = 117.6 -->
|
|
|
|
<TextView
|
|
android:id="@+id/text_title"
|
|
android:text="@string/swap_welcome"
|
|
style="@style/SwapTheme.Wizard.ReceiveSwap.MainText"
|
|
android:layout_below="@id/icon"
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:textSize="28sp"
|
|
android:lines="1" />
|
|
<!-- 60 * 0.56 = 33.6 -->
|
|
<!-- Temporarily making it smaller than 33.6 until we figure out how to
|
|
prevent line breaks on the hyphen in F-Droid. -->
|
|
|
|
<TextView
|
|
android:id="@+id/text_description"
|
|
tools:text="@string/swap_confirm_connect"
|
|
style="@style/SwapTheme.Wizard.Text"
|
|
android:layout_below="@id/text_title"
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:textSize="25.75sp"/>
|
|
<!-- 46px * 0.56 = 25.76sp -->
|
|
|
|
<LinearLayout
|
|
android:layout_width="wrap_content"
|
|
android:layout_height="wrap_content"
|
|
android:orientation="horizontal"
|
|
android:layout_below="@+id/text_description"
|
|
android:layout_centerInParent="true"
|
|
android:layout_marginTop="45dp">
|
|
<!-- 80px * 0.56 = 45dp -->
|
|
|
|
<!-- TODO: Remove associated style files style="@style/SwapTheme.Wizard.ReceiveSwap.Deny"-->
|
|
<Button
|
|
android:id="@+id/no_button"
|
|
android:text="@string/no"
|
|
app:backgroundTint="@color/swap_deny"
|
|
android:layout_width="wrap_content"
|
|
android:layout_height="wrap_content"
|
|
android:layout_marginEnd="25dp"
|
|
android:layout_marginRight="25dp"
|
|
/>
|
|
|
|
<!-- TODO: Remove associated style files style="@style/SwapTheme.Wizard.ReceiveSwap.Confirm" -->
|
|
<Button
|
|
android:id="@+id/yes_button"
|
|
android:text="@string/yes"
|
|
app:backgroundTint="@color/swap_confirm"
|
|
android:layout_width="wrap_content"
|
|
android:layout_height="wrap_content"
|
|
/>
|
|
|
|
</LinearLayout>
|
|
|
|
</org.fdroid.fdroid.views.swap.ConfirmReceive>
|