ksni 0.0.0

A Rust implementation of the KDE/freedesktop StatusNotifierItem specification
Documentation
<!DOCTYPE node PUBLIC "-//freedesktop//DTD D-BUS Object Introspection 1.0//EN" "http://www.freedesktop.org/standards/dbus/1.0/introspect.dtd">
<node>
  <interface name="org.kde.StatusNotifierItem">

    <property name="Category" type="s" access="read"/>
    <property name="Id" type="s" access="read"/>
    <property name="Title" type="s" access="read"/>
    <property name="Status" type="s" access="read"/>
    <property name="WindowId" type="i" access="read"/>

    <!-- An additional path to add to the theme search path to find the icons specified above. -->
    <property name="IconThemePath" type="s" access="read"/>
    <property name="Menu" type="o" access="read"/>
    <property name="ItemIsMenu" type="b" access="read"/>


    <!-- main icon -->
    <!-- names are preferred over pixmaps -->
    <property name="IconName" type="s" access="read"/>

    <!--struct containing width, height and image data-->
    <property name="IconPixmap" type="a(iiay)" access="read">
      <annotation name="org.qtproject.QtDBus.QtTypeName" value="KDbusImageVector"/>
    </property>

    <property name="OverlayIconName" type="s" access="read"/>

    <property name="OverlayIconPixmap" type="a(iiay)" access="read">
      <annotation name="org.qtproject.QtDBus.QtTypeName" value="KDbusImageVector"/>
    </property>


    <!-- Requesting attention icon -->
    <property name="AttentionIconName" type="s" access="read"/>

    <!--same definition as image-->
    <property name="AttentionIconPixmap" type="a(iiay)" access="read">
      <annotation name="org.qtproject.QtDBus.QtTypeName" value="KDbusImageVector"/>
    </property>

    <property name="AttentionMovieName" type="s" access="read"/>



    <!-- tooltip data -->

    <!--(iiay) is an image-->
    <property name="ToolTip" type="(sa(iiay)ss)" access="read">
      <annotation name="org.qtproject.QtDBus.QtTypeName" value="KDbusToolTipStruct"/>
    </property>


    <!-- interaction: the systemtray wants the application to do something -->
    <method name="ContextMenu">
        <!-- we're passing the coordinates of the icon, so the app knows where to put the popup window -->
        <arg name="x" type="i" direction="in"/>
        <arg name="y" type="i" direction="in"/>
    </method>

    <method name="Activate">
        <arg name="x" type="i" direction="in"/>
        <arg name="y" type="i" direction="in"/>
    </method>

    <method name="SecondaryActivate">
        <arg name="x" type="i" direction="in"/>
        <arg name="y" type="i" direction="in"/>
    </method>

    <method name="Scroll">
      <arg name="delta" type="i" direction="in"/>
      <arg name="orientation" type="s" direction="in"/>
    </method>

    <!-- Signals: the client wants to change something in the status-->
    <signal name="NewTitle">
    </signal>

    <signal name="NewIcon">
    </signal>

    <signal name="NewAttentionIcon">
    </signal>

    <signal name="NewOverlayIcon">
    </signal>

    <signal name="NewToolTip">
    </signal>

    <signal name="NewStatus">
      <arg name="status" type="s"/>
    </signal>

  </interface>
</node>