Make udev rules link functional
MODIFY
WalletWasabi.Gui/Tabs/WalletManager/LoadWalletView.xaml
WalletWasabi.Gui/Tabs/WalletManager/LoadWalletView.xaml
</StackPanel>
<TextBlock Text="Make sure you set up and logged into the device, usually with a PIN. Some hardware wallets are picky about their USB cables, so you may want to try out multiple ones." TextWrapping="Wrap" />
<TextBlock IsVisible="{Binding IsLinux}" Text="Also make sure that you properly applied udev rules. These are necessary for the devices to be reachable on Linux environments:" TextWrapping="Wrap" />
- <controls:ExtendedTextBox IsVisible="{Binding IsLinux}" Text="https://github.com/bitcoin-core/HWI/tree/master/udev" Classes="selectableTextBlock hyperLink" />
+ <StackPanel Orientation="Horizontal">
+ <Button Content="{Binding UDevRulesLink}" Classes="activeHyperLink" Command="{Binding OpenBrowserCommand}" CommandParameter="{Binding UDevRulesLink}" />
+ </StackPanel>
</StackPanel>
</Grid>
<Grid Classes="content">

MODIFY
WalletWasabi.Gui/Tabs/WalletManager/LoadWalletViewModel.cs
WalletWasabi.Gui/Tabs/WalletManager/LoadWalletViewModel.cs
@@ -157,6 +157,19 @@ namespace WalletWasabi.Gui.Tabs.WalletManager
}
}, outputScheduler: RxApp.MainThreadScheduler);
+ OpenBrowserCommand = ReactiveCommand.Create<string>(x =>
+ {
+ try
+ {
+ IoHelpers.OpenBrowser(x);
+ }
+ catch (Exception ex)
+ {
+ Logging.Logger.LogError<AboutViewModel>(ex);
+ }
+ });
+
+ OpenBrowserCommand.ThrownExceptions.Subscribe(Logger.LogWarning<LoadWalletViewModel>);
LoadCommand.ThrownExceptions.Subscribe(Logger.LogWarning<LoadWalletViewModel>);
TestPasswordCommand.ThrownExceptions.Subscribe(Logger.LogWarning<LoadWalletViewModel>);
OpenFolderCommand.ThrownExceptions.Subscribe(Logger.LogWarning<LoadWalletViewModel>);
@@ -167,6 +180,8 @@ namespace WalletWasabi.Gui.Tabs.WalletManager
IsHwWalletSearchTextVisible = LoadWalletType == LoadWalletType.Hardware;
}
+ public string UDevRulesLink => "https://github.com/bitcoin-core/HWI/tree/master/udev";
+
public bool IsHwWalletSearchTextVisible
{
get => _isHwWalletSearchTextVisible;
@@ -376,6 +391,7 @@ namespace WalletWasabi.Gui.Tabs.WalletManager
public ReactiveCommand<Unit, Unit> LoadCommand { get; }
public ReactiveCommand<Unit, KeyManager> TestPasswordCommand { get; }
public ReactiveCommand<Unit, Unit> ImportColdcardCommand { get; set; }
+ public ReactiveCommand<string, Unit> OpenBrowserCommand { get; }
public void TryRefreshHardwareWallets(IEnumerable<HardwareWalletInfo> hwis)
{

Make udev rules link functional