51
54
TotemObject *totem;
52
55
} TotemThumbnailPluginPrivate;
57
TotemThumbnailPluginPrivate *priv;
58
} TotemThumbnailPlugin;
62
TotemPluginClass parent_class;
63
} TotemThumbnailPluginClass;
65
G_MODULE_EXPORT GType register_totem_plugin (GTypeModule *module);
66
GType totem_thumbnail_plugin_get_type (void) G_GNUC_CONST;
68
static gboolean impl_activate (TotemPlugin *plugin, TotemObject *totem, GError **error);
69
static void impl_deactivate (TotemPlugin *plugin, TotemObject *totem);
71
TOTEM_PLUGIN_REGISTER (TotemThumbnailPlugin, totem_thumbnail_plugin)
74
totem_thumbnail_plugin_class_init (TotemThumbnailPluginClass *klass)
76
TotemPluginClass *plugin_class = TOTEM_PLUGIN_CLASS (klass);
78
g_type_class_add_private (klass, sizeof (TotemThumbnailPluginPrivate));
80
plugin_class->activate = impl_activate;
81
plugin_class->deactivate = impl_deactivate;
85
totem_thumbnail_plugin_init (TotemThumbnailPlugin *plugin)
87
plugin->priv = G_TYPE_INSTANCE_GET_PRIVATE (plugin,
88
TOTEM_TYPE_THUMBNAIL_PLUGIN,
89
TotemThumbnailPluginPrivate);
57
TOTEM_PLUGIN_REGISTER(TOTEM_TYPE_THUMBNAIL_PLUGIN, TotemThumbnailPlugin, totem_thumbnail_plugin)
93
60
set_icon_to_default (TotemObject *totem)
174
141
update_from_state (pi->priv, totem, NULL);
178
impl_activate (TotemPlugin *plugin,
145
impl_activate (PeasActivatable *plugin)
182
147
TotemThumbnailPlugin *pi = TOTEM_THUMBNAIL_PLUGIN (plugin);
185
pi->priv->window = totem_get_main_window (totem);
186
pi->priv->totem = totem;
150
pi->priv->totem = g_object_get_data (G_OBJECT (plugin), "object");
151
pi->priv->window = totem_get_main_window (pi->priv->totem);
188
pi->priv->file_opened_handler_id = g_signal_connect (G_OBJECT (totem),
153
pi->priv->file_opened_handler_id = g_signal_connect (G_OBJECT (pi->priv->totem),
190
155
G_CALLBACK (file_opened_cb),
192
pi->priv->file_closed_handler_id = g_signal_connect (G_OBJECT (totem),
157
pi->priv->file_closed_handler_id = g_signal_connect (G_OBJECT (pi->priv->totem),
194
159
G_CALLBACK (file_closed_cb),
197
g_object_get (totem, "current-mrl", &mrl, NULL);
162
g_object_get (pi->priv->totem, "current-mrl", &mrl, NULL);
199
update_from_state (pi->priv, totem, mrl);
164
update_from_state (pi->priv, pi->priv->totem, mrl);
207
impl_deactivate (TotemPlugin *plugin,
170
impl_deactivate (PeasActivatable *plugin)
210
172
TotemThumbnailPlugin *pi = TOTEM_THUMBNAIL_PLUGIN (plugin);
212
g_signal_handler_disconnect (totem, pi->priv->file_opened_handler_id);
213
g_signal_handler_disconnect (totem, pi->priv->file_closed_handler_id);
174
g_signal_handler_disconnect (pi->priv->totem, pi->priv->file_opened_handler_id);
175
g_signal_handler_disconnect (pi->priv->totem, pi->priv->file_closed_handler_id);
215
set_icon_to_default (totem);
177
set_icon_to_default (pi->priv->totem);