private void HookManager_KeyUp(object sender, System.Windows.Forms.KeyEventArgs e) { new Thread(new ThreadStart(() => { bool known = false; switch (e.KeyCode.ToString()) { case "VolumeUp": try { Program._audio.Volume = Program._audio.Volume + 0.6; } catch { } break; case "VolumeDown": try { Program._audio.Volume = Program._audio.Volume - 0.6; } catch { } break; case "MediaPlayPause": try { KeyManager.AppCommand(KeyManager.AppComandCode.MEDIA_PLAY_PAUSE); } catch { } break; case "VolumeMute": try { mute = !mute; if (mute) { vol = Program._audio.Volume; Program._audio.Volume = 0; } else { Program._audio.Volume = vol; } } catch { } break; default: if (!KeyBinds.Contains(KeyBinds.Find(x => x.key == e.KeyCode.ToString()))) { KeyBinds.Add(new KeyBinding() { key = e.KeyCode.ToString() }); } break; } KeyBinding key = KeyBinds.Find(x => x.key == e.KeyCode.ToString()); if (key != null) { if (key.Code != KeyManager.AppComandCode.NULL) { KeyManager.AppCommand(key.Code); } } })).Start(); }
internal DEBus() { var s = new IpcServer(); s.Start(12345); // Passing no port selects a free port automatically. Console.WriteLine("Started server on port {0}.", s.Port); s.ReceivedRequest += (sender, args) => { if (args.Request == "Volume") { args.Response = Program._audio.Volume.ToString(); } if (args.Request == "Next") { KeyManager.AppCommand(KeyManager.AppComandCode.MEDIA_NEXTTRACK); args.Response = "Next Track"; } if (args.Request == "Prev") { KeyManager.AppCommand(KeyManager.AppComandCode.MEDIA_PREVIOUSTRACK); args.Response = "Previous Track"; } if (args.Request == "PlayPause") { KeyManager.AppCommand(KeyManager.AppComandCode.MEDIA_PLAY_PAUSE); args.Response = "Play/Pause Track"; } if (args.Request.StartsWith("GetConfig")) { args.Response = Program._config.GetConfigAsString(); } if (args.Request.StartsWith("SetVar")) { string[] l = args.Request.Split(new char[] { '|' }); Program._config.SetVar(l[1], l[2]); args.Response = "Variable set"; } if (args.Request.StartsWith("GetVar")) { string[] l = args.Request.Split(new char[] { '|' }); args.Response = Program._config.GetVar(l[1]); } if (args.Request.StartsWith("AddToMenu")) { string[] l = args.Request.Split(new char[] { '|' }); Program._appFetcher.AddToMenu(l[1]); args.Response = "item " + l[1] + " added to menu"; } if (args.Request == "ConfigInitialized") { args.Response = "OK"; Console.WriteLine("Connected with config window..."); } if (args.Request.StartsWith("RemoveFromMenu")) { string[] l = args.Request.Split(new char[] { '|' }); Program._appFetcher.RemoveFromMenu(l[1]); args.Response = "item " + l[1] + " removed to menu"; } args.Handled = true; }; }