Archisman Panigrahi Asked: 2025-03-28 01:43:55 +0800 CST2025-03-28 01:43:55 +0800 CST 2025-03-28 01:43:55 +0800 CST GNOME 和 KDE 中是否有类似于 Unity 启动器计数和进度条的东西? 772 Unity 允许在其启动器中使用进度条和计数,并且一些应用程序利用了这一点。 GNOME 和 KDE 上是否有类似的东西? 我正在寻找 API 文档来调整我正在编写的程序的进度条/启动器计数。 gnome 1 个回答 Voted Best Answer Archisman Panigrahi 2025-04-09T12:41:54+08:002025-04-09T12:41:54+08:00 事实证明,虽然 Unity 并未得到广泛应用,但 Unity 的启动器计数和进度条 API 已被 GNOME 的dash to dock、KDE 的默认 dock、Latte dock 以及 Plank dock 广泛采用。 KDE 中的 Telegram 事实上,Telegram 在每个桌面环境中都显示了启动器数量 Unity 的 API 调用需要稍微修改,以便相同的代码在所有这些中都能运行。 这是一个示例 Python 程序(源代码),展示了如何利用此功能。 import dbus import dbus.service import dbus.mainloop.glib from gi.repository import GObject class Service(dbus.service.Object): def __init__(self, message): self._message = message def run(self): dbus.mainloop.glib.DBusGMainLoop(set_as_default=True) bus_name = dbus.service.BusName("com.example.service", dbus.SessionBus()) dbus.service.Object.__init__(self, bus_name, "/com/example/service") self._loop = GObject.MainLoop() GObject.idle_add(lambda: self.Update("application://firefox.desktop", {"progress-visible": True, "progress": 0.7})) GObject.idle_add(lambda: self.Update("application://firefox.desktop", {"count-visible": True, "count": dbus.Int64(10)})) self._loop.run() @dbus.service.signal(dbus_interface="com.canonical.Unity.LauncherEntry", signature='sa{sv}') def Update(self, app_uri, properties): print(app_uri, properties) if __name__ == "__main__": Service("This is the service").run() 这是使用类似代码库的 Typhoon,在 KDE 6 中将当前温度显示为启动器数量。代码可以在这里找到。
事实证明,虽然 Unity 并未得到广泛应用,但 Unity 的启动器计数和进度条 API 已被 GNOME 的dash to dock、KDE 的默认 dock、Latte dock 以及 Plank dock 广泛采用。
KDE 中的 Telegram
事实上,Telegram 在每个桌面环境中都显示了启动器数量
Unity 的 API 调用需要稍微修改,以便相同的代码在所有这些中都能运行。
这是一个示例 Python 程序(源代码),展示了如何利用此功能。
这是使用类似代码库的 Typhoon,在 KDE 6 中将当前温度显示为启动器数量。代码可以在这里找到。