C2023-005: Search for annotations, delete causes reposition to first list item

C2023-004: Multiple tabs, closing one repositions to first rather than active
This commit is contained in:
2023-02-28 16:18:17 +00:00
parent 525c8f0650
commit e2a76bdb3a
2 changed files with 20 additions and 1 deletions

View File

@@ -826,6 +826,9 @@ namespace Volian.Controls.Library
}
private DisplayTabItem FindRemainingTab(Bar myBar)
{
// C2023-004: Proms reverts to first tab rather than active tab/save last selected tab is and use to reset to it
if (LastSelectedDisplayTabItem != null && !_RemovedDisplayTabItems.Contains(LastSelectedDisplayTabItem))
return LastSelectedDisplayTabItem;
foreach (DisplayTabItem itm in myBar.Items)
{
if (!_RemovedDisplayTabItems.Contains(itm)) return itm;
@@ -963,6 +966,13 @@ namespace Volian.Controls.Library
}
}
}
// C2023-004: Proms reverts to first tab rather than active tab/save last selected tab is and use to reset to it
private DisplayTabItem _lastSelectedDisplayTabItem;
public DisplayTabItem LastSelectedDisplayTabItem
{
get { return _lastSelectedDisplayTabItem; }
set { _lastSelectedDisplayTabItem = value; }
}
private DisplayTabItem _SelectedDisplayTabItem = null;
public DisplayTabItem SelectedDisplayTabItem
{
@@ -974,6 +984,7 @@ namespace Volian.Controls.Library
{
if (_SelectedDisplayTabItem != null && _SelectedDisplayTabItem.MyDSOTabPanel != null)
_SelectedDisplayTabItem.MyDSOTabPanel.InActive();
_lastSelectedDisplayTabItem = _SelectedDisplayTabItem;
_SelectedDisplayTabItem = value;
OnSelectedDisplayTabItemChanged(this, new EventArgs());
}