mirror of
https://github.com/sourcegit-scm/sourcegit.git
synced 2024-12-24 20:57:19 -08:00
feature: Allow populating the repository URL from the clipboard
Allow populating the repository URL from the clipboard if the clipboard contains a valid URL.
This commit is contained in:
parent
fec2b402e0
commit
7b0444d317
2 changed files with 28 additions and 0 deletions
|
@ -317,6 +317,18 @@ namespace SourceGit
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static async Task<string> GetClipboardTextAsync()
|
||||||
|
{
|
||||||
|
if (Current.ApplicationLifetime is IClassicDesktopStyleApplicationLifetime desktop)
|
||||||
|
{
|
||||||
|
if (desktop.MainWindow.Clipboard is { } clipboard)
|
||||||
|
{
|
||||||
|
return await clipboard.GetTextAsync();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return default;
|
||||||
|
}
|
||||||
|
|
||||||
private ResourceDictionary _activeLocale = null;
|
private ResourceDictionary _activeLocale = null;
|
||||||
private ResourceDictionary _colorOverrides = null;
|
private ResourceDictionary _colorOverrides = null;
|
||||||
private Models.INotificationReceiver _notificationReceiver = null;
|
private Models.INotificationReceiver _notificationReceiver = null;
|
||||||
|
|
|
@ -56,6 +56,22 @@ namespace SourceGit.ViewModels
|
||||||
_page = launcher.ActivePage;
|
_page = launcher.ActivePage;
|
||||||
|
|
||||||
View = new Views.Clone() { DataContext = this };
|
View = new Views.Clone() { DataContext = this };
|
||||||
|
App.GetClipboardTextAsync()
|
||||||
|
.ContinueWith(t =>
|
||||||
|
{
|
||||||
|
if (t.IsFaulted)
|
||||||
|
{
|
||||||
|
t.Exception.Handle(static _ => true);
|
||||||
|
}
|
||||||
|
else if (t.IsCompleted)
|
||||||
|
{
|
||||||
|
var result = t.Result;
|
||||||
|
if (Models.Remote.IsValidURL(result))
|
||||||
|
{
|
||||||
|
Remote = result;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
public static ValidationResult ValidateRemote(string remote, ValidationContext _)
|
public static ValidationResult ValidateRemote(string remote, ValidationContext _)
|
||||||
|
|
Loading…
Reference in a new issue