Terminology: pressing stop will delete the media smart,thus remove the video and...
authordavemds <davemds@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Tue, 26 Jun 2012 19:07:47 +0000 (19:07 +0000)
committerdavemds <davemds@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Tue, 26 Jun 2012 19:07:47 +0000 (19:07 +0000)
git-svn-id: http://svn.enlightenment.org/svn/e/trunk/terminology@72890 7cbeb6ba-43b4-40fd-8cce-4c39aea84d33

src/bin/media.c
src/bin/media.h

index 25ba8f3..d9e8750 100644 (file)
@@ -384,8 +384,7 @@ _cb_media_pause(void *data, Evas_Object *obj, const char *emission, const char *
 static void
 _cb_media_stop(void *data, Evas_Object *obj, const char *emission, const char *source)
 {
-   media_play_set(data, EINA_FALSE);
-   media_position_set(data, 0.0);
+   media_stop(data);
 }
 
 static void
@@ -681,6 +680,15 @@ media_play_set(Evas_Object *obj, Eina_Bool play)
 }
 
 void
+media_stop(Evas_Object *obj)
+{
+   Media *sd = evas_object_smart_data_get(obj);
+   if ((!sd) || (sd->type != TYPE_MOV)) return;
+
+   evas_object_del(obj);
+}
+
+void
 media_position_set(Evas_Object *obj, double pos)
 {
    double len;
index 21cf5d7..1aa8779 100644 (file)
@@ -15,5 +15,6 @@ void media_mute_set(Evas_Object *obj, Eina_Bool mute);
 void media_play_set(Evas_Object *obj, Eina_Bool play);
 void media_position_set(Evas_Object *obj, double pos);
 void media_volume_set(Evas_Object *obj, double vol);
+void media_stop(Evas_Object *obj);
 
 #endif