@@ -62,9 +62,12 @@ class WorkspaceEvent(IpcBaseEvent):
62
62
:ivar old: When the change is "focus", an old (object) property will be
63
63
present with the previous workspace if it exists.
64
64
:vartype old: :class:`Con` or :class:`None`
65
+ :ivar ipc_data: The raw data from the i3 ipc.
66
+ :vartype ipc_data: dict
65
67
"""
66
68
67
69
def __init__ (self , data , conn , _Con = con .Con ):
70
+ self .ipc_data = data
68
71
self .change = data ['change' ]
69
72
self .current = None
70
73
self .old = None
@@ -84,9 +87,12 @@ class OutputEvent(IpcBaseEvent):
84
87
85
88
:ivar change: The type of change (currently only "unspecified").
86
89
:vartype change: str
90
+ :ivar ipc_data: The raw data from the i3 ipc.
91
+ :vartype ipc_data: dict
87
92
"""
88
93
89
94
def __init__ (self , data ):
95
+ self .ipc_data = data
90
96
self .change = data ['change' ]
91
97
92
98
@@ -100,9 +106,12 @@ class ModeEvent(IpcBaseEvent):
100
106
:ivar pango_markup: Whether pango markup should be used for displaying this
101
107
mode.
102
108
:vartype pango_markup: bool
109
+ :ivar ipc_data: The raw data from the i3 ipc.
110
+ :vartype ipc_data: dict
103
111
"""
104
112
105
113
def __init__ (self , data ):
114
+ self .ipc_data = data
106
115
self .change = data ['change' ]
107
116
self .pango_markup = data .get ('pango_markup' , False )
108
117
@@ -117,9 +126,12 @@ class WindowEvent(IpcBaseEvent):
117
126
:ivar change: The type of change.
118
127
:vartype change: str
119
128
:ivar container: The window's parent container.
129
+ :ivar ipc_data: The raw data from the i3 ipc.
130
+ :vartype ipc_data: dict
120
131
"""
121
132
122
133
def __init__ (self , data , conn , _Con = con .Con ):
134
+ self .ipc_data = data
123
135
self .change = data ['change' ]
124
136
self .container = _Con (data ['container' ], None , conn )
125
137
@@ -150,6 +162,8 @@ class BarconfigUpdateEvent(IpcBaseEvent, BarConfigReply):
150
162
:ivar colors: Contains key/value pairs of colors. Each value is a color
151
163
code in hex, formatted #rrggbb (like in HTML).
152
164
:vartype colors: dict
165
+ :ivar ipc_data: The raw data from the i3 ipc.
166
+ :vartype ipc_data: dict
153
167
"""
154
168
pass
155
169
@@ -172,9 +186,12 @@ class BindingInfo:
172
186
:ivar input_type: This will be "keyboard" or "mouse" depending on whether
173
187
or not this was a keyboard or a mouse binding.
174
188
:vartype input_type: str
189
+ :ivar ipc_data: The raw data from the i3 ipc.
190
+ :vartype ipc_data: dict
175
191
"""
176
192
177
193
def __init__ (self , data ):
194
+ self .ipc_data = data
178
195
self .command = data ['command' ]
179
196
self .event_state_mask = data .get ('event_state_mask' , [])
180
197
self .input_code = data ['input_code' ]
@@ -196,9 +213,12 @@ class BindingEvent(IpcBaseEvent):
196
213
:vartype change: str
197
214
:ivar binding: Contains details about the binding that was run.
198
215
:vartype binding: :class:`BindingInfo <i3ipc.BindingInfo>`
216
+ :ivar ipc_data: The raw data from the i3 ipc.
217
+ :vartype ipc_data: dict
199
218
"""
200
219
201
220
def __init__ (self , data ):
221
+ self .ipc_data = data
202
222
self .change = data ['change' ]
203
223
self .binding = BindingInfo (data ['binding' ])
204
224
@@ -211,9 +231,12 @@ class ShutdownEvent(IpcBaseEvent):
211
231
212
232
:ivar change: The type of change.
213
233
:vartype change: str
234
+ :ivar ipc_data: The raw data from the i3 ipc.
235
+ :vartype ipc_data: dict
214
236
"""
215
237
216
238
def __init__ (self , data ):
239
+ self .ipc_data = data
217
240
self .change = data ['change' ]
218
241
219
242
@@ -229,9 +252,12 @@ class TickEvent(IpcBaseEvent):
229
252
i3 (<=4.15).
230
253
:ivar payload: The payload that was sent with the tick.
231
254
:vartype payload: str
255
+ :ivar ipc_data: The raw data from the i3 ipc.
256
+ :vartype ipc_data: dict
232
257
"""
233
258
234
259
def __init__ (self , data ):
260
+ self .ipc_data = data
235
261
# i3 didn't include the 'first' field in 4.15. See i3/i3#3271.
236
262
self .first = data .get ('first' , None )
237
263
self .payload = data ['payload' ]
@@ -244,8 +270,11 @@ class InputEvent(IpcBaseEvent):
244
270
:vartype change: str
245
271
:ivar input: Information about the input that changed.
246
272
:vartype input: :class:`InputReply <i3ipc.InputReply>`
273
+ :ivar ipc_data: The raw data from the i3 ipc.
274
+ :vartype ipc_data: dict
247
275
"""
248
276
249
277
def __init__ (self , data ):
278
+ self .ipc_data = data
250
279
self .change = data ['change' ]
251
280
self .input = InputReply (data ['input' ])
0 commit comments