feat(ui): unified tab bar with icons on desktop and mobile
Replace the mobile-only custom bottom Grid nav bar with a single styled
TabStrip that works the same on both platforms: icon + label headers,
gray background, UniformGrid for equal-width columns.
Also adds the 📷 scan button in the Send address field (visible on mobile,
triggers ScanQrCommand wired in the previous commit).
This commit is contained in:
@@ -185,7 +185,7 @@
|
||||
</ScrollViewer>
|
||||
|
||||
<!-- ============ PANNELLO WALLET ============ -->
|
||||
<Grid Grid.Row="1" RowDefinitions="Auto,*,Auto" IsVisible="{Binding IsWalletOpen}" Margin="16">
|
||||
<Grid Grid.Row="1" RowDefinitions="Auto,*" IsVisible="{Binding IsWalletOpen}" Margin="16">
|
||||
|
||||
<!-- Testata: saldo + rete. Connetti/sincronizza è automatico; chiudi
|
||||
wallet è in File. Lo stato connessione è nella barra in basso. -->
|
||||
@@ -201,10 +201,9 @@
|
||||
TabStripPlacement="Top">
|
||||
|
||||
<TabControl.Styles>
|
||||
<!-- Su mobile nascondiamo il TabStrip integrato (barra custom sotto) -->
|
||||
<Style Selector="TabStrip">
|
||||
<Setter Property="IsVisible" Value="{Binding !IsMobile}"/>
|
||||
<Setter Property="HorizontalAlignment" Value="Stretch"/>
|
||||
<Setter Property="Background" Value="{DynamicResource SystemControlBackgroundChromeMediumBrush}"/>
|
||||
<Setter Property="ItemsPanel">
|
||||
<ItemsPanelTemplate>
|
||||
<UniformGrid Rows="1"/>
|
||||
@@ -215,7 +214,7 @@
|
||||
<Setter Property="HorizontalAlignment" Value="Stretch"/>
|
||||
<Setter Property="HorizontalContentAlignment" Value="Center"/>
|
||||
<Setter Property="VerticalContentAlignment" Value="Center"/>
|
||||
<Setter Property="Padding" Value="6,8"/>
|
||||
<Setter Property="Padding" Value="4,8"/>
|
||||
</Style>
|
||||
</TabControl.Styles>
|
||||
|
||||
@@ -224,7 +223,7 @@
|
||||
<TabItem.Header>
|
||||
<StackPanel Spacing="2" HorizontalAlignment="Center">
|
||||
<TextBlock Text="≡" FontSize="19" HorizontalAlignment="Center"
|
||||
IsVisible="{Binding IsMobile}"/>
|
||||
/>
|
||||
<TextBlock Text="{Binding Loc[tab.history]}" FontSize="12"
|
||||
HorizontalAlignment="Center"/>
|
||||
</StackPanel>
|
||||
@@ -273,7 +272,7 @@
|
||||
<TabItem.Header>
|
||||
<StackPanel Spacing="2" HorizontalAlignment="Center">
|
||||
<TextBlock Text="↑" FontSize="19" HorizontalAlignment="Center"
|
||||
IsVisible="{Binding IsMobile}"/>
|
||||
/>
|
||||
<TextBlock Text="{Binding Loc[tab.send]}" FontSize="12"
|
||||
HorizontalAlignment="Center"/>
|
||||
</StackPanel>
|
||||
@@ -292,8 +291,16 @@
|
||||
</ComboBox.ItemTemplate>
|
||||
</ComboBox>
|
||||
</StackPanel>
|
||||
<TextBox PlaceholderText="{Binding Loc[send.to]}" Text="{Binding SendTo}"
|
||||
FontFamily="monospace"/>
|
||||
<Grid ColumnDefinitions="*,Auto">
|
||||
<TextBox Grid.Column="0"
|
||||
PlaceholderText="{Binding Loc[send.to]}" Text="{Binding SendTo}"
|
||||
FontFamily="monospace"/>
|
||||
<Button Grid.Column="1" Margin="6,0,0,0" Padding="10,0"
|
||||
Content="📷" FontSize="20"
|
||||
IsVisible="{Binding IsMobile}"
|
||||
Command="{Binding ScanQrCommand}"
|
||||
ToolTip.Tip="{Binding Loc[send.scan]}"/>
|
||||
</Grid>
|
||||
<!-- Desktop: riga amount + fee in 4 colonne -->
|
||||
<Grid ColumnDefinitions="*,Auto,Auto,Auto" IsVisible="{Binding IsDesktop}">
|
||||
<TextBox Grid.Column="0" PlaceholderText="{Binding Loc[send.amount]}"
|
||||
@@ -338,7 +345,7 @@
|
||||
<TabItem.Header>
|
||||
<StackPanel Spacing="2" HorizontalAlignment="Center">
|
||||
<TextBlock Text="↓" FontSize="19" HorizontalAlignment="Center"
|
||||
IsVisible="{Binding IsMobile}"/>
|
||||
/>
|
||||
<TextBlock Text="{Binding Loc[tab.receive]}" FontSize="12"
|
||||
HorizontalAlignment="Center"/>
|
||||
</StackPanel>
|
||||
@@ -380,7 +387,7 @@
|
||||
<TabItem.Header>
|
||||
<StackPanel Spacing="2" HorizontalAlignment="Center">
|
||||
<TextBlock Text="⊙" FontSize="19" HorizontalAlignment="Center"
|
||||
IsVisible="{Binding IsMobile}"/>
|
||||
/>
|
||||
<TextBlock Text="{Binding Loc[tab.addresses]}" FontSize="12"
|
||||
HorizontalAlignment="Center"/>
|
||||
</StackPanel>
|
||||
@@ -438,7 +445,7 @@
|
||||
<TabItem.Header>
|
||||
<StackPanel Spacing="2" HorizontalAlignment="Center">
|
||||
<TextBlock Text="⊕" FontSize="19" HorizontalAlignment="Center"
|
||||
IsVisible="{Binding IsMobile}"/>
|
||||
/>
|
||||
<TextBlock Text="{Binding Loc[tab.contacts]}" FontSize="12"
|
||||
HorizontalAlignment="Center"/>
|
||||
</StackPanel>
|
||||
@@ -510,59 +517,6 @@
|
||||
|
||||
</TabControl>
|
||||
|
||||
<!-- Barra di navigazione custom mobile: 5 colonne uguali, sempre centrata -->
|
||||
<Grid Grid.Row="2"
|
||||
ColumnDefinitions="*,*,*,*,*"
|
||||
IsVisible="{Binding IsMobile}"
|
||||
Background="{DynamicResource SystemControlBackgroundChromeMediumBrush}"
|
||||
Margin="-16,4,-16,0">
|
||||
<Button Grid.Column="0"
|
||||
HorizontalAlignment="Stretch" HorizontalContentAlignment="Center"
|
||||
Background="Transparent" Padding="4,8"
|
||||
Command="{Binding SelectTabCommand}" CommandParameter="0">
|
||||
<StackPanel Spacing="2" HorizontalAlignment="Center">
|
||||
<TextBlock Text="≡" FontSize="19" HorizontalAlignment="Center"/>
|
||||
<TextBlock Text="{Binding Loc[tab.history]}" FontSize="11" HorizontalAlignment="Center"/>
|
||||
</StackPanel>
|
||||
</Button>
|
||||
<Button Grid.Column="1"
|
||||
HorizontalAlignment="Stretch" HorizontalContentAlignment="Center"
|
||||
Background="Transparent" Padding="4,8"
|
||||
Command="{Binding SelectTabCommand}" CommandParameter="1">
|
||||
<StackPanel Spacing="2" HorizontalAlignment="Center">
|
||||
<TextBlock Text="↑" FontSize="19" HorizontalAlignment="Center"/>
|
||||
<TextBlock Text="{Binding Loc[tab.send]}" FontSize="11" HorizontalAlignment="Center"/>
|
||||
</StackPanel>
|
||||
</Button>
|
||||
<Button Grid.Column="2"
|
||||
HorizontalAlignment="Stretch" HorizontalContentAlignment="Center"
|
||||
Background="Transparent" Padding="4,8"
|
||||
Command="{Binding SelectTabCommand}" CommandParameter="2">
|
||||
<StackPanel Spacing="2" HorizontalAlignment="Center">
|
||||
<TextBlock Text="↓" FontSize="19" HorizontalAlignment="Center"/>
|
||||
<TextBlock Text="{Binding Loc[tab.receive]}" FontSize="11" HorizontalAlignment="Center"/>
|
||||
</StackPanel>
|
||||
</Button>
|
||||
<Button Grid.Column="3"
|
||||
HorizontalAlignment="Stretch" HorizontalContentAlignment="Center"
|
||||
Background="Transparent" Padding="4,8"
|
||||
Command="{Binding SelectTabCommand}" CommandParameter="3">
|
||||
<StackPanel Spacing="2" HorizontalAlignment="Center">
|
||||
<TextBlock Text="⊙" FontSize="19" HorizontalAlignment="Center"/>
|
||||
<TextBlock Text="{Binding Loc[tab.addresses]}" FontSize="11" HorizontalAlignment="Center"/>
|
||||
</StackPanel>
|
||||
</Button>
|
||||
<Button Grid.Column="4"
|
||||
HorizontalAlignment="Stretch" HorizontalContentAlignment="Center"
|
||||
Background="Transparent" Padding="4,8"
|
||||
Command="{Binding SelectTabCommand}" CommandParameter="4">
|
||||
<StackPanel Spacing="2" HorizontalAlignment="Center">
|
||||
<TextBlock Text="⊕" FontSize="19" HorizontalAlignment="Center"/>
|
||||
<TextBlock Text="{Binding Loc[tab.contacts]}" FontSize="11" HorizontalAlignment="Center"/>
|
||||
</StackPanel>
|
||||
</Button>
|
||||
</Grid>
|
||||
|
||||
</Grid>
|
||||
|
||||
<!-- Barra di stato: messaggio a sinistra, stato connessione a destra.
|
||||
|
||||
Reference in New Issue
Block a user