public TerminalView(TerminalViewModel viewModel)
        {
            ViewModel = viewModel;
            ViewModel.SearchStarted         += OnSearchStarted;
            ViewModel.Activated             += OnActivated;
            ViewModel.ThemeChanged          += OnThemeChanged;
            ViewModel.FindNextRequested     += OnFindNextRequested;
            ViewModel.FindPreviousRequested += OnFindPreviousRequested;
            ViewModel.FontSizeChanged       += OnFontSizeChanged;
            InitializeComponent();
            _terminalView = new XtermTerminalView();
            TerminalContainer.Children.Add((UIElement)_terminalView);
            _terminalView.InitializeAsync(ViewModel);
            ViewModel.TerminalView = _terminalView;
            ViewModel.Initialized  = true;

            SetGridBackgroundTheme(ViewModel.TerminalTheme);

            viewModel.Overlay = (OverlayViewModel)MessageOverlay.DataContext;
        }
        public TerminalView(TerminalViewModel viewModel)
        {
            Messenger.Default.Register <KeyBindingsChangedMessage>(this, OnKeyBindingsChanged);
            Messenger.Default.Register <TerminalOptionsChangedMessage>(this, OnTerminalOptionsChanged);

            ViewModel = viewModel;
            ViewModel.SearchStarted         += OnSearchStarted;
            ViewModel.Activated             += OnActivated;
            ViewModel.ThemeChanged          += OnThemeChanged;
            ViewModel.FindNextRequested     += OnFindNextRequested;
            ViewModel.FindPreviousRequested += OnFindPreviousRequested;
            InitializeComponent();
            _terminalView = new XtermTerminalView();
            TerminalContainer.Children.Add((UIElement)_terminalView);
            _terminalView.InitializeAsync(ViewModel);
            ViewModel.TerminalView = _terminalView;
            ViewModel.Initialized  = true;

            SetGridBackgroundTheme(ViewModel.TerminalTheme);

            viewModel.Overlay = (OverlayViewModel)MessageOverlay.DataContext;
        }