diff options
-rw-r--r-- | src/view/viewer.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/src/view/viewer.c b/src/view/viewer.c index 6c7a389..ec5cab7 100644 --- a/src/view/viewer.c +++ b/src/view/viewer.c @@ -244,6 +244,7 @@ static void _image_unload(struct _priv *priv) } if (priv->photo) { + elm_photocam_file_set(priv->photo, NULL); evas_object_del(priv->photo); priv->photo = NULL; } @@ -263,8 +264,10 @@ static void _image_loaded(void *data, Evas_Object *obj, void *ev) priv = data; if (priv->photo != priv->photo_pre) { - if (priv->photo) + if (priv->photo) { + elm_photocam_file_set(priv->photo, NULL); evas_object_del(priv->photo); + } priv->photo = obj; } @@ -282,6 +285,7 @@ static void _image_loaded_detail(void *data, Evas_Object *obj, void *ev) priv = data; priv->photo_pre = NULL; + elm_photocam_file_set(obj, NULL); util_add_to_recent(priv->playlist.list, priv->playlist.cur); } @@ -1429,6 +1433,10 @@ static void _hide(void *view_data) _slideshow_disable(priv); _viewer_hide(priv); + progressbar_stop(priv->progress); + playermgr_stop(priv->player); + _image_unload(priv); + timeout_handler_enable(priv->timeout, false); media_content_disconnect(); |