158
158
TransportMenuitem* transport_menuitem_construct (GType object_type, PlayerController* parent) {
159
159
TransportMenuitem * self = NULL;
160
PlayerController* _tmp0_;
161
160
g_return_val_if_fail (parent != NULL, NULL);
163
self = (TransportMenuitem*) g_object_new (object_type, "item-type", DBUSMENU_TRANSPORT_MENUITEM_TYPE, "owner", _tmp0_, NULL);
161
self = (TransportMenuitem*) g_object_new (object_type, "item-type", DBUSMENU_TRANSPORT_MENUITEM_TYPE, "owner", parent, NULL);
184
182
void transport_menuitem_handle_cached_action (TransportMenuitem* self) {
185
TransportAction _tmp0_;
186
183
g_return_if_fail (self != NULL);
187
_tmp0_ = self->priv->cached_action;
188
if (_tmp0_ != TRANSPORT_ACTION_NO_ACTION) {
184
if (self->priv->cached_action != TRANSPORT_ACTION_NO_ACTION) {
189
185
g_timeout_add_seconds_full (G_PRIORITY_DEFAULT, (guint) 1, _transport_menuitem_send_cached_action_gsource_func, g_object_ref (self), g_object_unref);
194
190
static gboolean transport_menuitem_send_cached_action (TransportMenuitem* self) {
195
191
gboolean result = FALSE;
196
PlayerController* _tmp0_;
197
PlayerController* _tmp1_;
198
Mpris2Controller* _tmp2_;
199
TransportAction _tmp3_;
192
PlayerController* _tmp0_ = NULL;
200
193
g_return_val_if_fail (self != NULL, FALSE);
201
194
_tmp0_ = player_item_get_owner ((PlayerItem*) self);
203
_tmp2_ = _tmp1_->mpris_bridge;
204
_tmp3_ = self->priv->cached_action;
205
mpris2_controller_transport_update (_tmp2_, _tmp3_);
195
mpris2_controller_transport_update (_tmp0_->mpris_bridge, self->priv->cached_action);
206
196
self->priv->cached_action = TRANSPORT_ACTION_NO_ACTION;
227
215
static void transport_menuitem_real_handle_event (DbusmenuMenuitem* base, const gchar* name, GVariant* input_value, guint timestamp) {
228
216
TransportMenuitem * self;
229
217
GVariant* _tmp0_;
233
const GVariantType* _tmp3_;
234
gboolean _tmp4_ = FALSE;
240
223
self = (TransportMenuitem*) base;
241
224
g_return_if_fail (name != NULL);
242
225
g_return_if_fail (input_value != NULL);
243
_tmp0_ = input_value;
244
_tmp1_ = _g_variant_ref0 (_tmp0_);
246
_tmp2_ = input_value;
247
_tmp3_ = G_VARIANT_TYPE_VARIANT;
248
_tmp4_ = g_variant_is_of_type (_tmp2_, _tmp3_);
251
GVariant* _tmp6_ = NULL;
252
_tmp5_ = input_value;
253
_tmp6_ = g_variant_get_variant (_tmp5_);
226
_tmp0_ = _g_variant_ref0 (input_value);
228
_tmp1_ = g_variant_is_of_type (input_value, G_VARIANT_TYPE_VARIANT);
230
GVariant* _tmp2_ = NULL;
231
_tmp2_ = g_variant_get_variant (input_value);
254
232
_g_variant_unref0 (v);
258
_tmp8_ = g_variant_get_int32 (_tmp7_);
260
_tmp9_ = transport_menuitem_get_running (self);
262
if (_tmp10_ == TRUE) {
263
PlayerController* _tmp11_;
264
PlayerController* _tmp12_;
265
Mpris2Controller* _tmp13_;
267
_tmp11_ = player_item_get_owner ((PlayerItem*) self);
269
_tmp13_ = _tmp12_->mpris_bridge;
271
mpris2_controller_transport_update (_tmp13_, (TransportAction) _tmp14_);
235
_tmp3_ = g_variant_get_int32 (v);
237
_tmp4_ = transport_menuitem_get_running (self);
238
if (_tmp4_ == TRUE) {
239
PlayerController* _tmp5_ = NULL;
240
_tmp5_ = player_item_get_owner ((PlayerItem*) self);
241
mpris2_controller_transport_update (_tmp5_->mpris_bridge, (TransportAction) input);
274
PlayerController* _tmp16_;
275
PlayerController* _tmp17_;
277
self->priv->cached_action = (TransportAction) _tmp15_;
278
_tmp16_ = player_item_get_owner ((PlayerItem*) self);
280
player_controller_instantiate (_tmp17_);
243
PlayerController* _tmp6_ = NULL;
244
self->priv->cached_action = (TransportAction) input;
245
_tmp6_ = player_item_get_owner ((PlayerItem*) self);
246
player_controller_instantiate (_tmp6_);
281
247
dbusmenu_menuitem_property_set_int ((DbusmenuMenuitem*) self, DBUSMENU_TRANSPORT_MENUITEM_PLAY_STATE, (gint) TRANSPORT_STATE_LAUNCHING);
283
249
_g_variant_unref0 (v);
287
253
GeeHashSet* transport_menuitem_attributes_format (void) {
288
254
GeeHashSet* result = NULL;
255
GeeHashSet* _tmp0_ = NULL;
290
256
GeeHashSet* attrs;
291
257
_tmp0_ = gee_hash_set_new (G_TYPE_STRING, (GBoxedCopyFunc) g_strdup, g_free, NULL, NULL);
299
265
static gboolean transport_menuitem_get_running (TransportMenuitem* self) {
301
PlayerController* _tmp0_;
302
PlayerController* _tmp1_;
267
PlayerController* _tmp0_ = NULL;
304
268
g_return_val_if_fail (self != NULL, FALSE);
305
269
_tmp0_ = player_item_get_owner ((PlayerItem*) self);
307
_tmp2_ = _tmp1_->current_state;
308
result = _tmp2_ == ((gint) PLAYER_CONTROLLER_STATE_CONNECTED);
270
result = _tmp0_->current_state == PLAYER_CONTROLLER_STATE_CONNECTED;