Select terminal after closing issue fixed. (#612)

This commit is contained in:
Aleksandar Pesic authored and Felix Seidl committed 2019-12-03 17:48:34 +01:00
1 parent b377ac8e38
commit c8b4d2ed8f
1 file changed
+15 -16
+15 -16
View File
@@ -264,24 +264,21 @@ namespace FluentTerminal.App.ViewModels
get => _selectedTerminal;
set
{
if (SelectedTerminal != null)
{
_selectedTerminal.IsSelected = false;
}
var oldValue = _selectedTerminal;
if (Set(ref _selectedTerminal, value))
{
SelectedTerminal?.FocusTerminal();
if (SelectedTerminal != null)
if (oldValue != null)
{
SelectedTerminal.IsSelected = true;
if (_applicationSettings.ShowCustomTitleInTitlebar)
{
WindowTitle = SelectedTerminal.TabTitle;
}
else
{
WindowTitle = SelectedTerminal.ShellTitle;
}
oldValue.IsSelected = false;
}
if (_selectedTerminal != null)
{
_selectedTerminal.IsSelected = true;
_selectedTerminal.FocusTerminal();
SetWindowTitle(_selectedTerminal);
}
}
}
@@ -561,13 +558,15 @@ namespace FluentTerminal.App.ViewModels
ApplicationView.ExecuteOnUiThreadAsync(() =>
{
var wasSelected = _selectedTerminal == terminal;
Terminals.Remove(terminal);
if (Terminals.Count == 0)
{
ApplicationView.TryClose();
}
else if (SelectedTerminal == terminal)
else if (wasSelected)
{
SelectedTerminal = Terminals.LastOrDefault(t => t != terminal);
}