diff --git a/src/FluentHub.App/UserControls/GitCloneFlyout.xaml b/src/FluentHub.App/UserControls/GitCloneFlyout.xaml
index 359322b3f..674330591 100644
--- a/src/FluentHub.App/UserControls/GitCloneFlyout.xaml
+++ b/src/FluentHub.App/UserControls/GitCloneFlyout.xaml
@@ -120,7 +120,7 @@
FontFamily="{StaticResource Octicons}"
FontSize="14"
Glyph="" />
-
+
diff --git a/src/FluentHub.App/UserControls/GitCloneFlyout.xaml.cs b/src/FluentHub.App/UserControls/GitCloneFlyout.xaml.cs
index 5c460430b..e3313249f 100644
--- a/src/FluentHub.App/UserControls/GitCloneFlyout.xaml.cs
+++ b/src/FluentHub.App/UserControls/GitCloneFlyout.xaml.cs
@@ -102,7 +102,30 @@ private async void OpenGitHubDesktopButton_Click(object sender, RoutedEventArgs
}
else
{
- Log.Error("Error opening GitHub Desktop");
+ Log.Error("Error opening GitHub Desktop; opening GitKraken instead");
+ // Try GitKraken
+ string openGitKrakenUrl = $"gitkraken://repolink/-?url=https%3A%2F%2Fgithub.com%2F{ViewModel.Repository.Owner.Login}%2F{ViewModel.Repository.Name}.git";
+ var gitKrakenUri = new Uri(openGitKrakenUrl);
+ var secondSuccess = await Windows.System.Launcher.LaunchUriAsync(gitKrakenUri);
+ if (secondSuccess)
+ {
+ Log.Write(Serilog.Events.LogEventLevel.Information, "Opened GitKraken with the repository");
+ }
+ else
+ {
+ Log.Error("Error opening GitKraken; opening GitHub Desktop download page instead.");
+ // Open GitHub Desktop download page
+ var downloadUri = new Uri("https://desktop.github.com/");
+ var thirdSuccess = await Windows.System.Launcher.LaunchUriAsync(downloadUri);
+ if (thirdSuccess)
+ {
+ Log.Write(Serilog.Events.LogEventLevel.Information, "Opened GitHub Desktop download page");
+ }
+ else
+ {
+ Log.Error("Error opening GitHub Desktop download page; cancelling operation");
+ }
+ }
}
}