private void MainWindow_IsVisibleChanged(object sender, DependencyPropertyChangedEventArgs e) { if ( CallStatus.PeerCancelled == CallController.Instance.CurrentCallStatus && (CallStatus.P2pIncoming == CallController.Instance.PreviousCallStatus || CallStatus.ConfIncoming == CallController.Instance.PreviousCallStatus) ) { CallController.Instance.CurrentCallStatus = CallStatus.Idle; PromptWindow promptWindow = new PromptWindow(this); promptWindow.ShowPromptByTime(LanguageUtil.Instance.GetValueByKey("CALL_ENDED_BY_OTHER_USER"), 3000); } if ( CallStatus.TimeoutSelfCancelled == CallController.Instance.CurrentCallStatus && (CallStatus.P2pIncoming == CallController.Instance.PreviousCallStatus || CallStatus.P2pOutgoing == CallController.Instance.PreviousCallStatus || CallStatus.ConfIncoming == CallController.Instance.PreviousCallStatus) ) { CallController.Instance.CurrentCallStatus = CallStatus.Idle; PromptWindow promptWindow = new PromptWindow(this); promptWindow.ShowPromptByTime(LanguageUtil.Instance.GetValueByKey("CALL_TIMEOUT"), 3000); } if (CallStatus.PeerDeclined == CallController.Instance.CurrentCallStatus && CallStatus.P2pOutgoing == CallController.Instance.PreviousCallStatus) { CallController.Instance.CurrentCallStatus = CallStatus.Idle; PromptWindow promptWindow = new PromptWindow(this); promptWindow.ShowPromptByTime(LanguageUtil.Instance.GetValueByKey("CALL_DECLINED"), 3000); } }