Title: [126157] trunk/Source/WebCore
- Revision
- 126157
- Author
- [email protected]
- Date
- 2012-08-21 08:12:43 -0700 (Tue, 21 Aug 2012)
Log Message
Early returns in MediaPlayer setters
https://bugs.webkit.org/show_bug.cgi?id=87304
Calls to the MediaPlayerPrivate implementation can be avoided if
the value to set and the current value are equal.
Reviewed by Eric Carlson.
* platform/graphics/MediaPlayer.cpp:
(WebCore::MediaPlayer::loadWithNextMediaEngine): Once a new
MediaPlayerPrivate has been created propagate the playback rate
value to it, as it is done for some other attributes like preload
or preservePitch.
(WebCore::MediaPlayer::setVolume): Perform action only if current
and new values differ.
(WebCore::MediaPlayer::setMuted): Ditto.
(WebCore::MediaPlayer::setPreservesPitch): Ditto.
(WebCore::MediaPlayer::setSize): Ditto.
(WebCore::MediaPlayer::setVisible): Ditto.
(WebCore::MediaPlayer::setPreload): Ditto.
Modified Paths
Diff
Modified: trunk/Source/WebCore/ChangeLog (126156 => 126157)
--- trunk/Source/WebCore/ChangeLog 2012-08-21 14:50:54 UTC (rev 126156)
+++ trunk/Source/WebCore/ChangeLog 2012-08-21 15:12:43 UTC (rev 126157)
@@ -1,3 +1,26 @@
+2012-08-21 Philippe Normand <[email protected]>
+
+ Early returns in MediaPlayer setters
+ https://bugs.webkit.org/show_bug.cgi?id=87304
+
+ Calls to the MediaPlayerPrivate implementation can be avoided if
+ the value to set and the current value are equal.
+
+ Reviewed by Eric Carlson.
+
+ * platform/graphics/MediaPlayer.cpp:
+ (WebCore::MediaPlayer::loadWithNextMediaEngine): Once a new
+ MediaPlayerPrivate has been created propagate the playback rate
+ value to it, as it is done for some other attributes like preload
+ or preservePitch.
+ (WebCore::MediaPlayer::setVolume): Perform action only if current
+ and new values differ.
+ (WebCore::MediaPlayer::setMuted): Ditto.
+ (WebCore::MediaPlayer::setPreservesPitch): Ditto.
+ (WebCore::MediaPlayer::setSize): Ditto.
+ (WebCore::MediaPlayer::setVisible): Ditto.
+ (WebCore::MediaPlayer::setPreload): Ditto.
+
2012-08-21 Ilya Tikhonovsky <[email protected]>
Web Inspector: NMI: OwnPtr<T> was counted as RefPtr<T>
Modified: trunk/Source/WebCore/platform/graphics/MediaPlayer.cpp (126156 => 126157)
--- trunk/Source/WebCore/platform/graphics/MediaPlayer.cpp 2012-08-21 14:50:54 UTC (rev 126156)
+++ trunk/Source/WebCore/platform/graphics/MediaPlayer.cpp 2012-08-21 15:12:43 UTC (rev 126157)
@@ -406,6 +406,7 @@
m_private->setPrivateBrowsingMode(m_privateBrowsing);
m_private->setPreload(m_preload);
m_private->setPreservesPitch(preservesPitch());
+ m_private->setRate(m_rate);
if (m_shouldPrepareToRender)
m_private->prepareForRendering();
}
@@ -619,6 +620,9 @@
void MediaPlayer::setVolume(float volume)
{
+ if (volume == m_volume)
+ return;
+
m_volume = volume;
if (m_private->supportsMuting() || !m_muted)
@@ -632,6 +636,9 @@
void MediaPlayer::setMuted(bool muted)
{
+ if (muted == m_muted)
+ return;
+
m_muted = muted;
if (m_private->supportsMuting())
@@ -668,6 +675,9 @@
void MediaPlayer::setPreservesPitch(bool preservesPitch)
{
+ if (preservesPitch == m_preservesPitch)
+ return;
+
m_preservesPitch = preservesPitch;
m_private->setPreservesPitch(preservesPitch);
}
@@ -693,7 +703,10 @@
}
void MediaPlayer::setSize(const IntSize& size)
-{
+{
+ if (size == m_size)
+ return;
+
m_size = size;
m_private->setSize(size);
}
@@ -705,6 +718,9 @@
void MediaPlayer::setVisible(bool b)
{
+ if (b == m_visible)
+ return;
+
m_visible = b;
m_private->setVisible(b);
}
@@ -716,6 +732,9 @@
void MediaPlayer::setPreload(MediaPlayer::Preload preload)
{
+ if (preload == m_preload)
+ return;
+
m_preload = preload;
m_private->setPreload(preload);
}
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo/webkit-changes