void MainWindow_Loaded(object sender, RoutedEventArgs e) { PreviewTextInput += MainWindow_PreviewTextInput; txtNumber.PreviewKeyDown += txtNumber_PreviewKeyDown; //txtNumber.PreviewTextInput += MainWindow_PreviewTextInput; PreviewKeyDown += MainWindow_PreviewKeyDown; //return must be handled seperately as buttons are triggered on down it seems MouseUp += MainWindow_MouseUp; Call.CallStateChanged += CallStateChanged; Call.ActiveCallChanged += ActiveCallChanged; Account.accounts.CollectionChanged += accounts_CollectionChanged; Broker.FreeswitchLoaded += FreeswitchLoaded; broker = Broker.get_instance(); DataContext = status; AccountDefaultConverter.normal_account_color = (SolidColorBrush)Resources["GridRowSpecialFGColor"]; AccountDefaultConverter.default_account_color = (SolidColorBrush)Resources["RowHighlightFGColor"]; broker.call_activeChanged += CallActiveChanged; broker.active_call_ringingChanged += CallRingingChanged; broker.MutedChanged += MuteChanged; broker.DNDChanged += DNDChanged; broker.CanEndChanged += CanEndChanged; broker.themeChanged += ThemeChanged; broker.UseNumberOnlyInputChanged += UseNumberOnlyInputChanged; UseNumberOnlyInputChanged(null, false); //trigger an update broker.SpeakerphoneActiveChanged += SpeakerActiveChanged; CurrentCallInfo.Visibility = Visibility.Hidden; Windows.systray_icon_setup(); switch (broker.GUIStartup) { case "Calls": borderAccounts.Visibility = Visibility.Hidden; break; case "Accounts": borderCalls.Visibility = Visibility.Hidden; break; case "Dialpad": borderAccounts.Visibility = Visibility.Hidden; borderCalls.Visibility = Visibility.Hidden; break; } ResizeForm(); btnTransfer.ContextMenu = broker.XFERContextMenu(); borderTransfer.ContextMenu = broker.XFERContextMenu(); if (broker.theme != "Steel") { ReloadTheme(); } AcceptEnterForDoubleClick(btnConferenceCall, btnConferenceDoubleClick); SpeakerActiveChanged(null, false); MuteChanged(null, false); DNDChanged(null, false); }