Merge pull request #638 from cypherstack/ui-fixes

UI fixes
This commit is contained in:
julian-CStack 2023-07-27 15:44:58 -06:00 committed by GitHub
commit 1920034e1f
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 36 additions and 23 deletions

View file

@ -66,6 +66,8 @@ class _MonkeyViewState extends ConsumerState<MonkeyView> {
}
}
String _monkeyPath = "";
Future<void> _saveMonKeyToFile({
required Uint8List bytes,
bool isPNG = false,
@ -96,6 +98,7 @@ class _MonkeyViewState extends ConsumerState<MonkeyView> {
}
await imgFile.writeAsBytes(bytes);
_monkeyPath = filePath;
}
@override
@ -369,7 +372,8 @@ class _MonkeyViewState extends ConsumerState<MonkeyView> {
if (!didError && mounted) {
await showFloatingFlushBar(
type: FlushBarType.success,
message: "SVG MonKey image saved",
message:
"SVG MonKey image saved to $_monkeyPath",
context: context,
);
}
@ -421,7 +425,8 @@ class _MonkeyViewState extends ConsumerState<MonkeyView> {
if (!didError && mounted) {
await showFloatingFlushBar(
type: FlushBarType.success,
message: "PNG MonKey image saved",
message:
"PNG MonKey image saved to $_monkeyPath",
context: context,
);
}

View file

@ -229,7 +229,7 @@ class _OrdinalImageGroup extends StatelessWidget {
static const _spacing = 12.0;
Future<void> _savePngToFile() async {
Future<String> _savePngToFile() async {
final response = await get(Uri.parse(ordinal.content));
if (response.statusCode != 200) {
@ -257,6 +257,7 @@ class _OrdinalImageGroup extends StatelessWidget {
}
await imgFile.writeAsBytes(bytes);
return filePath;
}
@override
@ -309,11 +310,8 @@ class _OrdinalImageGroup extends StatelessWidget {
iconSpacing: 4,
onPressed: () async {
bool didError = false;
await showLoading(
whileFuture: Future.wait([
_savePngToFile(),
Future<void>.delayed(const Duration(seconds: 2)),
]),
final filePath = await showLoading<String>(
whileFuture: _savePngToFile(),
context: context,
isDesktop: true,
message: "Saving ordinal image",
@ -334,7 +332,7 @@ class _OrdinalImageGroup extends StatelessWidget {
if (!didError && context.mounted) {
await showFloatingFlushBar(
type: FlushBarType.success,
message: "Image saved",
message: "Image saved to $filePath",
context: context,
);
}

View file

@ -10,6 +10,7 @@
import 'dart:async';
import 'dart:io';
import 'dart:typed_data';
import 'package:event_bus/event_bus.dart';
import 'package:flutter/material.dart';
@ -28,6 +29,7 @@ import 'package:stackwallet/pages_desktop_specific/my_stack_view/wallet_view/sub
import 'package:stackwallet/providers/global/auto_swb_service_provider.dart';
import 'package:stackwallet/providers/providers.dart';
import 'package:stackwallet/providers/ui/transaction_filter_provider.dart';
import 'package:stackwallet/services/coins/banano/banano_wallet.dart';
import 'package:stackwallet/services/event_bus/events/global/wallet_sync_status_changed_event.dart';
import 'package:stackwallet/services/event_bus/global_event_bus.dart';
import 'package:stackwallet/themes/coin_icon_provider.dart';
@ -153,6 +155,10 @@ class _DesktopWalletViewState extends ConsumerState<DesktopWalletView> {
final managerProvider = ref.watch(walletsChangeNotifierProvider
.select((value) => value.getManagerProvider(widget.walletId)));
final monke = coin == Coin.banano
? (manager.wallet as BananoWallet).getMonkeyImageBytes()
: null;
return ConditionalParent(
condition: _rescanningOnOpen,
builder: (child) {
@ -334,6 +340,13 @@ class _DesktopWalletViewState extends ConsumerState<DesktopWalletView> {
padding: const EdgeInsets.all(20),
child: Row(
children: [
if (monke != null)
SvgPicture.memory(
Uint8List.fromList(monke!),
width: 60,
height: 60,
),
if (monke == null)
SvgPicture.file(
File(
ref.watch(coinIconProvider(coin)),

View file

@ -49,7 +49,7 @@ class _DesktopOrdinalDetailsViewState
late final UTXO? utxo;
Future<void> _savePngToFile() async {
Future<String> _savePngToFile() async {
final response = await get(Uri.parse(widget.ordinal.content));
if (response.statusCode != 200) {
@ -77,6 +77,7 @@ class _DesktopOrdinalDetailsViewState
}
await imgFile.writeAsBytes(bytes);
return filePath;
}
@override
@ -224,12 +225,8 @@ class _DesktopOrdinalDetailsViewState
iconSpacing: 8,
onPressed: () async {
bool didError = false;
await showLoading(
whileFuture: Future.wait([
_savePngToFile(),
Future<void>.delayed(
const Duration(seconds: 2)),
]),
final path = await showLoading<String>(
whileFuture: _savePngToFile(),
context: context,
isDesktop: true,
message: "Saving ordinal image",
@ -251,7 +248,7 @@ class _DesktopOrdinalDetailsViewState
if (!didError && mounted) {
await showFloatingFlushBar(
type: FlushBarType.success,
message: "Image saved",
message: "Image saved to $path",
context: context,
);
}