Video doesn't play after repeating play/back in TizenWinset widget
authorJiyeon Kim <jiyeon0402.kim@samsung.com>
Fri, 28 Jun 2013 08:23:47 +0000 (17:23 +0900)
committerGerrit Code Review <gerrit@gerrit.vlan144.tizendev.org>
Mon, 1 Jul 2013 01:31:37 +0000 (01:31 +0000)
[Title] video doesn't play after repeating play/back in TizenWinset widget
[Problem] N_SE-43410
[Cause] In this case, media element did not suspend and just removed from parent node. At this time, media element coudln't release resource and stay pause.
[Solution] Add supend and resume api in insertedInto and removedFrom api for releasing resource

Change-Id: Ife3182e4e4553b65ce227cd397adb97c80da09f2

Source/WebCore/html/HTMLMediaElement.cpp

index 78fe1d1..72db174 100755 (executable)
@@ -537,6 +537,10 @@ Node::InsertionNotificationRequest HTMLMediaElement::insertedInto(ContainerNode*
     HTMLElement::insertedInto(insertionPoint);
     if (insertionPoint->inDocument() && !getAttribute(srcAttr).isEmpty() && m_networkState == NETWORK_EMPTY)
         scheduleLoad(MediaResource);
+
+#if ENABLE(TIZEN_GSTREAMER_VIDEO)
+    resume();
+#endif
     configureMediaControls();
     return InsertionDone;
 }
@@ -547,7 +551,11 @@ void HTMLMediaElement::removedFrom(ContainerNode* insertionPoint)
         LOG(Media, "HTMLMediaElement::removedFromDocument");
         configureMediaControls();
         if (m_networkState > NETWORK_EMPTY)
+#if ENABLE(TIZEN_GSTREAMER_VIDEO)
+            suspend(PageWillBeSuspended);
+#else
             pause();
+#endif
         if (m_isFullscreen)
             exitFullscreen();
     }