aboutsummaryrefslogtreecommitdiff
path: root/protocol/river-status-unstable-v1.xml
blob: eae970f99011d5ebc213a7d9e833f3618ddc27f6 (plain) (blame)
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
<?xml version="1.0" encoding="UTF-8"?>
<protocol name="river_status_unstable_v1">
  <copyright>
    Copyright 2020 Isaac Freund

    Permission to use, copy, modify, and/or distribute this software for any
    purpose with or without fee is hereby granted, provided that the above
    copyright notice and this permission notice appear in all copies.

    THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
    WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
    MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
    ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
    WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
    ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
    OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
  </copyright>

  <interface name="zriver_status_manager_v1" version="1">
    <description summary="manage river status objects">
      A global factory for objects that receive status information specific
      to river.
    </description>

    <request name="destroy" type="destructor">
      <description summary="destroy the river_status_manager object">
        This request indicates that the client will not use the
        river_status_manager object any more. Objects that have been created
       through this instance are not affected.
      </description>
    </request>

    <request name="get_river_output_status">
      <description summary="create an output status object">
        This creates a new river_output_status object for the given wl_output.
      </description>
      <arg name="id" type="new_id" interface="zriver_output_status_v1"/>
      <arg name="output" type="object" interface="wl_output"/>
    </request>
  </interface>

  <interface name="zriver_output_status_v1" version="1">
    <description summary="track output tags and focus">
      This interface allows clients to receive information about the current
      windowing state of an output. It can be used to implement, for example,
      a status bar displaying information specific to river.
    </description>

    <event name="focused_tags">
      <description summary="focused tags of the output">
        Sent once binding the interface and again whenever the tag focus of
        the output changes.
      </description>
      <arg name="tags" type="uint" summary="32-bit bitfield"/>
    </event>

    <event name="view_tags">
      <description summary="tag state of an output's views">
        Sent once on binding the interface and again whenever the tag state
        of the output changes.
      </description>
      <arg name="tags" type="array" summary="array of 32-bit bitfields"/>
    </event>

    <event name="focused_title">
      <description summary="focused view title">
        Sent once on binding the interface and again whenever the focused
        view or title thereof changes. The title may be an empty string if
        no view is focused or the focused view did not set a title.
      </description>
      <arg name="title" type="string" summary="title of the focused view"/>
    </event>
  </interface>
</protocol>