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

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

Issue 178003008: Remove the HTMLVideoElement-specific prefixed fullscreen API (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: rm negative test Created 6 years, 10 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 | Annotate | Revision Log
« no previous file with comments | « Source/core/html/HTMLVideoElement.h ('k') | Source/core/html/HTMLVideoElement.idl » ('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) 2007, 2008, 2009, 2010 Apple Inc. All rights reserved. 2 * Copyright (C) 2007, 2008, 2009, 2010 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 102 matching lines...) Expand 10 before | Expand all | Expand 10 after
113 if (renderer()) 113 if (renderer())
114 toRenderImage(renderer())->imageResource()->setImageResource(0); 114 toRenderImage(renderer())->imageResource()->setImageResource(0);
115 } 115 }
116 // Notify the player when the poster image URL changes. 116 // Notify the player when the poster image URL changes.
117 if (player()) 117 if (player())
118 player()->setPoster(posterImageURL()); 118 player()->setPoster(posterImageURL());
119 } else 119 } else
120 HTMLMediaElement::parseAttribute(name, value); 120 HTMLMediaElement::parseAttribute(name, value);
121 } 121 }
122 122
123 bool HTMLVideoElement::supportsFullscreen() const
124 {
125 if (!document().page())
126 return false;
127
128 if (!player())
129 return false;
130
131 return true;
132 }
133
134 unsigned HTMLVideoElement::videoWidth() const 123 unsigned HTMLVideoElement::videoWidth() const
135 { 124 {
136 if (!player()) 125 if (!player())
137 return 0; 126 return 0;
138 return player()->naturalSize().width(); 127 return player()->naturalSize().width();
139 } 128 }
140 129
141 unsigned HTMLVideoElement::videoHeight() const 130 unsigned HTMLVideoElement::videoHeight() const
142 { 131 {
143 if (!player()) 132 if (!player())
(...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after
200 } 189 }
201 190
202 bool HTMLVideoElement::hasAvailableVideoFrame() const 191 bool HTMLVideoElement::hasAvailableVideoFrame() const
203 { 192 {
204 if (!player()) 193 if (!player())
205 return false; 194 return false;
206 195
207 return player()->hasVideo() && player()->readyState() >= MediaPlayer::HaveCu rrentData; 196 return player()->hasVideo() && player()->readyState() >= MediaPlayer::HaveCu rrentData;
208 } 197 }
209 198
210 void HTMLVideoElement::webkitEnterFullscreen(ExceptionState& exceptionState)
211 {
212 if (isFullscreen())
213 return;
214
215 // Generate an exception if this isn't called in response to a user gesture, or if the
216 // element does not support fullscreen.
217 if (userGestureRequiredForFullscreen() && !UserGestureIndicator::processingU serGesture()) {
218 exceptionState.throwDOMException(InvalidStateError, "This element may on ly enter fullscreen mode in response to a user gesture ('click', for example).") ;
219 return;
220 }
221 if (!supportsFullscreen()) {
222 exceptionState.throwDOMException(InvalidStateError, "This element does n ot support fullscreen mode.");
223 return;
224 }
225
226 enterFullscreen();
227 }
228
229 void HTMLVideoElement::webkitExitFullscreen()
230 {
231 if (isFullscreen())
232 exitFullscreen();
233 }
234
235 bool HTMLVideoElement::webkitSupportsFullscreen()
236 {
237 return supportsFullscreen();
238 }
239
240 bool HTMLVideoElement::webkitDisplayingFullscreen()
241 {
242 return isFullscreen();
243 }
244
245 void HTMLVideoElement::didMoveToNewDocument(Document& oldDocument) 199 void HTMLVideoElement::didMoveToNewDocument(Document& oldDocument)
246 { 200 {
247 if (m_imageLoader) 201 if (m_imageLoader)
248 m_imageLoader->elementDidMoveToNewDocument(); 202 m_imageLoader->elementDidMoveToNewDocument();
249 HTMLMediaElement::didMoveToNewDocument(oldDocument); 203 HTMLMediaElement::didMoveToNewDocument(oldDocument);
250 } 204 }
251 205
252 unsigned HTMLVideoElement::webkitDecodedFrameCount() const 206 unsigned HTMLVideoElement::webkitDecodedFrameCount() const
253 { 207 {
254 if (!player()) 208 if (!player())
(...skipping 17 matching lines...) Expand all
272 return KURL(); 226 return KURL();
273 return document().completeURL(url); 227 return document().completeURL(url);
274 } 228 }
275 229
276 KURL HTMLVideoElement::mediaPlayerPosterURL() 230 KURL HTMLVideoElement::mediaPlayerPosterURL()
277 { 231 {
278 return posterImageURL(); 232 return posterImageURL();
279 } 233 }
280 234
281 } 235 }
OLDNEW
« no previous file with comments | « Source/core/html/HTMLVideoElement.h ('k') | Source/core/html/HTMLVideoElement.idl » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698