private void OnRestoreMessage(RestoreExistingViewMessage message)
        {
            if (message.ViewModel != DataContext)
            {
                return;
            }

            //SystemCommands.RestoreWindow( this );

            var handleSource = PresentationSource.FromVisual(this) as HwndSource;

            System.IntPtr handle = handleSource.Handle;

            WinApi.ShowWindow(handle, WinApi.WindowShowStyle.Restore);
            WinApi.SetForegroundWindow(handle);

            message.Restored = true;
        }
Exemplo n.º 2
0
        private async void OpenChat(ChatViewModel chat)
        {
            try
            {
                Logger.Info($"Gonna open chat '{chat.Chat.UserInfo.Name}'");

                var restoreViewMessage = RestoreExistingViewMessage.Create(chat);
                MessageMediator.Default.SendMessage(restoreViewMessage);

                if (restoreViewMessage.Restored)
                {
                    return;
                }

                await _visualizer.ShowAsync(chat);
            }
            catch (Exception ex)
            {
                ProcessException(ex);
            }
        }