summaryrefslogtreecommitdiffstats
path: root/data/dbus-interfaces/org.gnome.Shell.Introspect.xml
blob: cb19cfec562ae76ebcf2a47f2c83cfe7a489e01d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
<!DOCTYPE node PUBLIC
'-//freedesktop//DTD D-BUS Object Introspection 1.0//EN'
'http://www.freedesktop.org/standards/dbus/1.0/introspect.dtd'>
<node>

  <!--
      org.gnome.Shell.Introspect:
      @short_description: Introspection interface

      The interface used to introspect the state of Shell, such as running
      applications, currently active application, etc.
  -->
  <interface name="org.gnome.Shell.Introspect">

    <!--
        RunningApplicationsChanged:
        @short_description: Notifies when the running applications changes
    -->
    <signal name="RunningApplicationsChanged" />

    <!--
        WindowsChanged:
        @short_description: Notifies when any window opens or closes
    -->
    <signal name="WindowsChanged" />

    <!--
        GetRunningApplications:
        @short_description: Retrieves the description of all running applications

        Each application is associated by an application ID. The details of
        each application consists of a varlist of keys and values. Available
        keys are listed below.

        'active-on-seats' - (as)   list of seats the application is active on
                                   (a seat only has at most one active
                                   application)
    -->
    <method name="GetRunningApplications">
      <arg name="apps" direction="out" type="a{sa{sv}}" />
    </method>

    <!--
        GetWindows:
        @short_description: Retrieves the current list of windows and their properties

        A window is exposed as:
        * t ID: unique ID of the window
        * a{sv} properties: high-level properties

          Known properties:

          - "title"       (s): (readonly) title of the window
          - "app-id"      (s): (readonly) application ID of the window
          - "wm-class"    (s): (readonly) class of the window
          - "client-type" (u): (readonly) 0 for Wayland, 1 for X11
          - "is-hidden"   (b): (readonly) if the window is currently hidden
          - "has-focus"   (b): (readonly) if the window currently have
                                          keyboard focus
          - "width"       (u): (readonly) width of the window
          - "height"      (u): (readonly) height of the window
    -->
    <method name="GetWindows">
      <arg name="windows" direction="out" type="a{ta{sv}}" />
    </method>

    <!--
       AnimationsEnabled:
       @short_description: Whether the shell animations are enabled

       By default determined by the org.gnome.desktop.interface enable-animations
       gsetting, but may be overridden, e.g. if there is an active screen cast or
       remote desktop session that asked for animations to be disabled.

       Since: 2
    -->
    <property name="AnimationsEnabled" type="b" access="read"/>

    <!--
       ScreenSize:
       @short_description: The size of the screen

       Since: 3
    -->
    <property name="ScreenSize" type="(ii)" access="read"/>

    <property name="version" type="u" access="read"/>
  </interface>
</node>