feat: implement sign tx and sigl all tx sol request

This commit is contained in:
Pavneet-Sing
2022-10-07 17:52:51 +05:30
parent 19d1235b14
commit 2d06f8154f
21 changed files with 1327 additions and 108 deletions
@@ -1,14 +1,14 @@
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_enabled="false">
<item android:state_enabled="false" android:state_pressed="false">
<shape android:padding="12dp" android:shape="rectangle">
<solid android:color="@color/modern_grey_700" />
<corners android:radius="48dp" />
</shape>
</item>
<item android:state_focused="true" android:state_pressed="true">
<item android:state_enabled="true" android:state_pressed="false">
<shape android:padding="12dp" android:shape="rectangle">
<solid android:color="@color/brave_wallet_button_pressed" />
<solid android:color="@color/brave_action_color" />
<corners android:radius="48dp" />
</shape>
</item>
@@ -18,7 +18,7 @@
<corners android:radius="48dp" />
</shape>
</item>
<item>
<item android:state_enabled="true">
<shape android:padding="12dp" android:shape="rectangle">
<solid android:color="@color/brave_action_color" />
<corners android:radius="48dp" />
+10
View File
@@ -0,0 +1,10 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="18dp"
android:height="18dp"
android:viewportWidth="18"
android:viewportHeight="18">
<path
android:pathData="M17.25,17.25C17.245,17.25 17.24,17.25 17.235,17.25H0.749C0.485,17.25 0.239,17.11 0.105,16.881C-0.031,16.653 -0.035,16.369 0.093,16.136L8.336,1.11C8.599,0.63 9.386,0.63 9.649,1.11L17.828,16.02C17.935,16.15 18,16.317 18,16.499C18,16.913 17.664,17.25 17.25,17.25ZM8.992,3.031L2.017,15.747H15.968L8.992,3.031ZM8.992,6.731C9.406,6.731 9.742,7.067 9.742,7.483V11.239C9.742,11.654 9.406,11.991 8.992,11.991C8.578,11.991 8.243,11.654 8.243,11.239V7.483C8.243,7.067 8.578,6.731 8.992,6.731ZM9.526,12.96C9.661,13.102 9.744,13.298 9.744,13.493C9.744,13.689 9.661,13.884 9.519,14.026C9.384,14.162 9.189,14.245 8.995,14.245C8.792,14.245 8.605,14.162 8.463,14.026C8.32,13.884 8.245,13.689 8.245,13.493C8.245,13.298 8.32,13.102 8.463,12.96C8.739,12.682 9.249,12.682 9.526,12.96Z"
android:fillColor="#E32444"
android:fillType="evenOdd"/>
</vector>
@@ -0,0 +1,225 @@
<?xml version="1.0" encoding="utf-8"?>
<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:background="@color/wallet_bg"
android:padding="20dp"
tools:context=".browser.crypto_wallet.fragments.dapps.SignMessageFragment">
<TextView
android:id="@+id/fragment_sign_tx_msg_tv_network_name"
style="@style/BraveWalletTextView"
android:layout_marginTop="4dp"
android:layout_marginBottom="20dp"
android:text="@string/mainnet"
android:textSize="16sp"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<TextView
android:id="@+id/fragment_sign_tx_msg_tv_counter"
style="@style/BraveWalletTextView"
android:layout_marginTop="4dp"
android:layout_marginBottom="20dp"
tools:text="1 of 2"
android:textSize="16sp"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintEnd_toStartOf="@id/fragment_encryption_msg_btn_next"/>
<androidx.appcompat.widget.AppCompatButton
android:id="@+id/fragment_encryption_msg_btn_next"
style="@style/BraveWalletTextButton"
android:text="@string/brave_wallet_next"
app:layout_constraintBottom_toBottomOf="@id/fragment_sign_tx_msg_tv_counter"
app:layout_constraintEnd_toEndOf="parent"
android:minWidth="0dp"
android:padding="8dp"
android:textStyle="bold"
app:layout_constraintLeft_toRightOf="@id/fragment_sign_tx_msg_tv_counter"
app:layout_constraintTop_toTopOf="@id/fragment_sign_tx_msg_tv_counter"
tools:ignore="TouchTargetSizeCheck" />
<com.google.android.material.card.MaterialCardView
android:id="@+id/fragment_sign_tx_msg_cv_account_image_container"
android:layout_width="60dp"
android:layout_height="60dp"
android:layout_centerHorizontal="true"
android:layout_marginTop="20dp"
android:elevation="12dp"
android:innerRadius="0dp"
android:shape="ring"
android:thicknessRatio="1.9"
app:cardBackgroundColor="@color/brave_theme_color"
app:cardCornerRadius="40dp"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/fragment_sign_tx_msg_tv_network_name"
app:strokeColor="@color/brave_white"
app:strokeWidth="2dp">
<ImageView
android:id="@+id/fragment_sign_tx_msg_cv_iv_account"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_alignStart="@+id/cv_dapps_image_container"
android:layout_alignBottom="@+id/cv_dapps_image_container"
android:layout_centerHorizontal="true"
android:contentDescription="@string/accessibility_wallet_dapp_panel_account"
app:cardBackgroundColor="@android:color/transparent"
tools:srcCompat="@drawable/ic_brave_logo" />
</com.google.android.material.card.MaterialCardView>
<TextView
android:id="@+id/domain"
style="@style/BraveWalletTextView"
android:layout_marginTop="4dp"
android:layout_marginBottom="16dp"
android:gravity="center"
android:textSize="16sp"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/fragment_sign_tx_msg_cv_account_image_container" />
<TextView
android:id="@+id/fragment_sign_tx_msg_tv_account_name"
style="@style/BraveWalletTextView"
android:layout_width="match_parent"
android:layout_marginTop="16dp"
android:layout_marginBottom="4dp"
android:gravity="center"
android:textStyle="bold"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/domain"
tools:text="Ledger Nano" />
<TextView
android:id="@+id/fragment_sign_tx_msg_tv_message"
style="@style/BraveWalletTextView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginVertical="8dp"
android:gravity="center"
android:text="@string/fragment_sign_message_description"
android:textSize="16sp"
android:textStyle="bold"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/fragment_sign_tx_msg_tv_account_name"
tools:text="Your signature is being requested" />
<com.google.android.material.tabs.TabLayout
android:id="@+id/fragment_sign_tx_msg_tv_message_tabs"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@android:color/transparent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/fragment_sign_tx_msg_tv_message"
app:tabGravity="fill"
app:tabIndicatorColor="@android:color/transparent"
app:tabIndicatorHeight="0dp"
app:tabMaxWidth="0dp"
app:tabMode="fixed"
app:tabSelectedTextColor="@color/tab_color"
app:tabTextAppearance="@style/BraveWalletTabsTextAppearance"
app:tabTextColor="@color/wallet_text_color"
tools:ignore="SpeakableTextPresentCheck" />
<View
android:id="@+id/view_tab_line"
android:layout_width="match_parent"
android:layout_height="2dp"
android:layout_marginBottom="10dp"
android:background="@drawable/tab_gradient_separator"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/fragment_sign_tx_msg_tv_message_tabs" />
<androidx.viewpager2.widget.ViewPager2
android:id="@+id/fragment_sign_tx_msg_tv_message_view_pager"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_marginTop="12dp"
android:layout_marginBottom="32dp"
app:layout_constraintBottom_toTopOf="@+id/approve_tx_bottom_sheet_action"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/view_tab_line"
app:layout_constraintVertical_bias="0"
/>
<LinearLayout
android:id="@+id/fragment_sign_tx_warning_container"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="12dp"
android:layout_marginBottom="32dp"
android:background="#32E32444"
android:orientation="vertical"
android:padding="16dp"
app:layout_constraintBottom_toTopOf="@+id/approve_tx_bottom_sheet_action"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/view_tab_line"
app:layout_constraintVertical_bias="0"
android:visibility="visible">
<TextView
style="@style/BraveWalletTextView"
android:text="@string/brave_wallet_sign_warning_title"
android:textColor="@color/brave_theme_error_txt"
android:textStyle="bold"
android:drawablePadding="6dp"
app:drawableStartCompat="@drawable/ic_warning" />
<TextView
android:layout_marginTop="8dp"
style="@style/BraveWalletTextView"
android:layout_width="match_parent"
android:text="@string/brave_wallet_sign_warning"
android:textColor="@color/brave_theme_error_txt" />
<TextView
android:id="@+id/fragment_sign_tx_warning_learn_more"
style="@style/BraveWalletTextView"
android:textStyle="bold"
android:text="@string/learn_more"
android:textColor="@color/brave_link"
app:layout_constraintTop_toBottomOf="@id/fragment_sign_tx_warning_container" />
</LinearLayout>
<LinearLayout
android:id="@+id/approve_tx_bottom_sheet_action"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginVertical="12dp"
android:orientation="horizontal"
app:layout_constraintBottom_toBottomOf="parent">
<androidx.appcompat.widget.AppCompatButton
android:id="@+id/fragment_sign_tx_msg_btn_cancel"
style="@style/BraveWalletButtonHollow"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="start"
android:layout_marginStart="12dp"
android:layout_marginEnd="12dp"
android:layout_weight="1"
android:text="@string/brave_cancel"
android:textSize="16sp"
tools:ignore="DuplicateSpeakableTextCheck" />
<androidx.appcompat.widget.AppCompatButton
android:id="@+id/fragment_sign_tx_msg_btn_sign"
style="@style/BraveWalletButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="end"
android:layout_marginStart="12dp"
android:layout_marginEnd="12dp"
android:layout_weight="1"
android:drawableStart="@drawable/ic_key"
android:text="@string/brave_wallet_sign_message_positive_button_action"
app:drawableTint="@color/brave_white" />
</LinearLayout>
</androidx.constraintlayout.widget.ConstraintLayout>
@@ -0,0 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<View xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="1dp"
android:background="#989B9E"
android:layout_marginTop="2dp"
android:layout_marginBottom="2dp"/>
+1
View File
@@ -35,6 +35,7 @@
<color name="brave_theme_hint_text">#868E96</color>
<color name="brave_theme_error">#cc0000</color>
<color name="brave_theme_success">#51cf66</color>
<color name="brave_theme_error_txt">#E32444</color>
<!-- Onborading colors -->
<color name="onboarding_orange">#fb542b</color>
+12 -1
View File
@@ -77,7 +77,18 @@
<item name="android:textSize">16sp</item>
<item name="android:gravity">center</item>
</style>
<style name="BraveWalletTextButton" parent="Widget.AppCompat.Button">
<item name="buttonStyle">?android:attr/borderlessButtonStyle</item>
<item name="android:layout_width">wrap_content</item>
<item name="android:layout_height">wrap_content</item>
<item name="android:textColor">@color/brave_action_color</item>
<item name="android:background">@android:color/transparent</item>
<item name="android:textAllCaps">false</item>
<item name="android:textSize">16sp</item>
<item name="android:gravity">center</item>
</style>
<style name="BraveWalletEditTextBordered" parent="Widget.AppCompat.EditText">
<item name="android:layout_width">match_parent</item>
<item name="android:layout_height">wrap_content</item>