OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) | 2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) |
3 * (C) 1999 Antti Koivisto (koivisto@kde.org) | 3 * (C) 1999 Antti Koivisto (koivisto@kde.org) |
4 * (C) 2001 Dirk Mueller (mueller@kde.org) | 4 * (C) 2001 Dirk Mueller (mueller@kde.org) |
5 * (C) 2006 Alexey Proskuryakov (ap@webkit.org) | 5 * (C) 2006 Alexey Proskuryakov (ap@webkit.org) |
6 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2012 Apple Inc. All r
ights reserved. | 6 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2012 Apple Inc. All r
ights reserved. |
7 * Copyright (C) 2008, 2009 Torch Mobile Inc. All rights reserved. (http://www.t
orchmobile.com/) | 7 * Copyright (C) 2008, 2009 Torch Mobile Inc. All rights reserved. (http://www.t
orchmobile.com/) |
8 * Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies) | 8 * Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies) |
9 * Copyright (C) 2013 Google Inc. All rights reserved. | 9 * Copyright (C) 2013 Google Inc. All rights reserved. |
10 * | 10 * |
(...skipping 168 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
179 return false; | 179 return false; |
180 | 180 |
181 // element's node document's fullscreen enabled flag is set. | 181 // element's node document's fullscreen enabled flag is set. |
182 if (!fullscreenIsAllowedForAllOwners(element.document())) { | 182 if (!fullscreenIsAllowedForAllOwners(element.document())) { |
183 if (requestType == PrefixedVideoRequest) | 183 if (requestType == PrefixedVideoRequest) |
184 UseCounter::count(element.document(), UseCounter::VideoFullscreenAll
owedExemption); | 184 UseCounter::count(element.document(), UseCounter::VideoFullscreenAll
owedExemption); |
185 else | 185 else |
186 return false; | 186 return false; |
187 } | 187 } |
188 | 188 |
189 // element's node document fullscreen element stack is either empty or its t
op element is an | 189 // element's node document's fullscreen element stack is either empty or its
top element is an |
190 // ancestor of element. | 190 // ancestor of element. |
191 if (Element* lastElementOnStack = fullscreenElementFrom(element.document()))
{ | 191 if (Element* topElement = fullscreenElementFrom(element.document())) { |
192 if (!element.isDescendantOf(lastElementOnStack)) { | 192 if (!element.isDescendantOf(topElement)) |
193 if (requestType == PrefixedMozillaRequest || requestType == Prefixed
MozillaAllowKeyboardInputRequest) | 193 return false; |
194 UseCounter::count(element.document(), UseCounter::LegacyFullScre
enErrorExemption); | |
195 else | |
196 return false; | |
197 } | |
198 } | 194 } |
199 | 195 |
200 // element has no ancestor element whose local name is iframe and namespace
is the HTML | 196 // element has no ancestor element whose local name is iframe and namespace
is the HTML |
201 // namespace. | 197 // namespace. |
202 if (Traversal<HTMLIFrameElement>::firstAncestor(element)) | 198 if (Traversal<HTMLIFrameElement>::firstAncestor(element)) |
203 return false; | 199 return false; |
204 | 200 |
205 return true; | 201 return true; |
206 } | 202 } |
207 | 203 |
(...skipping 398 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
606 void FullscreenElementStack::trace(Visitor* visitor) | 602 void FullscreenElementStack::trace(Visitor* visitor) |
607 { | 603 { |
608 visitor->trace(m_fullScreenElement); | 604 visitor->trace(m_fullScreenElement); |
609 visitor->trace(m_fullScreenElementStack); | 605 visitor->trace(m_fullScreenElementStack); |
610 visitor->trace(m_fullScreenRenderer); | 606 visitor->trace(m_fullScreenRenderer); |
611 visitor->trace(m_eventQueue); | 607 visitor->trace(m_eventQueue); |
612 DocumentSupplement::trace(visitor); | 608 DocumentSupplement::trace(visitor); |
613 } | 609 } |
614 | 610 |
615 } // namespace blink | 611 } // namespace blink |
OLD | NEW |