根据鼠标和键盘交互检测计算机是否空闲

2023-12-11

我正在用 C++ 编写一个软件,用于控制 MacBook Pro 上的键盘背光,该软件运行 Arch Linux 作为主要操作系统,并运行 Debian。该程序作为守护进程运行,目前能够打开键盘背光。下一步是让它关注计算机何时空闲(基于鼠标和键盘交互),当计算机空闲一段时间后,关闭背光,并在注册与键盘或鼠标的交互后立即关闭,再次打开背光。

我已经用谷歌搜索过,但我还没有找到任何可以检查上次鼠标和/或键盘交互何时注册的内容。

知道我如何才能实现这一目标吗? 我相信任何 Linux 操作系统(也许是 X?)的某些部分都已经存在这样的功能,因此使用它比从头开始编写更好。

问候,...


X 服务器中的 XScreensaver 扩展可跟踪键盘和鼠标的空闲时间。如果您将源代码下载到Psi,他们的源树有一个文件idle_x11.cpp其中包含查询空闲时间的逻辑。以此为例。

基本思想是使用XScreenSaverQueryInfo读取屏幕保护程序状态信息。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

根据鼠标和键盘交互检测计算机是否空闲 的相关文章

随机推荐

  • 同时访问<地址>,但修改需要独占访问

    我想指定一个属性 它是一个用于在函数中进行操作的数组myFunc 但我收到此错误 这是我的代码草图 self data MyObject func myFunc x inout Int y inout Int manipulation co
  • 从Flask路线启动scrapy

    我想构建一个爬虫 它获取要抓取的网页的 URL 并将结果返回到网页 现在我从终端启动 scrapy 并将响应存储在文件中 当某些输入发布到 Flask 时 如何启动爬虫 处理并返回响应 您需要在 Flask 应用程序中创建一个 Crawle
  • C# 中如何获取目录中的文件列表

    所以 我正在用 C 开发 mp3 播放器 但我遇到了一个问题 我想从列表中的目录中获取所有文件 因此您可以选择 您要播放的歌曲 这是获取文件的代码 string music Directory GetFiles dir mp3 然后就可以玩
  • 关联对象什么时候被释放?

    我通过对象 A 的关联引用来附加对象 B 对象 B 通过 KVO 观察对象 A 的一些属性 问题是对象 B 似乎已被释放after对象 A 这意味着将自身作为对象 A 的 KVO 观察者删除为时已晚 我知道这一点是因为我收到 NSKVODe
  • 输出给定字符串中第一个重复字符的代码?

    我试图找到字符串中的第一个重复字符并使用 python 输出该字符 检查我的代码时 我可以看到我没有索引代码的最后一个字符 我究竟做错了什么 letters acbdc for a in range 0 len letters 1 prin
  • NHibernate 过滤器集合

    使用 NHibernate 我想过滤类中的集合以仅包含可能对象的子集 下面我提供了一个示例表数据来帮助解释 我找不到使用 NHibernate 来做到这一点的方法 表 数据对象 数据对象 ID PK 名称 当前版本 11 data txt
  • 如何在 Objective-C 中使用 Swift String 枚举?

    我有这个枚举String值 它将用于告诉记录到服务器的 API 方法消息具有哪种类型的服务器 我使用的是 Swift 1 2 因此枚举可以映射到 Objective C objc enum LogSeverity String case D
  • 与 Math.Round() 不一致

    我有两个函数旨在包含 180 180 和 之间的角度 其目的是给定从 inf 到 inf 的任何角度 它将在指定的间隔内保留等效角度 例如1550 的角度是 110 public double WrapBetween180 double a
  • php异步cURL请求

    我正在使用 PHP 开发一个网站并使用 cURL 发送请求 我有一个网站 它会进行一些计算 我需要从中得到响应 我正在通过 cURL 发送请求 目前我正在做的是发送请求 等待 10 秒 然后再次发送 最多 3 次 如果没有收到 良好 响应
  • Verilog、FPGA、统一寄存器的使用

    我有一个问题 关于我正在开发的 AGC SPI 控制器在我看来奇怪的行为 它是用 Verilog 完成的 针对的是 Xilinx Spartan 3e FPGA 该控制器是一个依赖外部输入来启动的 FSM FSM的状态存储在状态寄存器它没有
  • CSS:滚动条没有 100% 的高度/宽度

    是否可以强制垂直滚动条的高度小于其所属可滚动 div 的 100 使用纯 CSS 并适用于除 IE 之外的所有现代浏览器 到目前为止我想出的只是仅限 webkit解决方案与它的 webkit scrollbarCSS 选择器和自定义按钮高度
  • Eloquent Javascript:高阶函数示例

    function reduceAncestors person f defaultValue function valueFor person if person null return defaultValue else return f
  • 使用 Python 绘制常微分方程、等倾线

    我正在寻找一个 Python 包 它可以让我绘制类似于下面所示的 Java 小程序的内容 http math mit edu mathlets mathlets isoclines 有谁知道任何 ODE 绘图包吗 我可以使用 Numpy M
  • Blazor WebAssembly 401 即使我已获得授权也未获得授权

    我在用Blazor WebAssembly Asp Net Core hosted PWA并整合了AspNetCore Identity进去 我创建了AuthenticationStateProvider在客户端 现在我想允许用户访问需要授
  • 使用 TIMESTAMP 进行基本查询,不产生输出

    我有一个非常基本的设置 如果使用 TIMESTAMP BY 语句 我永远不会得到任何输出 我有一个流分析作业 它从事件中心读取数据并写入表存储 查询如下 SELECT INTO MyOutput FROM MyInput TIMESTAMP
  • Android 位置 getTime() 总是返回大不同的时间

    我根据设置定期使用位置管理器获取位置 在测试用例中使用 2 分钟并尝试使用 location geTime 方法 我没有使用 LocationManager getLastKnownLocation 文档说这是 UTC 时间 我将其转换为当
  • 打字稿与联合的交集会导致不存在的属性

    在下面的示例中 我定义了 Typescript 类型以从索引请求数据 有两种高效的方法可以从索引服务器检索数据块 either by startKey endKey or by startKey limit 键的数量 当组合这些替代情况来定
  • 为每个从 jquery 中排除一个类

    我的代码是这样的 a href each function if this attr href toLowerCase indexOf javascript 0 this attr class to top this attr href n
  • 如何使用 MVC4 和 Razor 设置 javascript 变量

    有人可以格式化下面的代码 以便我可以使用 razor 使用 C 代码设置 srcript 变量吗 下面的方法不起作用 我已经找到了这样的方法 让别人可以轻松提供帮助 int proID 123 int nonProID 456 我收到设计时
  • 根据鼠标和键盘交互检测计算机是否空闲

    我正在用 C 编写一个软件 用于控制 MacBook Pro 上的键盘背光 该软件运行 Arch Linux 作为主要操作系统 并运行 Debian 该程序作为守护进程运行 目前能够打开键盘背光 下一步是让它关注计算机何时空闲 基于鼠标和键