Linux桌面环境中新的Status Notifier Specification

<!-- @page { margin: 2cm } P { margin-bottom: 0.21cm } A:link { so-language: zxx } -->

在ubuntu中所看到的systray icon目前有两种,一种就是旧的基于freedesktop system tray spcification的。而新的则是采用dbus实现的,更加简单和方便。不过目前好像gnome3和ubuntu 的 unity有了不同的标准,具体还未看。如果有详细需求的同学可以仔细查一下。

以下仅是前阵子简单看了下新的Status Notify Specification后的总结。

 

用来取代Freedesktop System tray specification.


通过 d-bus进行进程间通信,这样可以使gtk,qt的程序可以互相通信。

StatusNotifierItem: 要显示图标的应用程序

StatusNotifierWatcher:所有StatusNotifierItem要注册到Watcher

StatusNotifierHostHost通过Watcher来得到所有Item,并将所有Item展现出来

规范:http://www.notmart.org/misc/statusnotifieritem/index.html


indicator-application-service: StatusNotifierHost
服务的实现

indicator-messages/session/me: StatusNotifierWatcher的实现


其中菜单采用dbusmenu spec

DBusMenu spec

dbus来实现一个菜单,主要用于indicator 

你可能感兴趣的:(linux,ubuntu,System,qt,gtk,桌面环境)