1

这可能是一个问题,答案可以是下降 gnome shell 扩展教程的 url,因为我没有找到。

我遇到的问题,我想用 Gnome 扩展来解决

在 gnome 设置守护进程中(参见https://git.gnome.org/browse/gnome-settings-daemon/tree/plugins/power/gsd-backlight-helper.c#n123),我想覆盖以下函数

clamp_minimum (gint max, gint value)
{
    gint minimum;
    /* If the interface has less than 100 possible values, it's
     * likely that 0 doesn't turn the backlight off so we let 0 be
     * set in that case. */
    if (max > 99)
        minimum = 1;
    else
        minimum = 0;

    return MAX (value, minimum);
}

我希望此方法始终返回 0,因为这样屏幕亮度的最低设置将变为 0,即漆黑一片,这最终让我在晚上听音乐时操作计算机,而无需一直打开屏幕。

基本上,XFCE、MacOS、Cinnamon 和其他人已经实现了这个,但 Gnome 出于某种原因走上了这条路。

所以,我的问题是:我可以覆盖或拦截对该函数的调用以始终从 Gnome 扩展返回 0 吗?

谢谢。

4

1 回答 1

0

要回答您的明确问题:不,您不能覆盖或拦截对此函数的调用。

但是,您可以编写一个 shell 扩展,允许您在系统未锁定/注销时将屏幕切换到永久关闭状态(因为注销在所有扩展上调用 disable() 并将 GNOME Shell 模式设置为 gdm )。

于 2018-07-11T11:59:33.253 回答