mirror of
https://codeberg.org/anoncontributorxmr/mysu.git
synced 2024-11-25 17:02:28 +00:00
Move receive/send to new bottom sheet dialogs, change theme stuff.
NOTE: This commit still logs seed phrases for development purposes
This commit is contained in:
parent
832379aa94
commit
ce5985bb47
17 changed files with 224 additions and 198 deletions
|
@ -34,7 +34,7 @@
|
|||
android:label="@string/app_name"
|
||||
android:preserveLegacyExternalStorage="true"
|
||||
android:supportsRtl="true"
|
||||
android:theme="@style/MyMaterialThemeClassic"
|
||||
android:theme="@style/MyMaterialThemeOled"
|
||||
android:usesCleartextTraffic="true">
|
||||
<activity
|
||||
android:name=".MainActivity"
|
||||
|
|
|
@ -0,0 +1,73 @@
|
|||
package com.m2049r.xmrwallet.fragment.dialog;
|
||||
|
||||
import android.graphics.Bitmap;
|
||||
import android.os.Bundle;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
import android.widget.ImageView;
|
||||
import android.widget.TextView;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.annotation.Nullable;
|
||||
|
||||
import com.google.android.material.bottomsheet.BottomSheetDialogFragment;
|
||||
import com.google.zxing.BarcodeFormat;
|
||||
import com.google.zxing.EncodeHintType;
|
||||
import com.google.zxing.WriterException;
|
||||
import com.google.zxing.common.BitMatrix;
|
||||
import com.google.zxing.qrcode.QRCodeWriter;
|
||||
import com.google.zxing.qrcode.decoder.ErrorCorrectionLevel;
|
||||
import com.m2049r.xmrwallet.R;
|
||||
import com.m2049r.xmrwallet.service.AddressService;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
import timber.log.Timber;
|
||||
|
||||
public class ReceiveBottomSheetDialog extends BottomSheetDialogFragment {
|
||||
|
||||
@Override
|
||||
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
|
||||
return inflater.inflate(R.layout.receive_bottom_sheet_dialog, null);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) {
|
||||
super.onViewCreated(view, savedInstanceState);
|
||||
ImageView addressImageView = view.findViewById(R.id.monero_qr_imageview);
|
||||
TextView addressTextView = view.findViewById(R.id.address_textview);
|
||||
|
||||
AddressService.getInstance().address.observe(getViewLifecycleOwner(), addr -> {
|
||||
if (!addr.isEmpty()) {
|
||||
addressTextView.setText(addr);
|
||||
addressImageView.setImageBitmap(generate(addr, 256, 256));
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
public Bitmap generate(String text, int width, int height) {
|
||||
if ((width <= 0) || (height <= 0)) return null;
|
||||
Map<EncodeHintType, Object> hints = new HashMap<>();
|
||||
hints.put(EncodeHintType.CHARACTER_SET, "utf-8");
|
||||
hints.put(EncodeHintType.ERROR_CORRECTION, ErrorCorrectionLevel.M);
|
||||
try {
|
||||
BitMatrix bitMatrix = new QRCodeWriter().encode(text, BarcodeFormat.QR_CODE, width, height, hints);
|
||||
int[] pixels = new int[width * height];
|
||||
for (int i = 0; i < height; i++) {
|
||||
for (int j = 0; j < width; j++) {
|
||||
if (bitMatrix.get(j, i)) {
|
||||
pixels[i * width + j] = 0x00000000;
|
||||
} else {
|
||||
pixels[i * height + j] = 0xffffffff;
|
||||
}
|
||||
}
|
||||
}
|
||||
return Bitmap.createBitmap(pixels, 0, width, width, height, Bitmap.Config.RGB_565);
|
||||
} catch (WriterException ex) {
|
||||
Timber.e(ex);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,51 @@
|
|||
package com.m2049r.xmrwallet.fragment.dialog;
|
||||
|
||||
import android.os.Bundle;
|
||||
import com.google.android.material.bottomsheet.BottomSheetDialogFragment;
|
||||
import com.m2049r.xmrwallet.R;
|
||||
import com.m2049r.xmrwallet.model.Wallet;
|
||||
import com.m2049r.xmrwallet.service.TxService;
|
||||
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
import android.widget.Button;
|
||||
import android.widget.EditText;
|
||||
import android.widget.Toast;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.annotation.Nullable;
|
||||
|
||||
public class SendBottomSheetDialog extends BottomSheetDialogFragment {
|
||||
|
||||
@Override
|
||||
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
|
||||
return inflater.inflate(R.layout.send_bottom_sheet_dialog, null);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) {
|
||||
super.onViewCreated(view, savedInstanceState);
|
||||
EditText addressEditText = view.findViewById(R.id.address_edittext);
|
||||
EditText amountEditText = view.findViewById(R.id.amount_edittext);
|
||||
Button sendButton = view.findViewById(R.id.send_button);
|
||||
|
||||
TxService.getInstance().clearSendEvent.observe(getViewLifecycleOwner(), o -> {
|
||||
dismiss();
|
||||
});
|
||||
|
||||
sendButton.setOnClickListener(view1 -> {
|
||||
String address = addressEditText.getText().toString().trim();
|
||||
String amount = amountEditText.getText().toString().trim();
|
||||
boolean validAddress = Wallet.isAddressValid(address);
|
||||
if (validAddress && !amount.isEmpty()) {
|
||||
sendButton.setEnabled(false);
|
||||
TxService.getInstance().sendTx(address, amount);
|
||||
} else if (!validAddress) {
|
||||
Toast.makeText(getActivity(), getString(R.string.send_address_invalid), Toast.LENGTH_SHORT).show();
|
||||
} else if (amount.isEmpty()) {
|
||||
Toast.makeText(getActivity(), getString(R.string.send_amount_empty), Toast.LENGTH_SHORT).show();
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
|
@ -7,6 +7,7 @@ import android.view.ViewGroup;
|
|||
import android.widget.Button;
|
||||
import android.widget.EditText;
|
||||
import android.widget.ImageView;
|
||||
import android.widget.LinearLayout;
|
||||
import android.widget.TextView;
|
||||
import android.widget.Toast;
|
||||
|
||||
|
@ -18,8 +19,11 @@ import androidx.fragment.app.FragmentManager;
|
|||
import androidx.lifecycle.ViewModelProvider;
|
||||
import androidx.navigation.fragment.NavHostFragment;
|
||||
|
||||
import com.google.android.material.bottomsheet.BottomSheetDialog;
|
||||
import com.m2049r.xmrwallet.MainActivity;
|
||||
import com.m2049r.xmrwallet.R;
|
||||
import com.m2049r.xmrwallet.fragment.dialog.ReceiveBottomSheetDialog;
|
||||
import com.m2049r.xmrwallet.fragment.dialog.SendBottomSheetDialog;
|
||||
import com.m2049r.xmrwallet.model.Wallet;
|
||||
import com.m2049r.xmrwallet.service.AddressService;
|
||||
import com.m2049r.xmrwallet.service.BalanceService;
|
||||
|
@ -41,46 +45,26 @@ public class HomeFragment extends Fragment {
|
|||
mViewModel = new ViewModelProvider(this).get(HomeViewModel.class);
|
||||
|
||||
ImageView settingsImageView = view.findViewById(R.id.settings_imageview);
|
||||
ImageView addressImageView = view.findViewById(R.id.monero_qr_imageview);
|
||||
TextView addressTextView = view.findViewById(R.id.address_textview);
|
||||
TextView balanceTextView = view.findViewById(R.id.balance_textview);
|
||||
EditText addressEditText = view.findViewById(R.id.address_edittext);
|
||||
EditText amountEditText = view.findViewById(R.id.amount_edittext);
|
||||
Button sendButton = view.findViewById(R.id.send_button);
|
||||
|
||||
AddressService.getInstance().address.observe(getViewLifecycleOwner(), addr -> {
|
||||
if (!addr.isEmpty()) {
|
||||
addressTextView.setText(addr);
|
||||
addressImageView.setImageBitmap(mViewModel.generate(addr, 256, 256));
|
||||
}
|
||||
});
|
||||
Button receiveButton = view.findViewById(R.id.receive_button);
|
||||
|
||||
BalanceService.getInstance().balance.observe(getViewLifecycleOwner(), balance -> {
|
||||
balanceTextView.setText(getString(R.string.wallet_balance_text, Wallet.getDisplayAmount(balance)));
|
||||
});
|
||||
|
||||
TxService.getInstance().clearSendEvent.observe(getViewLifecycleOwner(), o -> {
|
||||
addressEditText.setText(null);
|
||||
amountEditText.setText(null);
|
||||
sendButton.setEnabled(true);
|
||||
});
|
||||
|
||||
settingsImageView.setOnClickListener(view12 -> {
|
||||
navigate(R.id.settings_fragment);
|
||||
});
|
||||
|
||||
sendButton.setOnClickListener(view1 -> {
|
||||
String address = addressEditText.getText().toString().trim();
|
||||
String amount = amountEditText.getText().toString().trim();
|
||||
boolean validAddress = Wallet.isAddressValid(address);
|
||||
if (validAddress && !amount.isEmpty()) {
|
||||
sendButton.setEnabled(false);
|
||||
TxService.getInstance().sendTx(address, amount);
|
||||
} else if (!validAddress) {
|
||||
Toast.makeText(getActivity(), getString(R.string.send_address_invalid), Toast.LENGTH_SHORT).show();
|
||||
} else if (amount.isEmpty()) {
|
||||
Toast.makeText(getActivity(), getString(R.string.send_amount_empty), Toast.LENGTH_SHORT).show();
|
||||
}
|
||||
SendBottomSheetDialog sendDialog = new SendBottomSheetDialog();
|
||||
sendDialog.show(getActivity().getSupportFragmentManager(), null);
|
||||
});
|
||||
|
||||
receiveButton.setOnClickListener(view1 -> {
|
||||
ReceiveBottomSheetDialog receiveDialog = new ReceiveBottomSheetDialog();
|
||||
receiveDialog.show(getActivity().getSupportFragmentManager(), null);
|
||||
});
|
||||
}
|
||||
|
||||
|
|
|
@ -17,27 +17,5 @@ import java.util.Map;
|
|||
import timber.log.Timber;
|
||||
|
||||
public class HomeViewModel extends ViewModel {
|
||||
public Bitmap generate(String text, int width, int height) {
|
||||
if ((width <= 0) || (height <= 0)) return null;
|
||||
Map<EncodeHintType, Object> hints = new HashMap<>();
|
||||
hints.put(EncodeHintType.CHARACTER_SET, "utf-8");
|
||||
hints.put(EncodeHintType.ERROR_CORRECTION, ErrorCorrectionLevel.M);
|
||||
try {
|
||||
BitMatrix bitMatrix = new QRCodeWriter().encode(text, BarcodeFormat.QR_CODE, width, height, hints);
|
||||
int[] pixels = new int[width * height];
|
||||
for (int i = 0; i < height; i++) {
|
||||
for (int j = 0; j < width; j++) {
|
||||
if (bitMatrix.get(j, i)) {
|
||||
pixels[i * width + j] = 0x00000000;
|
||||
} else {
|
||||
pixels[i * height + j] = 0xffffffff;
|
||||
}
|
||||
}
|
||||
}
|
||||
return Bitmap.createBitmap(pixels, 0, width, width, height, Bitmap.Config.RGB_565);
|
||||
} catch (WriterException ex) {
|
||||
Timber.e(ex);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
}
|
|
@ -46,14 +46,7 @@ public class ThemeHelper {
|
|||
}
|
||||
|
||||
public static void setTheme(@NonNull Activity activity, @NonNull String theme) {
|
||||
switch (theme) {
|
||||
case "Classic":
|
||||
activity.setTheme(R.style.MyMaterialThemeClassic);
|
||||
break;
|
||||
case "Oled":
|
||||
activity.setTheme(R.style.MyMaterialThemeOled);
|
||||
break;
|
||||
}
|
||||
activity.setTheme(R.style.MyMaterialThemeOled);
|
||||
}
|
||||
|
||||
public static void setPreferred(Activity activity) {
|
||||
|
|
|
@ -16,76 +16,40 @@
|
|||
app:layout_constraintTop_toTopOf="parent"
|
||||
app:layout_constraintEnd_toEndOf="parent"/>
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/monero_qr_imageview"
|
||||
android:layout_width="256dp"
|
||||
android:layout_height="256dp"
|
||||
android:layout_marginTop="16dp"
|
||||
android:src="@drawable/ic_fingerprint"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"/>
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/monero_logo_imageview"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:src="@drawable/ic_monero_qr"
|
||||
app:layout_constraintBottom_toBottomOf="@id/monero_qr_imageview"
|
||||
app:layout_constraintEnd_toEndOf="@id/monero_qr_imageview"
|
||||
app:layout_constraintTop_toTopOf="@id/monero_qr_imageview"
|
||||
app:layout_constraintStart_toStartOf="@id/monero_qr_imageview"/>
|
||||
|
||||
<TextView
|
||||
android:id="@+id/address_textview"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="16dp"
|
||||
android:layout_marginStart="24dp"
|
||||
android:layout_marginEnd="24dp"
|
||||
android:textAlignment="center"
|
||||
tools:text="ADDRESS"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@id/monero_qr_imageview" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/balance_textview"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="24dp"
|
||||
android:layout_marginEnd="24dp"
|
||||
android:layout_marginTop="8dp"
|
||||
android:textAlignment="center"
|
||||
tools:text="BALANCE"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@id/address_textview" />
|
||||
app:layout_constraintTop_toTopOf="@id/settings_imageview"
|
||||
app:layout_constraintBottom_toBottomOf="@id/settings_imageview"/>
|
||||
|
||||
<EditText
|
||||
android:id="@+id/address_edittext"
|
||||
android:layout_width="match_parent"
|
||||
<Button
|
||||
android:id="@+id/receive_button"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="24dp"
|
||||
android:layout_marginEnd="24dp"
|
||||
android:hint="Address"
|
||||
app:layout_constraintBottom_toTopOf="@id/amount_edittext"/>
|
||||
<EditText
|
||||
android:id="@+id/amount_edittext"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="24dp"
|
||||
android:layout_marginEnd="24dp"
|
||||
android:hint="Amount"
|
||||
android:inputType="numberDecimal"
|
||||
app:layout_constraintBottom_toTopOf="@id/send_button"/>
|
||||
android:layout_marginBottom="16dp"
|
||||
android:text="Receive"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintEnd_toStartOf="@id/send_button"
|
||||
app:layout_constraintBottom_toBottomOf="parent"/>
|
||||
|
||||
<Button
|
||||
android:id="@+id/send_button"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="24dp"
|
||||
android:layout_marginEnd="24dp"
|
||||
android:layout_marginBottom="16dp"
|
||||
android:text="Send"
|
||||
app:layout_constraintStart_toEndOf="@id/receive_button"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintBottom_toBottomOf="parent"/>
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
47
app/src/main/res/layout/send_bottom_sheet_dialog.xml
Normal file
47
app/src/main/res/layout/send_bottom_sheet_dialog.xml
Normal file
|
@ -0,0 +1,47 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<ScrollView 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:fillViewport="true"
|
||||
android:fitsSystemWindows="true"
|
||||
android:padding="16dp">
|
||||
|
||||
|
||||
<androidx.constraintlayout.widget.ConstraintLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content">
|
||||
|
||||
<EditText
|
||||
android:id="@+id/address_edittext"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="24dp"
|
||||
android:layout_marginEnd="24dp"
|
||||
android:hint="Address"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
app:layout_constraintBottom_toTopOf="@id/amount_edittext"/>
|
||||
<EditText
|
||||
android:id="@+id/amount_edittext"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="24dp"
|
||||
android:layout_marginEnd="24dp"
|
||||
android:hint="Amount"
|
||||
android:inputType="numberDecimal"
|
||||
app:layout_constraintBottom_toTopOf="@id/send_button"/>
|
||||
|
||||
<Button
|
||||
android:id="@+id/send_button"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="24dp"
|
||||
android:layout_marginEnd="24dp"
|
||||
android:text="Send"
|
||||
app:layout_constraintTop_toBottomOf="@id/amount_edittext"
|
||||
app:layout_constraintStart_toStartOf="parent"/>
|
||||
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
|
||||
</ScrollView>
|
|
@ -1,3 +0,0 @@
|
|||
<resources>
|
||||
<dimen name="fab_margin">48dp</dimen>
|
||||
</resources>
|
|
@ -1,11 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
|
||||
<style name="MyMaterialTheme" parent="Theme.MaterialComponents.DayNight">
|
||||
<item name="android:windowLightStatusBar">false</item>
|
||||
<item name="windowNoTitle">true</item>
|
||||
<item name="windowActionBar">false</item>
|
||||
<item name="materialCardViewStyle">@style/AppCard</item>
|
||||
<item name="materialButtonStyle">@style/AppButton</item>
|
||||
</style>
|
||||
</resources>
|
|
@ -1,12 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
|
||||
<style name="MyMaterialTheme" parent="Theme.MaterialComponents.DayNight">
|
||||
<item name="android:windowLightStatusBar">false</item>
|
||||
<item name="android:windowLightNavigationBar">false</item>
|
||||
<item name="windowNoTitle">true</item>
|
||||
<item name="windowActionBar">false</item>
|
||||
<item name="materialCardViewStyle">@style/AppCard</item>
|
||||
<item name="materialButtonStyle">@style/AppButton</item>
|
||||
</style>
|
||||
</resources>
|
|
@ -1,11 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
|
||||
<style name="MyMaterialTheme" parent="Theme.MaterialComponents.DayNight">
|
||||
<item name="android:windowLightStatusBar">true</item>
|
||||
<item name="windowNoTitle">true</item>
|
||||
<item name="windowActionBar">false</item>
|
||||
<item name="materialCardViewStyle">@style/AppCard</item>
|
||||
<item name="materialButtonStyle">@style/AppButton</item>
|
||||
</style>
|
||||
</resources>
|
|
@ -1,12 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
|
||||
<style name="MyMaterialTheme" parent="Theme.MaterialComponents.DayNight">
|
||||
<item name="android:windowLightStatusBar">true</item>
|
||||
<item name="android:windowLightNavigationBar">true</item>
|
||||
<item name="windowNoTitle">true</item>
|
||||
<item name="windowActionBar">false</item>
|
||||
<item name="materialCardViewStyle">@style/AppCard</item>
|
||||
<item name="materialButtonStyle">@style/AppButton</item>
|
||||
</style>
|
||||
</resources>
|
|
@ -1,3 +0,0 @@
|
|||
<resources>
|
||||
<dimen name="fab_margin">200dp</dimen>
|
||||
</resources>
|
|
@ -1,3 +0,0 @@
|
|||
<resources>
|
||||
<dimen name="fab_margin">48dp</dimen>
|
||||
</resources>
|
|
@ -36,36 +36,32 @@
|
|||
<item name="android:navigationBarColor">@color/oled_navigationBarColor</item>
|
||||
<item name="android:textColorPrimary">@color/oled_textColorPrimary</item>
|
||||
<item name="android:textColorSecondary">@color/oled_textColorSecondary</item>
|
||||
<item name="bottomSheetDialogTheme">@style/BottomSheetDialog_Rounded</item>
|
||||
</style>
|
||||
|
||||
<style name="MyMaterialThemeClassic" parent="MyMaterialTheme">
|
||||
<item name="toolbarTextColor">@color/classic_toolbarTextColor</item>
|
||||
<item name="gradientTopColor">@color/classic_gradientTopColor</item>
|
||||
<item name="gradientBottomColor">@color/classic_gradientBottomColor</item>
|
||||
<item name="favouriteColor">@color/classic_favouriteColor</item>
|
||||
<item name="softFavouriteColor">@color/classic_softFavouriteColor</item>
|
||||
<item name="positiveColor">@color/classic_positiveColor</item>
|
||||
<item name="negativeColor">@color/classic_negativeColor</item>
|
||||
<item name="neutralColor">@color/classic_neutralColor</item>
|
||||
<item name="streetColorA">@color/classic_streetColorA</item>
|
||||
<item name="streetColorB">@color/classic_streetColorB</item>
|
||||
<item name="noticeColor">@color/classic_noticeColor</item>
|
||||
<item name="colorPrimary">@color/classic_colorPrimary</item>
|
||||
<item name="colorPrimaryVariant">@color/classic_colorPrimaryVariant</item>
|
||||
<item name="colorOnPrimary">@color/classic_colorOnPrimary</item>
|
||||
<item name="colorSecondary">@color/classic_colorSecondary</item>
|
||||
<item name="colorSecondaryVariant">@color/classic_colorSecondaryVariant</item>
|
||||
<item name="colorOnSecondary">@color/classic_colorOnSecondary</item>
|
||||
<item name="colorError">@color/classic_colorError</item>
|
||||
<item name="colorOnError">@color/classic_colorOnError</item>
|
||||
<item name="colorSurface">@color/classic_colorSurface</item>
|
||||
<item name="colorOnSurface">@color/classic_colorOnSurface</item>
|
||||
<item name="android:colorBackground">@color/classic_colorBackground</item>
|
||||
<item name="colorOnBackground">@color/classic_colorOnBackground</item>
|
||||
<item name="android:statusBarColor">@color/classic_statusBarColor</item>
|
||||
<item name="android:navigationBarColor">@color/classic_navigationBarColor</item>
|
||||
<item name="android:textColorSecondary">@color/classic_textColorSecondary</item>
|
||||
<item name="android:textColorPrimary">@color/classic_textColorPrimary</item>
|
||||
<!-- BottomSheet Dialog-->
|
||||
<style name="BottomSheetDialog_Rounded" parent="MyMaterialThemeOled">
|
||||
<item name="android:windowBackground">@android:color/transparent</item>
|
||||
<item name="android:windowIsFloating">false</item>
|
||||
<item name="android:windowAnimationStyle">@style/Animation.MaterialComponents.BottomSheetDialog</item>
|
||||
<item name="enableEdgeToEdge">true</item>
|
||||
<item name="paddingBottomSystemWindowInsets">true</item>
|
||||
<item name="paddingLeftSystemWindowInsets">true</item>
|
||||
<item name="paddingRightSystemWindowInsets">true</item>
|
||||
<item name="paddingTopSystemWindowInsets">true</item>
|
||||
<item name="bottomSheetStyle">@style/BottomSheet_Rounded</item>
|
||||
</style>
|
||||
|
||||
<style name="BottomSheet_Rounded" parent="Widget.MaterialComponents.BottomSheet">
|
||||
<item name="shapeAppearanceOverlay">@style/ShapeAppearanceBottomSheetDialog_Rounded</item>
|
||||
</style>
|
||||
|
||||
<style name="ShapeAppearanceBottomSheetDialog_Rounded" parent="">
|
||||
<item name="cornerFamily">rounded</item>
|
||||
<item name="cornerSizeTopRight">16dp</item>
|
||||
<item name="cornerSizeTopLeft">16dp</item>
|
||||
<item name="cornerSizeBottomRight">0dp</item>
|
||||
<item name="cornerSizeBottomLeft">0dp</item>
|
||||
</style>
|
||||
|
||||
<style name="MonerujoToolbar" parent="Widget.MaterialComponents.Toolbar">
|
||||
|
|
|
@ -1,10 +1,5 @@
|
|||
<resources>
|
||||
|
||||
<style name="MyMaterialThemeClassic.NoActionBar">
|
||||
<item name="windowActionBar">false</item>
|
||||
<item name="windowNoTitle">true</item>
|
||||
</style>
|
||||
|
||||
<style name="MyMaterialThemeClassic.AppBarOverlay" parent="ThemeOverlay.AppCompat.Dark.ActionBar" />
|
||||
|
||||
<style name="MyMaterialThemeClassic.PopupOverlay" parent="ThemeOverlay.AppCompat.Light" />
|
||||
|
|
Loading…
Reference in a new issue