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

Unified Diff: Source/core/dom/FullscreenElementStack.h

Issue 261983005: Stop firing orientationchange events at pages that are not visible (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Simplify test case Created 6 years, 7 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 side-by-side diff with in-line comments
Download patch
Index: Source/core/dom/FullscreenElementStack.h
diff --git a/Source/core/dom/FullscreenElementStack.h b/Source/core/dom/FullscreenElementStack.h
index 9fd69454726e606b04240c87a9e97add06ab51f0..964787ceecf244872a0e074e44807dae60c49aba 100644
--- a/Source/core/dom/FullscreenElementStack.h
+++ b/Source/core/dom/FullscreenElementStack.h
@@ -41,10 +41,11 @@ namespace WebCore {
class Document;
class Element;
+class ExecutionContext;
+class FullscreenObserver;
class Node;
class RenderFullScreen;
class RenderStyle;
-class ExecutionContext;
class FullscreenElementStack FINAL
: public NoBaseWillBeGarbageCollectedFinalized<FullscreenElementStack>
@@ -101,6 +102,9 @@ public:
virtual void trace(Visitor*) OVERRIDE;
+ void addObserver(FullscreenObserver*);
+ void removeObserver(FullscreenObserver*);
+
private:
static FullscreenElementStack* fromIfExistsSlow(Document&);
@@ -109,6 +113,8 @@ private:
Document* document();
void fullScreenChangeDelayTimerFired(Timer<FullscreenElementStack>*);
+ void notifyObserversDidFullyExitFullScreen();
+
bool m_areKeysEnabledInFullScreen;
RefPtrWillBeMember<Element> m_fullScreenElement;
WillBeHeapVector<RefPtrWillBeMember<Element> > m_fullScreenElementStack;
@@ -118,6 +124,8 @@ private:
WillBeHeapDeque<RefPtrWillBeMember<Node> > m_fullScreenErrorEventTargetQueue;
LayoutRect m_savedPlaceholderFrameRect;
RefPtr<RenderStyle> m_savedPlaceholderRenderStyle;
+ typedef HashSet<FullscreenObserver*> FullscreenObserverSet;
+ FullscreenObserverSet m_fullscreenObservers;
};
inline bool FullscreenElementStack::isActiveFullScreenElement(const Element* element)

Powered by Google App Engine
This is Rietveld 408576698