如何从脚本向启动器图标添加信息指示器?

Pad*_*dau 2 command-line launcher

某些应用程序在启动器中的图标上放置信息文本。

例如,Thunderbird 显示未读消息计数,更新管理器显示可用更新数量和进度条。图像显示了这两个示例:

带有信息覆盖的启动器图标

我创建了一些使用yad(Zenity fork)的Bash 脚本,它在运行时向启动器添加了一个图标。

我想知道如何在我的脚本中为这些图标创建我自己的信息覆盖。

nan*_*rad 5

这是针对 Python 的,也许可以为另一种语言找到一些东西。

从更新管理器源,UnitySupport.py:

你需要:

from gi.repository import Dbusmenu, Unity
Run Code Online (Sandbox Code Playgroud)

获得 Unity 支持。

然后你可以定义一个函数:

def set_launcher_icon_num(self, num_count):
    self._unity.set_property("count", num_count)
    if num_count > 0:
        self._unity.set_property("count-visible", True)
    else:
        self._unity.set_property("count-visible", False)
Run Code Online (Sandbox Code Playgroud)

此外,为了显示紧迫性(摇动图标),

self._unity.set_property("urgent", urgent)
Run Code Online (Sandbox Code Playgroud)

或者创建一个进度条,

self._unity.set_property("progress", progress/100.0)
Run Code Online (Sandbox Code Playgroud)

其中进度从 0 到 100。然后您可以使用:

self._unity.set_property("progress_visible", True)
Run Code Online (Sandbox Code Playgroud)

显示进度条并使用 False 而不是 True 来隐藏它。

与往常一样,搜索执行您正在尝试执行的操作的程序的源代码是值得的。

这些可能会随时更改。您还可以查看Unity API