180
180
static void music_player_bridge_establish_file_monitoring (MusicPlayerBridge* self, GAppInfo* info, const gchar* mpris_key);
181
181
static Block1Data* block1_data_ref (Block1Data* _data1_);
182
182
static void block1_data_unref (Block1Data* _data1_);
183
static void __lambda2_ (Block1Data* _data1_, GFile* desktop_file, GFile* other_file, GFileMonitorEvent event_type);
183
static void ___lambda2_ (Block1Data* _data1_, GFile* desktop_file, GFile* other_file, GFileMonitorEvent event_type);
184
184
static void music_player_bridge_relevant_desktop_file_changed (MusicPlayerBridge* self, GFile* desktop_file, GFile* other_file, GFileMonitorEvent event_type, GFileMonitor* monitor);
185
static void ___lambda2__g_file_monitor_changed (GFileMonitor* _sender, GFile* file, GFile* other_file, GFileMonitorEvent event_type, gpointer self);
185
static void ____lambda2__g_file_monitor_changed (GFileMonitor* _sender, GFile* file, GFile* other_file, GFileMonitorEvent event_type, gpointer self);
186
186
void settings_manager_remove_interested (SettingsManager* self, const gchar* app_desktop_name);
187
187
#define PLAYER_CONTROLLER_WIDGET_QUANTITY 4
188
188
void music_player_bridge_client_has_become_available (MusicPlayerBridge* self, const gchar* desktop, const gchar* dbus_name, gboolean use_playlists);
416
421
static void block1_data_unref (Block1Data* _data1_) {
417
422
if (g_atomic_int_dec_and_test (&_data1_->_ref_count_)) {
418
423
_g_object_unref0 (_data1_->self);
419
_g_object_unref0 (_data1_->monitor);
420
424
g_slice_free (Block1Data, _data1_);
425
static gpointer _g_object_ref0 (gpointer self) {
426
return self ? g_object_ref (self) : NULL;
430
static void __lambda2_ (Block1Data* _data1_, GFile* desktop_file, GFile* other_file, GFileMonitorEvent event_type) {
429
static void ___lambda2_ (Block1Data* _data1_, GFile* desktop_file, GFile* other_file, GFileMonitorEvent event_type) {
431
430
MusicPlayerBridge * self;
438
437
_tmp0_ = desktop_file;
439
438
_tmp1_ = other_file;
440
439
_tmp2_ = event_type;
441
_tmp3_ = _data1_->monitor;
440
_tmp3_ = _data1_->weak_monitor;
442
441
music_player_bridge_relevant_desktop_file_changed (self, _tmp0_, _tmp1_, _tmp2_, _tmp3_);
446
static void ___lambda2__g_file_monitor_changed (GFileMonitor* _sender, GFile* file, GFile* other_file, GFileMonitorEvent event_type, gpointer self) {
447
__lambda2_ (self, file, other_file, event_type);
445
static void ____lambda2__g_file_monitor_changed (GFileMonitor* _sender, GFile* file, GFile* other_file, GFileMonitorEvent event_type, gpointer self) {
446
___lambda2_ (self, file, other_file, event_type);
451
450
static void music_player_bridge_establish_file_monitoring (MusicPlayerBridge* self, GAppInfo* info, const gchar* mpris_key) {
453
451
GAppInfo* _tmp0_;
454
452
GDesktopAppInfo* _tmp1_;
455
453
GDesktopAppInfo* desktop_info;
460
458
const gchar* _tmp5_;
461
459
GFile* _tmp6_ = NULL;
464
const gchar* _tmp14_;
465
const gchar* _tmp15_;
466
GFileMonitor* _tmp16_;
467
461
GError * _inner_error_ = NULL;
468
462
g_return_if_fail (self != NULL);
469
463
g_return_if_fail (info != NULL);
470
464
g_return_if_fail (mpris_key != NULL);
471
_data1_ = g_slice_new0 (Block1Data);
472
_data1_->_ref_count_ = 1;
473
_data1_->self = g_object_ref (self);
475
466
_tmp1_ = _g_object_ref0 (G_IS_DESKTOP_APP_INFO (_tmp0_) ? ((GDesktopAppInfo*) _tmp0_) : NULL);
476
467
desktop_info = _tmp1_;
482
473
_tmp6_ = g_file_new_for_path (_tmp5_);
486
478
GFileMonitor* _tmp8_ = NULL;
487
479
GFileMonitor* _tmp9_;
480
GFileMonitor* monitor;
488
481
GFileMonitor* _tmp10_;
482
GFileMonitor* _tmp11_;
483
GFileMonitor* _tmp12_;
484
const gchar* _tmp13_;
486
const gchar* _tmp15_;
487
const gchar* _tmp16_;
488
_data1_ = g_slice_new0 (Block1Data);
489
_data1_->_ref_count_ = 1;
490
_data1_->self = g_object_ref (self);
490
492
_tmp8_ = g_file_monitor (_tmp7_, G_FILE_MONITOR_SEND_MOVED, NULL, &_inner_error_);
493
_tmp9_ = _g_object_ref0 (_tmp8_);
492
495
if (_inner_error_ != NULL) {
496
block1_data_unref (_data1_);
493
498
goto __catch0_g_error;
495
_tmp10_ = _g_object_ref0 (_tmp9_);
496
_g_object_unref0 (_data1_->monitor);
497
_data1_->monitor = _tmp10_;
501
_data1_->weak_monitor = _tmp10_;
503
g_signal_connect_data (_tmp11_, "changed", (GCallback) ____lambda2__g_file_monitor_changed, block1_data_ref (_data1_), (GClosureNotify) block1_data_unref, 0);
505
g_object_ref ((GObject*) _tmp12_);
507
g_debug ("music-player-bridge.vala:95: monitoring file '%s'", _tmp13_);
508
_tmp14_ = self->priv->file_monitors;
511
gee_abstract_map_set ((GeeAbstractMap*) _tmp14_, _tmp15_, _tmp16_);
512
_g_object_unref0 (monitor);
513
block1_data_unref (_data1_);
500
517
__catch0_g_error:
502
519
GError* e = NULL;
504
const gchar* _tmp12_ = NULL;
521
const gchar* _tmp18_ = NULL;
505
522
e = _inner_error_;
506
523
_inner_error_ = NULL;
508
_tmp12_ = g_app_info_get_name (_tmp11_);
509
g_warning ("music-player-bridge.vala:93: Unable to create a file monitor for %s", _tmp12_);
525
_tmp18_ = g_app_info_get_name (_tmp17_);
526
g_warning ("music-player-bridge.vala:99: Unable to create a file monitor for %s", _tmp18_);
510
527
_g_error_free0 (e);
511
528
_g_object_unref0 (f);
512
529
_g_free0 (file_path);
513
530
_g_object_unref0 (desktop_info);
514
block1_data_unref (_data1_);
520
535
_g_object_unref0 (f);
521
536
_g_free0 (file_path);
522
537
_g_object_unref0 (desktop_info);
523
block1_data_unref (_data1_);
525
538
g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
526
539
g_clear_error (&_inner_error_);
529
_tmp13_ = self->priv->file_monitors;
532
gee_abstract_map_set ((GeeAbstractMap*) _tmp13_, _tmp14_, _tmp15_);
533
_tmp16_ = _data1_->monitor;
534
g_signal_connect_data (_tmp16_, "changed", (GCallback) ___lambda2__g_file_monitor_changed, block1_data_ref (_data1_), (GClosureNotify) block1_data_unref, 0);
535
542
_g_object_unref0 (f);
536
543
_g_free0 (file_path);
537
544
_g_object_unref0 (desktop_info);
538
block1_data_unref (_data1_);
550
555
const gchar* _tmp5_;
551
556
gboolean _tmp6_ = FALSE;
552
557
GeeHashMap* _tmp8_;
554
const gchar* _tmp10_;
555
gpointer _tmp11_ = NULL;
557
gpointer _tmp13_ = NULL;
558
PlayerController* _tmp14_;
559
SettingsManager* _tmp15_;
561
const gchar* _tmp17_;
562
gpointer _tmp18_ = NULL;
566
const gchar* _tmp22_;
567
gpointer _tmp23_ = NULL;
569
GFileMonitor* _tmp25_;
570
GFileMonitor* _tmp26_;
559
gpointer _tmp10_ = NULL;
561
const gchar* _tmp11_;
562
const gchar* _tmp12_;
564
const gchar* _tmp14_;
565
gpointer _tmp15_ = NULL;
566
PlayerController* _tmp16_;
567
SettingsManager* _tmp17_;
568
const gchar* _tmp18_;
570
const gchar* _tmp20_;
571
GFileMonitor* _tmp21_;
572
GFileMonitor* _tmp22_;
571
573
g_return_if_fail (self != NULL);
572
574
g_return_if_fail (desktop_file != NULL);
573
575
g_return_if_fail (monitor != NULL);
592
594
const gchar* _tmp7_;
594
g_warning ("music-player-bridge.vala:117: relevant_desktop_file_changed is returni" \
596
g_warning ("music-player-bridge.vala:118: relevant_desktop_file_changed is returni" \
595
597
"ng a file which we know nothing about - %s", _tmp7_);
599
_tmp8_ = self->priv->registered_clients;
600
_tmp9_ = self->priv->file_monitors;
602
_tmp11_ = gee_abstract_map_get ((GeeAbstractMap*) _tmp9_, _tmp10_);
603
_tmp12_ = (gchar*) _tmp11_;
604
_tmp13_ = gee_abstract_map_get ((GeeAbstractMap*) _tmp8_, _tmp12_);
605
_tmp14_ = (PlayerController*) _tmp13_;
606
player_controller_remove_from_menu (_tmp14_);
607
_g_object_unref0 (_tmp14_);
609
_tmp15_ = self->priv->settings_manager;
610
_tmp16_ = self->priv->file_monitors;
612
_tmp18_ = gee_abstract_map_get ((GeeAbstractMap*) _tmp16_, _tmp17_);
613
_tmp19_ = (gchar*) _tmp18_;
614
settings_manager_remove_interested (_tmp15_, _tmp19_);
616
_tmp20_ = self->priv->registered_clients;
617
_tmp21_ = self->priv->file_monitors;
619
_tmp23_ = gee_abstract_map_get ((GeeAbstractMap*) _tmp21_, _tmp22_);
620
_tmp24_ = (gchar*) _tmp23_;
621
gee_abstract_map_unset ((GeeAbstractMap*) _tmp20_, _tmp24_, NULL);
624
g_file_monitor_cancel (_tmp25_);
626
g_object_unref ((GObject*) _tmp26_);
601
_tmp8_ = self->priv->file_monitors;
603
_tmp10_ = gee_abstract_map_get ((GeeAbstractMap*) _tmp8_, _tmp9_);
604
mpris_key = (gchar*) _tmp10_;
607
g_debug ("music-player-bridge.vala:124: file \"%s\" was removed; stopping monito" \
608
"ring \"%s\"", _tmp11_, _tmp12_);
609
_tmp13_ = self->priv->registered_clients;
611
_tmp15_ = gee_abstract_map_get ((GeeAbstractMap*) _tmp13_, _tmp14_);
612
_tmp16_ = (PlayerController*) _tmp15_;
613
player_controller_remove_from_menu (_tmp16_);
614
_g_object_unref0 (_tmp16_);
615
_tmp17_ = self->priv->settings_manager;
617
settings_manager_remove_interested (_tmp17_, _tmp18_);
618
_tmp19_ = self->priv->registered_clients;
620
gee_abstract_map_unset ((GeeAbstractMap*) _tmp19_, _tmp20_, NULL);
622
g_file_monitor_cancel (_tmp21_);
624
g_object_unref ((GObject*) _tmp22_);
625
_g_free0 (mpris_key);
749
748
const gchar* _tmp11_;
750
749
_tmp11_ = desktop;
751
g_debug ("music-player-bridge.vala:148: Client %s attempting to register but I'm" \
750
g_debug ("music-player-bridge.vala:152: Client %s attempting to register but I'm" \
752
751
" afraid it is blacklisted", _tmp11_);
755
754
_tmp12_ = desktop;
756
g_debug ("music-player-bridge.vala:153: client_has_become_available %s", _tmp12_);
755
g_debug ("music-player-bridge.vala:157: client_has_become_available %s", _tmp12_);
757
756
_tmp13_ = desktop;
758
757
_tmp14_ = g_strconcat (_tmp13_, ".desktop", NULL);
759
758
_tmp15_ = _tmp14_;
819
818
gee_abstract_map_set ((GeeAbstractMap*) _tmp37_, _tmp38_, _tmp39_);
820
819
_tmp40_ = desktop;
821
g_debug ("music-player-bridge.vala:173: Have not seen this %s before, new contro" \
820
g_debug ("music-player-bridge.vala:177: Have not seen this %s before, new contro" \
822
821
"ller created.", _tmp40_);
823
822
_tmp41_ = self->priv->settings_manager;
824
823
_tmp42_ = desktop;
889
888
g_return_if_fail (self != NULL);
890
889
g_return_if_fail (mpris_root_interface != NULL);
891
890
_tmp0_ = mpris_root_interface;
892
g_debug ("music-player-bridge.vala:188: MusicPlayerBridge -> client with dbus in" \
891
g_debug ("music-player-bridge.vala:192: MusicPlayerBridge -> client with dbus in" \
893
892
"terface %s has vanished", _tmp0_);
894
893
_tmp1_ = self->priv->root_menu;
895
894
if (_tmp1_ != NULL) {
902
901
const gchar* _tmp7_;
903
902
gboolean _tmp11_;
904
903
_tmp2_ = mpris_root_interface;
905
g_debug ("music-player-bridge.vala:191: attempt to remove %s", _tmp2_);
904
g_debug ("music-player-bridge.vala:195: attempt to remove %s", _tmp2_);
906
905
_tmp3_ = mpris_root_interface;
907
906
_tmp4_ = g_strdup (_tmp3_);
908
907
_tmp5_ = music_player_bridge_determine_key (_tmp4_);