mirror of
https://github.com/sourcegit-scm/sourcegit
synced 2025-05-22 04:34:59 +00:00
feature: auto focus the next
change after stage/unstage selected changes (#464)
This commit is contained in:
parent
dcddc5a2f2
commit
ea3a6a4755
4 changed files with 122 additions and 22 deletions
|
@ -46,7 +46,9 @@ namespace SourceGit.Views
|
|||
{
|
||||
if (DataContext is ViewModels.WorkingCopy vm)
|
||||
{
|
||||
vm.StageSelected();
|
||||
var next = UnstagedChangesView.GetNextChangeWithoutSelection();
|
||||
vm.StageSelected(next);
|
||||
UnstagedChangesView.Focus();
|
||||
e.Handled = true;
|
||||
}
|
||||
}
|
||||
|
@ -55,7 +57,9 @@ namespace SourceGit.Views
|
|||
{
|
||||
if (DataContext is ViewModels.WorkingCopy vm)
|
||||
{
|
||||
vm.UnstageSelected();
|
||||
var next = StagedChangesView.GetNextChangeWithoutSelection();
|
||||
vm.UnstageSelected(next);
|
||||
StagedChangesView.Focus();
|
||||
e.Handled = true;
|
||||
}
|
||||
}
|
||||
|
@ -66,7 +70,9 @@ namespace SourceGit.Views
|
|||
{
|
||||
if (e.Key is Key.Space or Key.Enter)
|
||||
{
|
||||
vm.StageSelected();
|
||||
var next = UnstagedChangesView.GetNextChangeWithoutSelection();
|
||||
vm.StageSelected(next);
|
||||
UnstagedChangesView.Focus();
|
||||
e.Handled = true;
|
||||
return;
|
||||
}
|
||||
|
@ -84,11 +90,37 @@ namespace SourceGit.Views
|
|||
{
|
||||
if (DataContext is ViewModels.WorkingCopy vm && e.Key is Key.Space or Key.Enter)
|
||||
{
|
||||
vm.UnstageSelected();
|
||||
var next = StagedChangesView.GetNextChangeWithoutSelection();
|
||||
vm.UnstageSelected(next);
|
||||
StagedChangesView.Focus();
|
||||
e.Handled = true;
|
||||
}
|
||||
}
|
||||
|
||||
private void OnStageSelectedButtonClicked(object _, RoutedEventArgs e)
|
||||
{
|
||||
if (DataContext is ViewModels.WorkingCopy vm)
|
||||
{
|
||||
var next = UnstagedChangesView.GetNextChangeWithoutSelection();
|
||||
vm.StageSelected(next);
|
||||
UnstagedChangesView.Focus();
|
||||
}
|
||||
|
||||
e.Handled = true;
|
||||
}
|
||||
|
||||
private void OnUnstageSelectedButtonClicked(object _, RoutedEventArgs e)
|
||||
{
|
||||
if (DataContext is ViewModels.WorkingCopy vm)
|
||||
{
|
||||
var next = StagedChangesView.GetNextChangeWithoutSelection();
|
||||
vm.UnstageSelected(next);
|
||||
StagedChangesView.Focus();
|
||||
}
|
||||
|
||||
e.Handled = true;
|
||||
}
|
||||
|
||||
private void OnOpenAIAssist(object _, RoutedEventArgs e)
|
||||
{
|
||||
if (!Models.OpenAI.IsValid)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue