add status messages navbaritem
MODIFY
WalletWasabi.Fluent/ViewModels/Wallets/ClosedWalletViewModel.cs
WalletWasabi.Fluent/ViewModels/Wallets/ClosedWalletViewModel.cs
@@ -22,6 +22,7 @@ namespace WalletWasabi.Fluent.ViewModels.Wallets
base.OnNavigatedTo(isInHistory, disposables);
Loading.Activate(disposables);
+ IsLoading = true;
}
private void OnOpen()

MODIFY
WalletWasabi.Fluent/ViewModels/Wallets/WalletViewModel.cs
WalletWasabi.Fluent/ViewModels/Wallets/WalletViewModel.cs
using ReactiveUI;
using System;
using System.Collections.Generic;
-using System.Collections.ObjectModel;
using System.Reactive;
using System.Reactive.Concurrency;
using System.Reactive.Disposables;
@@ -40,7 +39,6 @@ namespace WalletWasabi.Fluent.ViewModels.Wallets
[AutoNotify(SetterModifier = AccessModifier.Private)] private bool _isWideLayout;
[AutoNotify(SetterModifier = AccessModifier.Private)] private bool _isWalletBalanceZero;
[AutoNotify(SetterModifier = AccessModifier.Private)] private bool _isEmptyWallet;
- [AutoNotify(SetterModifier = AccessModifier.Private)] private bool _isCoinJoining;
protected WalletViewModel(Wallet wallet) : base(wallet)
{

MODIFY
WalletWasabi.Fluent/ViewModels/Wallets/WalletViewModelBase.cs
WalletWasabi.Fluent/ViewModels/Wallets/WalletViewModelBase.cs
@@ -13,7 +13,8 @@ namespace WalletWasabi.Fluent.ViewModels.Wallets
public abstract partial class WalletViewModelBase : NavBarItemViewModel, IComparable<WalletViewModelBase>
{
[AutoNotify] private string _titleTip;
- [AutoNotify] private bool _isLoading;
+ [AutoNotify(SetterModifier = AccessModifier.Protected)] private bool _isLoading;
+ [AutoNotify(SetterModifier = AccessModifier.Protected)] private bool _isCoinJoining;
[AutoNotify(SetterModifier = AccessModifier.Private)] private WalletState _walletState;
private string _title;
@@ -32,9 +33,6 @@ namespace WalletWasabi.Fluent.ViewModels.Wallets
OpenCommand = ReactiveCommand.Create(() => Navigate().To(this, NavigationMode.Clear));
SetIcon();
-
- this.WhenAnyValue(x => x.WalletState)
- .Subscribe(state => IsLoading = state is > WalletState.Uninitialized and < WalletState.Started);
}
public override string Title

MODIFY
WalletWasabi.Fluent/Views/NavBar/NavBar.axaml
WalletWasabi.Fluent/Views/NavBar/NavBar.axaml
<Setter Property="Focusable" Value="{Binding IsEnabled}" x:CompileBindings="False" />
<Setter Property="IsEnabled" Value="{Binding IsEnabled}" x:CompileBindings="False" />
</Style>
+ <Style Selector="ListBox.narrowItemPadding > c|NavBarItem">
+ <Setter Property="Padding" Value="12 6 12 6" />
+ </Style>
<Style Selector="ListBox.vertical > c|NavBarItem:disabled PathIcon">
<Setter Property="Foreground" Value="{DynamicResource NavBarItemDisabledBrush}" />
</Style>
<c:NavBarListBox Items="{Binding Wallets}"
SelectedItem="{Binding SelectedItem, Mode=TwoWay}"
Name="ItemsListBox"
- Classes="vertical draggable"
+ Classes="vertical draggable narrowItemPadding"
RenderTransformOrigin="0%,50%"
VerticalAlignment="Stretch">
<c:NavBarListBox.DataTemplates>
<DataTemplate DataType="vmw:WalletViewModelBase">
- <Panel>
+ <Panel Height="30">
<Panel Width="45" Background="Transparent" HorizontalAlignment="Left" ToolTip.Tip="{Binding Title}">
<PathIcon HorizontalAlignment="Left">
<PathIcon.Data>
<Ellipse IsVisible="{Binding IsLoggedIn, Mode=OneWay}" Width="9" Height="9" Margin="15,0,0,-13"
Fill="#F2994A" />
</Panel>
- <TextBlock Text="{Binding Title}" TextTrimming="CharacterEllipsis" Margin="55 0 15 0" />
+ <DockPanel Margin="55 0 15 0" VerticalAlignment="Center">
+ <TextBlock Text="{Binding Title}" TextTrimming="CharacterEllipsis" DockPanel.Dock="Top"/>
+ <TextBlock Opacity="0.4" FontSize="11" Text="Loading" DockPanel.Dock="Bottom" IsVisible="{Binding IsLoading}"/>
+ <TextBlock Opacity="0.4" FontSize="11" Text="CoinJoining" DockPanel.Dock="Bottom" IsVisible="{Binding IsCoinJoining}" x:CompileBindings="False"/>
+ </DockPanel>
</Panel>
</DataTemplate>
</c:NavBarListBox.DataTemplates>

add status messages navbaritem