diff options
author | Torsten Grote <t@grobox.de> | 2020-03-03 14:03:45 -0300 |
---|---|---|
committer | Torsten Grote <t@grobox.de> | 2020-03-03 14:03:45 -0300 |
commit | 30980bc83be99ea85205f44c815b78164b11f7b9 (patch) | |
tree | a8950120aa57df2839e4d1f40cb84ca841f27ad3 /app/src/main/res | |
parent | a9fd9aa024d1cafe50be76eb2ca6a818bce38862 (diff) | |
download | wallet-android-30980bc83be99ea85205f44c815b78164b11f7b9.tar.gz wallet-android-30980bc83be99ea85205f44c815b78164b11f7b9.tar.bz2 wallet-android-30980bc83be99ea85205f44c815b78164b11f7b9.zip |
Clean up and improve withdraw UI (first pass)
Diffstat (limited to 'app/src/main/res')
-rw-r--r-- | app/src/main/res/layout-w550dp/payment_bottom_bar.xml | 3 | ||||
-rw-r--r-- | app/src/main/res/layout/app_bar_main.xml | 19 | ||||
-rw-r--r-- | app/src/main/res/layout/fragment_prompt_withdraw.xml | 201 | ||||
-rw-r--r-- | app/src/main/res/layout/fragment_review_exchange_tos.xml | 101 | ||||
-rw-r--r-- | app/src/main/res/layout/fragment_withdraw_successful.xml | 66 | ||||
-rw-r--r-- | app/src/main/res/layout/payment_bottom_bar.xml | 3 | ||||
-rw-r--r-- | app/src/main/res/navigation/nav_graph.xml | 12 | ||||
-rw-r--r-- | app/src/main/res/values/strings.xml | 3 | ||||
-rw-r--r-- | app/src/main/res/values/styles.xml | 5 |
9 files changed, 264 insertions, 149 deletions
diff --git a/app/src/main/res/layout-w550dp/payment_bottom_bar.xml b/app/src/main/res/layout-w550dp/payment_bottom_bar.xml index f9fa32a..d9e2f59 100644 --- a/app/src/main/res/layout-w550dp/payment_bottom_bar.xml +++ b/app/src/main/res/layout-w550dp/payment_bottom_bar.xml @@ -18,10 +18,9 @@ xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/bottomView" + style="@style/BottomCard" android:layout_width="0dp" android:layout_height="wrap_content" - app:cardCornerRadius="0dp" - app:cardElevation="8dp" tools:showIn="@layout/fragment_prompt_payment"> <androidx.constraintlayout.widget.ConstraintLayout diff --git a/app/src/main/res/layout/app_bar_main.xml b/app/src/main/res/layout/app_bar_main.xml index 834d5ca..e2fa71f 100644 --- a/app/src/main/res/layout/app_bar_main.xml +++ b/app/src/main/res/layout/app_bar_main.xml @@ -26,28 +26,35 @@ android:layout_height="wrap_content" android:theme="@style/AppTheme.AppBarOverlay"> - <RelativeLayout + <androidx.constraintlayout.widget.ConstraintLayout + android:id="@+id/relativeLayout" android:layout_width="match_parent" android:layout_height="wrap_content"> <com.google.android.material.appbar.MaterialToolbar android:id="@+id/toolbar" style="@style/AppTheme.Toolbar" - android:layout_width="match_parent" - android:layout_height="wrap_content" /> + android:layout_width="0dp" + android:layout_height="wrap_content" + app:layout_constraintEnd_toEndOf="parent" + app:layout_constraintStart_toStartOf="parent" + app:layout_constraintTop_toTopOf="parent" /> <me.zhanghai.android.materialprogressbar.MaterialProgressBar android:id="@+id/progress_bar" style="@style/Widget.MaterialProgressBar.ProgressBar.Horizontal" android:layout_width="match_parent" android:layout_height="4dp" - android:layout_alignParentBottom="true" android:indeterminate="true" - android:visibility="invisible" + android:visibility="gone" + app:layout_constraintBottom_toBottomOf="parent" + app:layout_constraintStart_toStartOf="parent" + app:layout_constraintTop_toBottomOf="@+id/toolbar" app:mpb_progressStyle="horizontal" app:mpb_useIntrinsicPadding="false" tools:visibility="visible" /> - </RelativeLayout> + + </androidx.constraintlayout.widget.ConstraintLayout> </com.google.android.material.appbar.AppBarLayout> diff --git a/app/src/main/res/layout/fragment_prompt_withdraw.xml b/app/src/main/res/layout/fragment_prompt_withdraw.xml index dba7450..1114c17 100644 --- a/app/src/main/res/layout/fragment_prompt_withdraw.xml +++ b/app/src/main/res/layout/fragment_prompt_withdraw.xml @@ -14,93 +14,158 @@ ~ GNU Taler; see the file COPYING. If not, see <http://www.gnu.org/licenses/> --> -<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" +<androidx.constraintlayout.widget.ConstraintLayout 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:id="@+id/prompt_withdraw" android:layout_width="match_parent" android:layout_height="match_parent" - android:layout_margin="15dp" - android:orientation="vertical" - tools:context=".PromptWithdraw"> - - <Space - android:layout_width="match_parent" - android:layout_height="15dp" - android:layout_weight="1" /> + tools:context=".withdraw.PromptWithdrawFragment"> <TextView - android:id="@+id/order_summary_label" - android:layout_width="wrap_content" + android:id="@+id/introView" + android:layout_width="0dp" android:layout_height="wrap_content" - android:layout_gravity="center" - android:text="@string/withdraw_do_you_want" /> + android:layout_marginStart="16dp" + android:layout_marginEnd="16dp" + android:layout_marginBottom="8dp" + android:gravity="center" + android:text="@string/withdraw_do_you_want" + android:visibility="invisible" + app:layout_constraintBottom_toTopOf="@+id/withdrawAmountView" + app:layout_constraintEnd_toEndOf="parent" + app:layout_constraintHorizontal_bias="0.5" + app:layout_constraintStart_toStartOf="parent" + app:layout_constraintTop_toTopOf="parent" + app:layout_constraintVertical_chainStyle="packed" + tools:visibility="visible" /> <TextView - android:id="@+id/withdraw_amount" - android:layout_width="wrap_content" + android:id="@+id/withdrawAmountView" + android:layout_width="0dp" android:layout_height="wrap_content" - android:layout_gravity="center" - android:textSize="25sp" - tools:text="10.00 KUDOS" /> + android:layout_marginStart="16dp" + android:layout_marginEnd="16dp" + android:gravity="center" + android:textAppearance="@style/TextAppearance.AppCompat.Headline" + android:visibility="invisible" + app:layout_constraintBottom_toTopOf="@+id/feeView" + app:layout_constraintEnd_toEndOf="parent" + app:layout_constraintStart_toStartOf="parent" + app:layout_constraintTop_toBottomOf="@+id/introView" + tools:text="10.00 TESTKUDOS" + tools:visibility="visible" /> <TextView - android:layout_width="wrap_content" + android:id="@+id/feeView" + android:layout_width="0dp" android:layout_height="wrap_content" - android:layout_gravity="center" - android:text="@string/withdraw_fees" /> - - <Space - android:layout_width="match_parent" - android:layout_height="25dp" /> - + android:layout_marginStart="16dp" + android:layout_marginTop="8dp" + android:layout_marginEnd="16dp" + android:gravity="center" + android:text="@string/withdraw_fees" + android:visibility="invisible" + app:layout_constraintBottom_toTopOf="@+id/exchangeIntroView" + app:layout_constraintEnd_toEndOf="parent" + app:layout_constraintHorizontal_bias="0.5" + app:layout_constraintStart_toStartOf="parent" + app:layout_constraintTop_toBottomOf="@+id/withdrawAmountView" + tools:visibility="visible" /> <TextView - android:id="@+id/order_amount_label" - android:layout_width="wrap_content" + android:id="@+id/exchangeIntroView" + android:layout_width="0dp" android:layout_height="wrap_content" - android:layout_gravity="center" - android:text="@string/withdraw_exchange" /> + android:layout_marginStart="16dp" + android:layout_marginTop="32dp" + android:layout_marginEnd="16dp" + android:layout_marginBottom="8dp" + android:gravity="center" + android:text="@string/withdraw_exchange" + android:visibility="invisible" + app:layout_constraintBottom_toTopOf="@+id/withdrawExchangeUrl" + app:layout_constraintEnd_toEndOf="parent" + app:layout_constraintHorizontal_bias="0.5" + app:layout_constraintStart_toStartOf="parent" + app:layout_constraintTop_toBottomOf="@+id/feeView" + tools:visibility="visible" /> <TextView - android:id="@+id/withdraw_exchange" - android:layout_width="wrap_content" + android:id="@+id/withdrawExchangeUrl" + android:layout_width="0dp" android:layout_height="wrap_content" - android:layout_gravity="center" + android:layout_marginStart="16dp" + android:layout_marginEnd="16dp" + android:gravity="center" android:textSize="25sp" - tools:text="(exchange base url)" /> - - <Space - android:layout_width="match_parent" - android:layout_height="15dp" - android:layout_weight="1" /> - - - <Space - android:layout_width="match_parent" - android:layout_height="15dp" - android:layout_weight="1" /> - - <LinearLayout - android:layout_width="match_parent" + android:visibility="invisible" + app:layout_constraintBottom_toTopOf="@+id/withdrawCard" + app:layout_constraintEnd_toEndOf="parent" + app:layout_constraintStart_toStartOf="parent" + app:layout_constraintTop_toBottomOf="@+id/exchangeIntroView" + tools:text="(exchange base url)" + tools:visibility="visible" /> + + <ProgressBar + android:id="@+id/progressBar" + style="?android:attr/progressBarStyleLarge" + android:layout_width="wrap_content" android:layout_height="wrap_content" - android:orientation="horizontal"> - - <Button - android:id="@+id/button_cancel_withdraw" - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:text="@string/button_cancel" /> - - <Space - android:layout_width="0dp" - android:layout_height="match_parent" - android:layout_weight="1" /> + app:layout_constraintBottom_toTopOf="@+id/withdrawCard" + app:layout_constraintEnd_toEndOf="parent" + app:layout_constraintStart_toStartOf="parent" + app:layout_constraintTop_toTopOf="parent" /> + + <com.google.android.material.card.MaterialCardView + android:id="@+id/withdrawCard" + style="@style/BottomCard" + android:layout_width="0dp" + android:layout_height="wrap_content" + app:layout_constraintBottom_toBottomOf="parent" + app:layout_constraintEnd_toEndOf="parent" + app:layout_constraintStart_toStartOf="parent"> - <Button - android:id="@+id/button_confirm_withdraw" - android:layout_width="wrap_content" + <androidx.constraintlayout.widget.ConstraintLayout + android:layout_width="match_parent" android:layout_height="wrap_content" - android:text="@string/withdraw_button_confirm" /> - </LinearLayout> - -</LinearLayout> + android:padding="8dp"> + + <Button + android:id="@+id/button_cancel_withdraw" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:backgroundTint="@color/red" + android:text="@string/button_cancel" + app:layout_constraintBottom_toBottomOf="parent" + app:layout_constraintEnd_toStartOf="@+id/button_confirm_withdraw" + app:layout_constraintHorizontal_chainStyle="spread_inside" + app:layout_constraintStart_toStartOf="parent" /> + + <Button + android:id="@+id/button_confirm_withdraw" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:backgroundTint="@color/green" + android:enabled="false" + android:text="@string/withdraw_button_confirm" + app:layout_constraintBottom_toBottomOf="parent" + app:layout_constraintEnd_toEndOf="parent" + app:layout_constraintStart_toEndOf="@+id/button_cancel_withdraw" /> + + <ProgressBar + android:id="@+id/confirmProgressBar" + style="?android:attr/progressBarStyle" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:visibility="invisible" + app:layout_constraintBottom_toBottomOf="@+id/button_confirm_withdraw" + app:layout_constraintEnd_toEndOf="@+id/button_confirm_withdraw" + app:layout_constraintStart_toStartOf="@+id/button_confirm_withdraw" + app:layout_constraintTop_toTopOf="@+id/button_confirm_withdraw" + tools:visibility="visible" /> + + </androidx.constraintlayout.widget.ConstraintLayout> + + </com.google.android.material.card.MaterialCardView> + +</androidx.constraintlayout.widget.ConstraintLayout> diff --git a/app/src/main/res/layout/fragment_review_exchange_tos.xml b/app/src/main/res/layout/fragment_review_exchange_tos.xml index 355fe25..61a61f1 100644 --- a/app/src/main/res/layout/fragment_review_exchange_tos.xml +++ b/app/src/main/res/layout/fragment_review_exchange_tos.xml @@ -14,55 +14,92 @@ ~ GNU Taler; see the file COPYING. If not, see <http://www.gnu.org/licenses/> --> -<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" +<androidx.constraintlayout.widget.ConstraintLayout 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:layout_width="match_parent" android:layout_height="match_parent" - android:layout_margin="15dp" - android:orientation="vertical" - tools:context=".ReviewExchangeTOS"> + tools:context=".withdraw.ReviewExchangeTosFragment"> <ScrollView - android:layout_width="match_parent" + android:id="@+id/tosScrollView" + android:layout_width="0dp" android:layout_height="0dp" - android:layout_weight="1" - android:fillViewport="true" - android:scrollbars="vertical"> + app:layout_constraintBottom_toTopOf="@+id/buttonCard" + app:layout_constraintEnd_toEndOf="parent" + app:layout_constraintStart_toStartOf="parent" + app:layout_constraintTop_toTopOf="parent"> <TextView - android:id="@+id/text_tos" + android:id="@+id/tosTextView" android:layout_width="match_parent" android:layout_height="wrap_content" - tools:text="TextView" /> + android:padding="16dp" + android:visibility="invisible" + tools:text="@tools:sample/lorem/random" + tools:visibility="visible" /> + </ScrollView> - <CheckBox - android:id="@+id/checkBox_accept_tos" - android:layout_width="match_parent" + <ProgressBar + android:id="@+id/progressBar" + style="?android:attr/progressBarStyleLarge" + android:layout_width="wrap_content" android:layout_height="wrap_content" - android:text="@string/exchange_tos_accept" /> + app:layout_constraintBottom_toBottomOf="@+id/tosScrollView" + app:layout_constraintEnd_toEndOf="parent" + app:layout_constraintStart_toStartOf="parent" + app:layout_constraintTop_toTopOf="parent" /> - <LinearLayout - android:layout_width="match_parent" + <com.google.android.material.card.MaterialCardView + android:id="@+id/buttonCard" + style="@style/BottomCard" + android:layout_width="0dp" android:layout_height="wrap_content" - android:orientation="horizontal"> + app:layout_constraintBottom_toBottomOf="parent" + app:layout_constraintEnd_toEndOf="parent" + app:layout_constraintStart_toStartOf="parent"> - <Button - android:id="@+id/button_tos_abort" - android:layout_width="wrap_content" + <androidx.constraintlayout.widget.ConstraintLayout + android:layout_width="match_parent" android:layout_height="wrap_content" - android:text="@string/button_cancel" /> + android:padding="8dp"> - <Space - android:layout_width="0dp" - android:layout_height="0dp" - android:layout_weight="1" /> + <CheckBox + android:id="@+id/acceptTosCheckBox" + android:layout_width="0dp" + android:layout_height="wrap_content" + android:text="@string/exchange_tos_accept" + android:visibility="invisible" + app:layout_constraintBottom_toTopOf="@+id/acceptTosButton" + app:layout_constraintEnd_toEndOf="parent" + app:layout_constraintStart_toStartOf="parent" + tools:visibility="visible" /> - <Button - android:id="@+id/button_tos_accept" - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:text="@string/exchange_tos_button_continue" /> - </LinearLayout> + <Button + android:id="@+id/abortTosButton" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:backgroundTint="@color/red" + android:text="@string/button_cancel" + app:layout_constraintBottom_toBottomOf="parent" + app:layout_constraintEnd_toStartOf="@+id/acceptTosButton" + app:layout_constraintHorizontal_chainStyle="spread_inside" + app:layout_constraintStart_toStartOf="parent" /> + + <Button + android:id="@+id/acceptTosButton" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:backgroundTint="@color/green" + android:enabled="false" + android:text="@string/exchange_tos_button_continue" + app:layout_constraintBottom_toBottomOf="parent" + app:layout_constraintEnd_toEndOf="parent" + app:layout_constraintStart_toEndOf="@+id/abortTosButton" /> + + </androidx.constraintlayout.widget.ConstraintLayout> + + </com.google.android.material.card.MaterialCardView> -</LinearLayout> +</androidx.constraintlayout.widget.ConstraintLayout> diff --git a/app/src/main/res/layout/fragment_withdraw_successful.xml b/app/src/main/res/layout/fragment_withdraw_successful.xml index 5a48f75..d1b9c90 100644 --- a/app/src/main/res/layout/fragment_withdraw_successful.xml +++ b/app/src/main/res/layout/fragment_withdraw_successful.xml @@ -14,51 +14,49 @@ ~ GNU Taler; see the file COPYING. If not, see <http://www.gnu.org/licenses/> --> -<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" +<androidx.constraintlayout.widget.ConstraintLayout 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:layout_width="match_parent" android:layout_height="match_parent" - android:layout_margin="10dp" - android:orientation="vertical" - tools:context=".WithdrawSuccessful"> - - <Space - android:layout_width="match_parent" - android:layout_height="0dp" - android:layout_weight="1" /> + tools:context=".withdraw.WithdrawSuccessfulFragment"> <TextView - android:layout_width="match_parent" - android:layout_height="50dp" - android:layout_gravity="center" + android:id="@+id/withdrawHeadlineView" + android:layout_width="0dp" + android:layout_height="0dp" + android:layout_margin="16dp" + android:gravity="center_horizontal|bottom" android:text="@string/withdraw_accepted" - android:textAlignment="center" - android:textColor="@android:color/holo_green_dark" - app:autoSizeTextType="uniform" /> + android:textColor="@color/green" + app:autoSizeMaxTextSize="40sp" + app:autoSizeTextType="uniform" + app:layout_constraintBottom_toTopOf="@+id/withdrawInfoView" + app:layout_constraintEnd_toEndOf="parent" + app:layout_constraintStart_toStartOf="parent" + app:layout_constraintTop_toTopOf="parent" /> <TextView - android:layout_width="match_parent" - android:layout_height="50dp" - android:layout_gravity="center" - android:text="@string/withdraw_success_info" - android:textAlignment="center" /> - - <Space - android:layout_width="match_parent" + android:id="@+id/withdrawInfoView" + android:layout_width="0dp" android:layout_height="0dp" - android:layout_weight="1" /> - - - <Space - android:layout_width="match_parent" - android:layout_height="0dp" - android:layout_weight="1" /> + android:layout_margin="16dp" + android:text="@string/withdraw_success_info" + android:textAlignment="center" + app:layout_constraintBottom_toTopOf="@+id/backButton" + app:layout_constraintEnd_toEndOf="parent" + app:layout_constraintStart_toStartOf="parent" + app:layout_constraintTop_toBottomOf="@+id/withdrawHeadlineView" /> <Button android:id="@+id/backButton" - android:layout_width="match_parent" + android:layout_width="0dp" android:layout_height="wrap_content" - android:text="@string/button_back" /> - -</LinearLayout> + android:layout_margin="16dp" + android:text="@string/button_back" + app:layout_constraintBottom_toBottomOf="parent" + app:layout_constraintEnd_toEndOf="parent" + app:layout_constraintStart_toStartOf="parent" + app:layout_constraintTop_toBottomOf="@+id/withdrawInfoView" /> + +</androidx.constraintlayout.widget.ConstraintLayout> diff --git a/app/src/main/res/layout/payment_bottom_bar.xml b/app/src/main/res/layout/payment_bottom_bar.xml index 5b5c9f3..8fdf0f8 100644 --- a/app/src/main/res/layout/payment_bottom_bar.xml +++ b/app/src/main/res/layout/payment_bottom_bar.xml @@ -17,10 +17,9 @@ <com.google.android.material.card.MaterialCardView 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" + style="@style/BottomCard" android:layout_width="0dp" android:layout_height="wrap_content" - app:cardCornerRadius="0dp" - app:cardElevation="8dp" tools:showIn="@layout/fragment_prompt_payment"> <androidx.constraintlayout.widget.ConstraintLayout diff --git a/app/src/main/res/navigation/nav_graph.xml b/app/src/main/res/navigation/nav_graph.xml index 39068ec..2cc1eaa 100644 --- a/app/src/main/res/navigation/nav_graph.xml +++ b/app/src/main/res/navigation/nav_graph.xml @@ -67,10 +67,11 @@ android:name="net.taler.wallet.payment.AlreadyPaidFragment" android:label="Already Paid" tools:layout="@layout/fragment_already_paid" /> + <fragment android:id="@+id/promptWithdraw" - android:name="net.taler.wallet.PromptWithdraw" - android:label="Withdraw Digital Cash" + android:name="net.taler.wallet.withdraw.PromptWithdrawFragment" + android:label="@string/nav_prompt_withdraw" tools:layout="@layout/fragment_prompt_withdraw"> <action android:id="@+id/action_promptWithdraw_to_withdrawSuccessful" @@ -81,15 +82,16 @@ app:destination="@id/reviewExchangeTOS" app:popUpTo="@id/showBalance" /> </fragment> + <fragment android:id="@+id/withdrawSuccessful" - android:name="net.taler.wallet.WithdrawSuccessful" + android:name="net.taler.wallet.withdraw.WithdrawSuccessfulFragment" android:label="Withdrawal Confirmed" tools:layout="@layout/fragment_withdraw_successful" /> <fragment android:id="@+id/reviewExchangeTOS" - android:name="net.taler.wallet.ReviewExchangeTOS" - android:label="Exchange's Terms of Service" + android:name="net.taler.wallet.withdraw.ReviewExchangeTosFragment" + android:label="@string/nav_exchange_tos" tools:layout="@layout/fragment_review_exchange_tos"> <action android:id="@+id/action_reviewExchangeTOS_to_promptWithdraw" diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 8307e37..19159b9 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -21,6 +21,9 @@ <string name="nav_header_subtitle">Wallet</string> <string name="nav_header_desc">Navigation header</string> + <string name="nav_prompt_withdraw">Withdraw Digital Cash</string> + <string name="nav_exchange_tos">Exchange\'s Terms of Service</string> + <string name="button_back">Go Back</string> <string name="button_cancel">Cancel</string> <string name="button_scan_qr_code">Scan Taler QR Code</string> diff --git a/app/src/main/res/values/styles.xml b/app/src/main/res/values/styles.xml index 09d7a02..83f3e3a 100644 --- a/app/src/main/res/values/styles.xml +++ b/app/src/main/res/values/styles.xml @@ -38,4 +38,9 @@ <item name="android:textColor">?android:textColorPrimary</item> </style> + <style name="BottomCard"> + <item name="cardCornerRadius">0dp</item> + <item name="cardElevation">8dp</item> + </style> + </resources> |