/// <inheritdoc />
        public override void ActivateItem(IScreen item)
        {
            if (item == ActiveItem)
            {
                return;
            }

            if (ActiveItem != null)
            {
                // TODO: ActiveItem is null after Deactivate
                base.DeactivateItem(ActiveItem, true);
                var detailItem = (TDetailsType)ActiveItem;
                DetailsFactory.Destroy(detailItem);
            }

            base.ActivateItem(item);
            NotifyOfPropertyChange(() => CurrentDetails);
        }