Gnome 的内置亮度控制适用于我的笔记本电脑显示器,但我希望它也能改变外接显示器的亮度。我已经想出了如何使用xrandr
来控制外接显示器的亮度¹,并且我还找到了一种dbus
基于 - 的方法来控制我的笔记本电脑显示器的亮度²,这似乎与 Gnome 的操作方式相对应。
我知道我可以设置自定义键盘快捷键来运行我自己的脚本,但是当我更改设置时,我失去了 Gnome 显示的漂亮的弹出式亮度显示。真的,我只想用我的亮度键来控制两台显示器,我可以想出很多不同的方法:
- 我可以使用 Gnome 的本机亮度控制注册我的外接显示器,以便它同时控制两者吗?
- 否则,我可以在 Gnome 完成后使用默认亮度控制来运行我自己的脚本吗?
- 或者,作为最后的手段,是否有一个类似于 Gnome 的简单工具来触发我自己的亮度弹出窗口?
我不需要帮助编写脚本或将它们附加到按键上。我试图弄清楚我不知道如何调整或挂钩标准 Gnome 功能。或者如果我不能,如果有一种简单、标准的方式来显示类似于 Gnome 的临时弹出显示。
¹我可以通过以下方式控制我的两台显示器,尤其是我的外接显示器xrandr
:
xrandr --current --verbose # list all display devices
xrandr --output DP-3 --brightness N # N varies from 0.0 to 1.0, where 0 is literally black
² 我只能通过gdbus
以下命令控制我的笔记本电脑显示器:
gdbus call --session --dest org.gnome.SettingsDaemon.Power --object-path /org/gnome/SettingsDaemon/Power --method org.gnome.SettingsDaemon.Power.Screen.StepUp
gdbus call --session --dest org.gnome.SettingsDaemon.Power --object-path /org/gnome/SettingsDaemon/Power --method org.gnome.SettingsDaemon.Power.Screen.StepDown
你的观点没有。2 通过创建 gnome-shell-extension 以某种方式成为可能
用 gnome-shell --version 3.38.1 测试
该
extension.js
文件的内容如下。注意第 12 行,用你的脚本路径更改上面一行中脚本的路径,而不是“/home/admin/extmonbri.sh”。
/home/admin/extmonbri.sh
文件内容extension.js
文件内容从源文件https://gitlab.gnome.org/GNOME/gnome-shell/-/blob/master/js/ui/status/brightness.js,
想法:我们用我们的自定义函数覆盖上面源文件中的 ORIGINAL 函数 _sync 以在我们的 gnome-shell-extension 中运行我们的脚本。
当您按下 BrightnessKey 脚本运行时,
当您通过点击或滚动更改亮度滑块时,脚本运行