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

Side by Side Diff: Source/web/FullscreenController.cpp

Issue 196723014: Replace Element::isMediaElement() with isHTMLMediaElement (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: less null checks Created 6 years, 9 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/shadow/MediaControlElementTypes.cpp ('k') | no next file » | 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) 2013 Google Inc. All rights reserved. 2 * Copyright (C) 2013 Google 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 are 5 * modification, are permitted provided that the following conditions are
6 * met: 6 * met:
7 * 7 *
8 * * Redistributions of source code must retain the above copyright 8 * * Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer. 9 * notice, this list of conditions and the following disclaimer.
10 * * Redistributions in binary form must reproduce the above 10 * * Redistributions in binary form must reproduce the above
(...skipping 70 matching lines...) Expand 10 before | Expand all | Expand 10 after
81 if (!m_exitFullscreenPageScaleFactor) { 81 if (!m_exitFullscreenPageScaleFactor) {
82 m_exitFullscreenPageScaleFactor = m_webViewImpl->pageScaleFactor (); 82 m_exitFullscreenPageScaleFactor = m_webViewImpl->pageScaleFactor ();
83 m_exitFullscreenScrollOffset = m_webViewImpl->mainFrame()->scrol lOffset(); 83 m_exitFullscreenScrollOffset = m_webViewImpl->mainFrame()->scrol lOffset();
84 m_webViewImpl->setPageScaleFactorPreservingScrollOffset(1.0f); 84 m_webViewImpl->setPageScaleFactorPreservingScrollOffset(1.0f);
85 } 85 }
86 86
87 FullscreenElementStack::from(*doc).webkitDidEnterFullScreenForElemen t(0); 87 FullscreenElementStack::from(*doc).webkitDidEnterFullScreenForElemen t(0);
88 if (RuntimeEnabledFeatures::overlayFullscreenVideoEnabled()) { 88 if (RuntimeEnabledFeatures::overlayFullscreenVideoEnabled()) {
89 Element* element = FullscreenElementStack::currentFullScreenElem entFrom(*doc); 89 Element* element = FullscreenElementStack::currentFullScreenElem entFrom(*doc);
90 ASSERT(element); 90 ASSERT(element);
91 if (element->isMediaElement() && m_webViewImpl->layerTreeView()) 91 if (isHTMLMediaElement(*element) && m_webViewImpl->layerTreeView ())
92 m_webViewImpl->layerTreeView()->setHasTransparentBackground( true); 92 m_webViewImpl->layerTreeView()->setHasTransparentBackground( true);
93 } 93 }
94 } 94 }
95 } 95 }
96 } 96 }
97 97
98 void FullscreenController::willExitFullScreen() 98 void FullscreenController::willExitFullScreen()
99 { 99 {
100 if (!m_fullScreenFrame) 100 if (!m_fullScreenFrame)
101 return; 101 return;
(...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after
150 150
151 // We are already in fullscreen mode. 151 // We are already in fullscreen mode.
152 if (m_fullScreenFrame) { 152 if (m_fullScreenFrame) {
153 m_provisionalFullScreenElement = element; 153 m_provisionalFullScreenElement = element;
154 willEnterFullScreen(); 154 willEnterFullScreen();
155 didEnterFullScreen(); 155 didEnterFullScreen();
156 return; 156 return;
157 } 157 }
158 158
159 if (RuntimeEnabledFeatures::overlayFullscreenVideoEnabled() 159 if (RuntimeEnabledFeatures::overlayFullscreenVideoEnabled()
160 && element && element->isMediaElement() 160 && isHTMLMediaElement(element)
161 // FIXME: There is no embedder-side handling in layout test mode. 161 // FIXME: There is no embedder-side handling in layout test mode.
162 && !isRunningLayoutTest()) { 162 && !isRunningLayoutTest()) {
163 HTMLMediaElement* mediaElement = toHTMLMediaElement(element); 163 HTMLMediaElement* mediaElement = toHTMLMediaElement(element);
164 if (mediaElement->player() && mediaElement->player()->canShowFullscreenO verlay()) { 164 if (mediaElement->player() && mediaElement->player()->canShowFullscreenO verlay()) {
165 mediaElement->player()->showFullscreenOverlay(); 165 mediaElement->player()->showFullscreenOverlay();
166 m_provisionalFullScreenElement = element; 166 m_provisionalFullScreenElement = element;
167 return; 167 return;
168 } 168 }
169 } 169 }
170 170
171 // We need to transition to fullscreen mode. 171 // We need to transition to fullscreen mode.
172 if (WebViewClient* client = m_webViewImpl->client()) { 172 if (WebViewClient* client = m_webViewImpl->client()) {
173 if (client->enterFullScreen()) 173 if (client->enterFullScreen())
174 m_provisionalFullScreenElement = element; 174 m_provisionalFullScreenElement = element;
175 } 175 }
176 } 176 }
177 177
178 void FullscreenController::exitFullScreenForElement(WebCore::Element* element) 178 void FullscreenController::exitFullScreenForElement(WebCore::Element* element)
179 { 179 {
180 // The client is exiting full screen, so don't send a notification. 180 // The client is exiting full screen, so don't send a notification.
181 if (m_isCancelingFullScreen) 181 if (m_isCancelingFullScreen)
182 return; 182 return;
183 if (RuntimeEnabledFeatures::overlayFullscreenVideoEnabled() 183 if (RuntimeEnabledFeatures::overlayFullscreenVideoEnabled()
184 && element && element->isMediaElement() 184 && isHTMLMediaElement(element)
185 // FIXME: There is no embedder-side handling in layout test mode. 185 // FIXME: There is no embedder-side handling in layout test mode.
186 && !isRunningLayoutTest()) { 186 && !isRunningLayoutTest()) {
187 HTMLMediaElement* mediaElement = toHTMLMediaElement(element); 187 HTMLMediaElement* mediaElement = toHTMLMediaElement(element);
188 if (mediaElement->player()) 188 if (mediaElement->player())
189 mediaElement->player()->hideFullscreenOverlay(); 189 mediaElement->player()->hideFullscreenOverlay();
190 return; 190 return;
191 } 191 }
192 if (WebViewClient* client = m_webViewImpl->client()) 192 if (WebViewClient* client = m_webViewImpl->client())
193 client->exitFullScreen(); 193 client->exitFullScreen();
194 } 194 }
195 195
196 } 196 }
197 197
OLDNEW
« no previous file with comments | « Source/core/html/shadow/MediaControlElementTypes.cpp ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698