| Index: Source/core/html/shadow/MediaControls.h
|
| diff --git a/Source/core/html/shadow/MediaControls.h b/Source/core/html/shadow/MediaControls.h
|
| index 0c8f7ad3b959a3755d7dca5e027373463508189b..2eb44854f778f9fd88b75f2830c86872dc653018 100644
|
| --- a/Source/core/html/shadow/MediaControls.h
|
| +++ b/Source/core/html/shadow/MediaControls.h
|
| @@ -67,6 +67,11 @@ public:
|
| void stoppedCasting();
|
| void refreshCastButtonVisibility();
|
| void showOverlayCastButton();
|
| + // Update cast button visibility, but don't try to update our panel
|
| + // button visibility for space.
|
| + void refreshCastButtonVisibilityWithoutUpdate();
|
| +
|
| + void setAllowHiddenVolumeControls(bool);
|
|
|
| void mediaElementFocused();
|
|
|
| @@ -74,9 +79,14 @@ public:
|
| // used for overlap checking during text track layout. May be null.
|
| LayoutObject* layoutObjectForTextTrackLayout();
|
|
|
| + // Notify us that our controls enclosure has changed width.
|
| + void notifyPanelWidthChanged(const LayoutUnit& newWidth);
|
| +
|
| DECLARE_VIRTUAL_TRACE();
|
|
|
| private:
|
| + class BatchedControlUpdate;
|
| +
|
| explicit MediaControls(HTMLMediaElement&);
|
|
|
| void initializeControls();
|
| @@ -103,6 +113,12 @@ private:
|
| // element in the page, it will be hidden.
|
| void tryShowOverlayCastButton();
|
|
|
| + void panelWidthChangedTimerFired(Timer<MediaControls>*);
|
| +
|
| + // Hide elements that don't fit, and show those things that we want which
|
| + // do fit. This requires that m_panelWidth is current.
|
| + void computeWhichControlsFit();
|
| +
|
| // Node
|
| bool isMediaControls() const override { return true; }
|
| bool willRespondToMouseMoveEvents() override { return true; }
|
| @@ -131,6 +147,12 @@ private:
|
| unsigned m_hideTimerBehaviorFlags;
|
| bool m_isMouseOverControls : 1;
|
| bool m_isPausedForScrubbing : 1;
|
| +
|
| + Timer<MediaControls> m_panelWidthChangedTimer;
|
| + int m_panelWidth;
|
| +
|
| + bool m_allowHiddenVolumeControls : 1;
|
| + bool m_keepMuteButton : 1;
|
| };
|
|
|
| DEFINE_ELEMENT_TYPE_CASTS(MediaControls, isMediaControls());
|
|
|