Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(286)

Side by Side Diff: Source/core/html/MediaController.cpp

Issue 334593005: Removing using declarations that import names in the C++ Standard library. (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Created 6 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « Source/core/html/HTMLTrackElement.cpp ('k') | Source/core/html/TimeRanges.cpp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2011 Apple Inc. All rights reserved. 2 * Copyright (C) 2011 Apple Inc. All rights reserved.
3 * 3 *
4 * Redistribution and use in source and binary forms, with or without 4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions 5 * modification, are permitted provided that the following conditions
6 * are met: 6 * are met:
7 * 1. Redistributions of source code must retain the above copyright 7 * 1. Redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer. 8 * notice, this list of conditions and the following disclaimer.
9 * 2. Redistributions in binary form must reproduce the above copyright 9 * 2. Redistributions in binary form must reproduce the above copyright
10 * notice, this list of conditions and the following disclaimer in the 10 * notice, this list of conditions and the following disclaimer in the
(...skipping 20 matching lines...) Expand all
31 #include "bindings/v8/ExceptionStatePlaceholder.h" 31 #include "bindings/v8/ExceptionStatePlaceholder.h"
32 #include "core/dom/ExceptionCode.h" 32 #include "core/dom/ExceptionCode.h"
33 #include "core/events/GenericEventQueue.h" 33 #include "core/events/GenericEventQueue.h"
34 #include "core/html/HTMLMediaElement.h" 34 #include "core/html/HTMLMediaElement.h"
35 #include "core/html/TimeRanges.h" 35 #include "core/html/TimeRanges.h"
36 #include "platform/Clock.h" 36 #include "platform/Clock.h"
37 #include "wtf/CurrentTime.h" 37 #include "wtf/CurrentTime.h"
38 #include "wtf/StdLibExtras.h" 38 #include "wtf/StdLibExtras.h"
39 #include "wtf/text/AtomicString.h" 39 #include "wtf/text/AtomicString.h"
40 40
41 using namespace std;
42
43 namespace WebCore { 41 namespace WebCore {
44 42
45 PassRefPtrWillBeRawPtr<MediaController> MediaController::create(ExecutionContext * context) 43 PassRefPtrWillBeRawPtr<MediaController> MediaController::create(ExecutionContext * context)
46 { 44 {
47 return adoptRefWillBeRefCountedGarbageCollected(new MediaController(context) ); 45 return adoptRefWillBeRefCountedGarbageCollected(new MediaController(context) );
48 } 46 }
49 47
50 MediaController::MediaController(ExecutionContext* context) 48 MediaController::MediaController(ExecutionContext* context)
51 : m_paused(false) 49 : m_paused(false)
52 , m_defaultPlaybackRate(1) 50 , m_defaultPlaybackRate(1)
(...skipping 79 matching lines...) Expand 10 before | Expand all | Expand 10 after
132 130
133 double MediaController::duration() const 131 double MediaController::duration() const
134 { 132 {
135 // FIXME: Investigate caching the maximum duration and only updating the cac hed value 133 // FIXME: Investigate caching the maximum duration and only updating the cac hed value
136 // when the slaved media elements' durations change. 134 // when the slaved media elements' durations change.
137 double maxDuration = 0; 135 double maxDuration = 0;
138 for (MediaElementSequence::const_iterator it = m_mediaElements.begin(); it ! = m_mediaElements.end(); ++it) { 136 for (MediaElementSequence::const_iterator it = m_mediaElements.begin(); it ! = m_mediaElements.end(); ++it) {
139 double duration = (*it)->duration(); 137 double duration = (*it)->duration();
140 if (std::isnan(duration)) 138 if (std::isnan(duration))
141 continue; 139 continue;
142 maxDuration = max(maxDuration, duration); 140 maxDuration = std::max(maxDuration, duration);
143 } 141 }
144 return maxDuration; 142 return maxDuration;
145 } 143 }
146 144
147 double MediaController::currentTime() const 145 double MediaController::currentTime() const
148 { 146 {
149 if (m_mediaElements.isEmpty()) 147 if (m_mediaElements.isEmpty())
150 return 0; 148 return 0;
151 149
152 if (m_position == MediaPlayer::invalidTime()) { 150 if (m_position == MediaPlayer::invalidTime()) {
153 // Some clocks may return times outside the range of [0..duration]. 151 // Some clocks may return times outside the range of [0..duration].
154 m_position = max(0.0, min(duration(), m_clock->currentTime())); 152 m_position = std::max(0.0, std::min(duration(), m_clock->currentTime())) ;
155 m_clearPositionTimer.startOneShot(0, FROM_HERE); 153 m_clearPositionTimer.startOneShot(0, FROM_HERE);
156 } 154 }
157 155
158 return m_position; 156 return m_position;
159 } 157 }
160 158
161 void MediaController::setCurrentTime(double time, ExceptionState& exceptionState ) 159 void MediaController::setCurrentTime(double time, ExceptionState& exceptionState )
162 { 160 {
163 // When the user agent is to seek the media controller to a particular new p layback position, 161 // When the user agent is to seek the media controller to a particular new p layback position,
164 // it must follow these steps: 162 // it must follow these steps:
165 // If the new playback position is less than zero, then set it to zero. 163 // If the new playback position is less than zero, then set it to zero.
166 time = max(0.0, time); 164 time = std::max(0.0, time);
167 165
168 // If the new playback position is greater than the media controller duratio n, then set it 166 // If the new playback position is greater than the media controller duratio n, then set it
169 // to the media controller duration. 167 // to the media controller duration.
170 time = min(time, duration()); 168 time = std::min(time, duration());
171 169
172 // Set the media controller position to the new playback position. 170 // Set the media controller position to the new playback position.
173 m_position = time; 171 m_position = time;
174 m_clock->setCurrentTime(time); 172 m_clock->setCurrentTime(time);
175 173
176 // Seek each slaved media element to the new playback position relative to t he media element timeline. 174 // Seek each slaved media element to the new playback position relative to t he media element timeline.
177 for (MediaElementSequence::const_iterator it = m_mediaElements.begin(); it ! = m_mediaElements.end(); ++it) 175 for (MediaElementSequence::const_iterator it = m_mediaElements.begin(); it ! = m_mediaElements.end(); ++it)
178 (*it)->seek(time, exceptionState); 176 (*it)->seek(time, exceptionState);
179 177
180 scheduleTimeupdateEvent(); 178 scheduleTimeupdateEvent();
(...skipping 176 matching lines...) Expand 10 before | Expand all | Expand 10 after
357 355
358 if (m_mediaElements.isEmpty()) { 356 if (m_mediaElements.isEmpty()) {
359 // If the MediaController has no slaved media elements, let new readines s state be 0. 357 // If the MediaController has no slaved media elements, let new readines s state be 0.
360 newReadyState = HTMLMediaElement::HAVE_NOTHING; 358 newReadyState = HTMLMediaElement::HAVE_NOTHING;
361 } else { 359 } else {
362 // Otherwise, let it have the lowest value of the readyState IDL attribu tes of all of its 360 // Otherwise, let it have the lowest value of the readyState IDL attribu tes of all of its
363 // slaved media elements. 361 // slaved media elements.
364 MediaElementSequence::const_iterator it = m_mediaElements.begin(); 362 MediaElementSequence::const_iterator it = m_mediaElements.begin();
365 newReadyState = (*it)->readyState(); 363 newReadyState = (*it)->readyState();
366 for (++it; it != m_mediaElements.end(); ++it) 364 for (++it; it != m_mediaElements.end(); ++it)
367 newReadyState = min(newReadyState, (*it)->readyState()); 365 newReadyState = std::min(newReadyState, (*it)->readyState());
368 } 366 }
369 367
370 if (newReadyState == oldReadyState) 368 if (newReadyState == oldReadyState)
371 return; 369 return;
372 370
373 // If the MediaController's most recently reported readiness state is greate r than new readiness 371 // If the MediaController's most recently reported readiness state is greate r than new readiness
374 // state then queue a task to fire a simple event at the MediaController obj ect, whose name is the 372 // state then queue a task to fire a simple event at the MediaController obj ect, whose name is the
375 // event name corresponding to the value of new readiness state given in the table below. [omitted] 373 // event name corresponding to the value of new readiness state given in the table below. [omitted]
376 if (oldReadyState > newReadyState) { 374 if (oldReadyState > newReadyState) {
377 scheduleEvent(eventNameForReadyState(newReadyState)); 375 scheduleEvent(eventNameForReadyState(newReadyState));
(...skipping 233 matching lines...) Expand 10 before | Expand all | Expand 10 after
611 m_previousTimeupdateTime = now; 609 m_previousTimeupdateTime = now;
612 } 610 }
613 611
614 void MediaController::trace(Visitor* visitor) 612 void MediaController::trace(Visitor* visitor)
615 { 613 {
616 visitor->trace(m_mediaElements); 614 visitor->trace(m_mediaElements);
617 EventTargetWithInlineData::trace(visitor); 615 EventTargetWithInlineData::trace(visitor);
618 } 616 }
619 617
620 } 618 }
OLDNEW
« no previous file with comments | « Source/core/html/HTMLTrackElement.cpp ('k') | Source/core/html/TimeRanges.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698