271
271
static void zeitgeist_dp_plugin_real_activate (PeasActivatable* base) {
272
272
ZeitgeistDpPlugin * self;
273
TotemObject* totem = NULL;
273
274
GObject* _tmp0_ = NULL;
276
276
ZeitgeistLog* _tmp2_;
277
277
ZeitgeistDataSourceRegistry* _tmp3_;
278
MediaInfo _tmp4_ = {0};
287
gulong _tmp10_ = 0UL;
289
gint _tmp11__length1;
290
gulong _tmp12_ = 0UL;
292
GPtrArray* templates;
293
ZeitgeistEvent* _tmp14_;
294
ZeitgeistEvent* _tmp15_;
295
ZeitgeistEvent* event;
288
gint _tmp10__length1;
289
gulong _tmp11_ = 0UL;
290
GPtrArray* templates = NULL;
292
ZeitgeistEvent* event = NULL;
293
ZeitgeistEvent* _tmp13_;
295
ZeitgeistDataSource* ds = NULL;
297
ZeitgeistDataSource* _tmp16_;
298
ZeitgeistDataSourceRegistry* _tmp17_;
298
299
ZeitgeistDataSource* _tmp18_;
299
ZeitgeistDataSource* _tmp19_;
300
ZeitgeistDataSource* ds;
301
ZeitgeistDataSourceRegistry* _tmp20_;
302
ZeitgeistDataSource* _tmp21_;
303
300
self = (ZeitgeistDpPlugin*) base;
304
301
g_object_get ((PeasActivatable*) self, "object", &_tmp0_, NULL);
306
totem = TOTEM_OBJECT (_tmp1_);
303
totem = G_TYPE_CHECK_INSTANCE_CAST (_tmp1_, totem_object_get_type (), TotemObject);
307
304
_tmp2_ = zeitgeist_log_new ();
308
305
_g_object_unref0 (self->priv->zg_log);
309
306
self->priv->zg_log = _tmp2_;
310
307
_tmp3_ = zeitgeist_data_source_registry_new ();
311
308
_g_object_unref0 (self->priv->zg_registry);
312
309
self->priv->zg_registry = _tmp3_;
313
memset (&_tmp4_, 0, sizeof (MediaInfo));
314
310
media_info_destroy (&self->priv->current_media);
315
self->priv->current_media = _tmp4_;
316
_tmp5_ = self->priv->signals;
317
_tmp5__length1 = self->priv->signals_length1;
318
_tmp6_ = g_signal_connect_swapped (totem, "file-opened", (GCallback) zeitgeist_dp_plugin_file_opened, self);
319
_vala_array_add1 (&self->priv->signals, &self->priv->signals_length1, &self->priv->_signals_size_, _tmp6_);
320
_tmp7_ = self->priv->signals;
321
_tmp7__length1 = self->priv->signals_length1;
322
_tmp8_ = g_signal_connect_swapped (totem, "file-closed", (GCallback) zeitgeist_dp_plugin_file_closed, self);
323
_vala_array_add2 (&self->priv->signals, &self->priv->signals_length1, &self->priv->_signals_size_, _tmp8_);
324
_tmp9_ = self->priv->signals;
325
_tmp9__length1 = self->priv->signals_length1;
326
_tmp10_ = g_signal_connect_swapped (totem, "metadata-updated", (GCallback) zeitgeist_dp_plugin_metadata_changed, self);
327
_vala_array_add3 (&self->priv->signals, &self->priv->signals_length1, &self->priv->_signals_size_, _tmp10_);
328
_tmp11_ = self->priv->signals;
329
_tmp11__length1 = self->priv->signals_length1;
330
_tmp12_ = g_signal_connect_swapped (totem, "notify::playing", (GCallback) zeitgeist_dp_plugin_playing_changed, self);
331
_vala_array_add4 (&self->priv->signals, &self->priv->signals_length1, &self->priv->_signals_size_, _tmp12_);
332
_tmp13_ = g_ptr_array_new ();
334
_tmp14_ = zeitgeist_event_new_full ("", ZEITGEIST_ZG_USER_ACTIVITY, "application://totem.desktop", NULL, NULL);
335
_tmp15_ = g_object_ref_sink (_tmp14_);
338
g_ptr_array_add (_tmp16_, event);
311
memset (&self->priv->current_media, 0, sizeof (MediaInfo));
312
_tmp4_ = self->priv->signals;
313
_tmp4__length1 = self->priv->signals_length1;
314
_tmp5_ = g_signal_connect_swapped (totem, "file-has-played", (GCallback) zeitgeist_dp_plugin_file_has_played, self);
315
_vala_array_add1 (&self->priv->signals, &self->priv->signals_length1, &self->priv->_signals_size_, _tmp5_);
316
_tmp6_ = self->priv->signals;
317
_tmp6__length1 = self->priv->signals_length1;
318
_tmp7_ = g_signal_connect_swapped (totem, "file-closed", (GCallback) zeitgeist_dp_plugin_file_closed, self);
319
_vala_array_add2 (&self->priv->signals, &self->priv->signals_length1, &self->priv->_signals_size_, _tmp7_);
320
_tmp8_ = self->priv->signals;
321
_tmp8__length1 = self->priv->signals_length1;
322
_tmp9_ = g_signal_connect_swapped (totem, "metadata-updated", (GCallback) zeitgeist_dp_plugin_metadata_changed, self);
323
_vala_array_add3 (&self->priv->signals, &self->priv->signals_length1, &self->priv->_signals_size_, _tmp9_);
324
_tmp10_ = self->priv->signals;
325
_tmp10__length1 = self->priv->signals_length1;
326
_tmp11_ = g_signal_connect_swapped (totem, "notify::playing", (GCallback) zeitgeist_dp_plugin_playing_changed, self);
327
_vala_array_add4 (&self->priv->signals, &self->priv->signals_length1, &self->priv->_signals_size_, _tmp11_);
328
_tmp12_ = g_ptr_array_new ();
330
_tmp13_ = zeitgeist_event_new_full ("", ZEITGEIST_ZG_USER_ACTIVITY, "application://totem.desktop", NULL, NULL);
331
g_object_ref_sink (_tmp13_);
334
g_ptr_array_add (_tmp14_, event);
340
336
templates = NULL;
341
_tmp18_ = zeitgeist_data_source_new_full ("org.gnome.Totem,dataprovider", "Totem dataprovider", "Logs access/leave events for media files played with Totem", _tmp17_);
342
_tmp19_ = g_object_ref_sink (_tmp18_);
344
_tmp20_ = self->priv->zg_registry;
345
_tmp21_ = _g_object_ref0 (ds);
346
zeitgeist_data_source_registry_register_data_source (_tmp20_, _tmp21_, NULL, NULL, NULL);
337
_tmp16_ = zeitgeist_data_source_new_full ("org.gnome.Totem,dataprovider", "Totem dataprovider", "Logs access/leave events for media files played with Totem", _tmp15_);
338
g_object_ref_sink (_tmp16_);
340
_tmp17_ = self->priv->zg_registry;
341
_tmp18_ = _g_object_ref0 (ds);
342
zeitgeist_data_source_registry_register_data_source (_tmp17_, _tmp18_, NULL, NULL, NULL);
347
343
_g_object_unref0 (ds);
348
344
_g_object_unref0 (event);
349
345
_g_ptr_array_free0 (templates);
468
463
zeitgeist_dp_plugin_file_closed (self, _tmp2_);
470
memset (&_tmp3_, 0, sizeof (MediaInfo));
471
465
media_info_destroy (&self->priv->current_media);
472
self->priv->current_media = _tmp3_;
474
_tmp5_ = g_strdup (_tmp4_);
466
memset (&self->priv->current_media, 0, sizeof (MediaInfo));
468
_tmp4_ = g_strdup (_tmp3_);
475
469
_g_free0 (self->priv->current_media.mrl);
476
self->priv->current_media.mrl = _tmp5_;
470
self->priv->current_media.mrl = _tmp4_;
477
471
g_get_current_time (&cur_time);
479
_tmp7_ = zeitgeist_timestamp_from_timeval (&_tmp6_);
480
self->priv->current_media.timestamp = _tmp7_;
481
_tmp8_ = self->priv->media_info_timeout;
482
if (_tmp8_ == ((guint) 0)) {
484
_tmp9_ = g_timeout_add_full (G_PRIORITY_DEFAULT, (guint) 250, _zeitgeist_dp_plugin_wait_for_media_info_gsource_func, g_object_ref (self), g_object_unref);
485
self->priv->media_info_timeout = _tmp9_;
473
_tmp6_ = zeitgeist_timestamp_from_timeval (&_tmp5_);
474
self->priv->current_media.timestamp = _tmp6_;
475
_tmp7_ = self->priv->media_info_timeout;
476
if (_tmp7_ == ((guint) 0)) {
478
_tmp8_ = g_timeout_add_full (G_PRIORITY_DEFAULT, (guint) 250, _zeitgeist_dp_plugin_wait_for_media_info_gsource_func, g_object_ref (self), g_object_unref);
479
self->priv->media_info_timeout = _tmp8_;
486
480
zeitgeist_dp_plugin_restart_watcher (self, (guint) 15000);
765
760
GValue val = {0};
761
BaconVideoWidget* video = NULL;
766
762
TotemObject* _tmp8_;
767
763
GtkWidget* _tmp9_ = NULL;
768
BaconVideoWidget* video;
769
764
BaconVideoWidget* _tmp10_;
770
GValue _tmp11_ = {0};
771
const gchar* _tmp12_ = NULL;
772
gboolean _tmp13_ = FALSE;
773
const gchar* _tmp14_;
776
const gchar* _tmp17_;
765
BaconVideoWidget* _tmp11_;
766
GValue _tmp12_ = {0};
767
const gchar* _tmp13_ = NULL;
768
gboolean _tmp14_ = FALSE;
769
const gchar* _tmp15_;
772
const gchar* _tmp18_;
779
_tmp9_ = totem_get_video_widget (_tmp8_);
780
video = BACON_IS_VIDEO_WIDGET (_tmp9_) ? ((BaconVideoWidget*) _tmp9_) : NULL;
782
bacon_video_widget_get_metadata (_tmp10_, BVW_INFO_HAS_VIDEO, &_tmp11_);
775
_tmp9_ = totem_object_get_video_widget (_tmp8_);
776
_tmp10_ = G_TYPE_CHECK_INSTANCE_TYPE (_tmp9_, BACON_TYPE_VIDEO_WIDGET) ? ((BaconVideoWidget*) _tmp9_) : NULL;
777
if (_tmp10_ == NULL) {
778
_g_object_unref0 (_tmp9_);
782
bacon_video_widget_get_metadata (_tmp11_, BVW_INFO_HAS_VIDEO, &_tmp12_);
783
783
G_IS_VALUE (&val) ? (g_value_unset (&val), NULL) : NULL;
785
_tmp13_ = g_value_get_boolean (&val);
787
_tmp12_ = ZEITGEIST_NFO_VIDEO;
785
_tmp14_ = g_value_get_boolean (&val);
787
_tmp13_ = ZEITGEIST_NFO_VIDEO;
789
_tmp12_ = ZEITGEIST_NFO_AUDIO;
789
_tmp13_ = ZEITGEIST_NFO_AUDIO;
792
_tmp15_ = g_strdup (_tmp14_);
792
_tmp16_ = g_strdup (_tmp15_);
793
793
_g_free0 (self->priv->current_media.interpretation);
794
self->priv->current_media.interpretation = _tmp15_;
795
_tmp16_ = self->priv->current_media;
796
_tmp17_ = _tmp16_.mrl;
797
zeitgeist_dp_plugin_query_media_mimetype (self, _tmp17_, NULL, NULL);
798
_tmp18_ = self->priv->timeout_id;
799
if (_tmp18_ != ((guint) 0)) {
801
_tmp19_ = self->priv->timeout_id;
802
g_source_remove (_tmp19_);
794
self->priv->current_media.interpretation = _tmp16_;
795
_tmp17_ = self->priv->current_media;
796
_tmp18_ = _tmp17_.mrl;
797
zeitgeist_dp_plugin_query_media_mimetype (self, _tmp18_, NULL, NULL);
798
_tmp19_ = self->priv->timeout_id;
799
if (_tmp19_ != ((guint) 0)) {
801
_tmp20_ = self->priv->timeout_id;
802
g_source_remove (_tmp20_);
804
804
self->priv->timeout_id = (guint) 0;
805
805
self->priv->media_info_timeout = (guint) 0;
944
942
_tmp23_ = self->priv->current_media;
945
943
_tmp24_ = _tmp23_.title;
946
944
_tmp25_ = zeitgeist_subject_new_full (_tmp14_, _tmp16_, _tmp19_, _tmp21_, _tmp22_, _tmp24_, "");
947
_tmp26_ = g_object_ref_sink (_tmp25_);
949
_tmp27_ = event_interpretation;
951
_tmp29_ = zeitgeist_event_new_full (_tmp27_, ZEITGEIST_ZG_USER_ACTIVITY, "application://totem.desktop", _tmp28_, NULL, NULL);
952
_tmp30_ = g_object_ref_sink (_tmp29_);
955
_tmp32_ = self->priv->current_media;
956
_tmp33_ = _tmp32_.timestamp;
957
zeitgeist_event_set_timestamp (_tmp31_, _tmp33_);
958
_tmp34_ = self->priv->zg_log;
960
zeitgeist_log_insert_events_no_reply (_tmp34_, _tmp35_, NULL, NULL);
945
g_object_ref_sink (_tmp25_);
947
_tmp26_ = event_interpretation;
949
_tmp28_ = zeitgeist_event_new_full (_tmp26_, ZEITGEIST_ZG_USER_ACTIVITY, "application://totem.desktop", _tmp27_, NULL, NULL);
950
g_object_ref_sink (_tmp28_);
953
_tmp30_ = self->priv->current_media;
954
_tmp31_ = _tmp30_.timestamp;
955
zeitgeist_event_set_timestamp (_tmp29_, _tmp31_);
956
_tmp32_ = self->priv->zg_log;
958
zeitgeist_log_insert_events_no_reply (_tmp32_, _tmp33_, NULL, NULL);
961
959
_g_object_unref0 (event);
962
960
_g_object_unref0 (subject);
963
961
_g_free0 (origin);