c - 使用 Linux 接收系统 key 的信号?

标签 c linux ubuntu glib

我想注册我的应用程序(它是一个 Gtk 应用程序)以在用户按下例如“下一首歌曲”按钮时接收信号,而它没有获得焦点,因此用户可以在应用程序保留时更改播放的背景。我不知道该怎么做——我是否需要包含一个特定的库才能在 Ubuntu 18.04 上执行此操作?澄清一下:我说的是应用程序可以以某种方式拦截的系统范围的热键。

最佳答案

在 Wayland 中并没有真正的通用机制(安全问题应该很明显);对于 X,请参阅 XGrabKey 函数。

对于多媒体 key ,您可以在 org.gnome.SettingsDaemon.MediaKeys 中使用 D-Bus 接口(interface)。有关如何使用它的示例,请查看 plugins/nmkeys/rb-mmkeys-plugin.c in Rhythmbox .

关于c - 使用 Linux 接收系统 key 的信号?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57438376/

相关文章:

c - 我无法组合 2 个单向链表

c - 什么时候应该按值传递或返回结构?

c - fgetc() 不返回 '\n' 个字符

c++ - vector<string> 超出范围后不清除内存

python - 使用 setup.py 将 python 项目安装为 systemd 服务

c - libpcap:带有 "own"缓冲区的 pcap_next_ex

linux - 在 Ansible Tower 中使用事实过滤 list 的语法是什么?

c - 条件变量的延迟 bcast 唤醒 - 它有效吗?

mongodb - 无法通过终端使用身份验证数据连接 mongodb

ubuntu - Putty fatal error 已断开连接: no supported authentication methods available.