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

Side by Side Diff: third_party/WebKit/Source/core/html/shadow/MediaControls.cpp

Issue 1686483002: Oilpan: Remove most WillBe types from the code base (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 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
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2011, 2012 Apple Inc. All rights reserved. 2 * Copyright (C) 2011, 2012 Apple Inc. All rights reserved.
3 * Copyright (C) 2011, 2012 Google Inc. All rights reserved. 3 * Copyright (C) 2011, 2012 Google Inc. All rights reserved.
4 * 4 *
5 * Redistribution and use in source and binary forms, with or without 5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions 6 * modification, are permitted provided that the following conditions
7 * are met: 7 * are met:
8 * 1. Redistributions of source code must retain the above copyright 8 * 1. 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 * 2. Redistributions in binary form must reproduce the above copyright 10 * 2. Redistributions in binary form must reproduce the above copyright
(...skipping 72 matching lines...) Expand 10 before | Expand all | Expand 10 after
83 } 83 }
84 ~BatchedControlUpdate() 84 ~BatchedControlUpdate()
85 { 85 {
86 ASSERT(isMainThread()); 86 ASSERT(isMainThread());
87 ASSERT(s_batchDepth > 0); 87 ASSERT(s_batchDepth > 0);
88 if (!(--s_batchDepth)) 88 if (!(--s_batchDepth))
89 m_controls->computeWhichControlsFit(); 89 m_controls->computeWhichControlsFit();
90 } 90 }
91 91
92 private: 92 private:
93 RawPtrWillBeMember<MediaControls> m_controls; 93 Member<MediaControls> m_controls;
94 static int s_batchDepth; 94 static int s_batchDepth;
95 }; 95 };
96 96
97 // Count of number open batches for controls visibility. 97 // Count of number open batches for controls visibility.
98 int MediaControls::BatchedControlUpdate::s_batchDepth = 0; 98 int MediaControls::BatchedControlUpdate::s_batchDepth = 0;
99 99
100 MediaControls::MediaControls(HTMLMediaElement& mediaElement) 100 MediaControls::MediaControls(HTMLMediaElement& mediaElement)
101 : HTMLDivElement(mediaElement.document()) 101 : HTMLDivElement(mediaElement.document())
102 , m_mediaElement(&mediaElement) 102 , m_mediaElement(&mediaElement)
103 , m_overlayEnclosure(nullptr) 103 , m_overlayEnclosure(nullptr)
(...skipping 13 matching lines...) Expand all
117 , m_hideMediaControlsTimer(this, &MediaControls::hideMediaControlsTimerFired ) 117 , m_hideMediaControlsTimer(this, &MediaControls::hideMediaControlsTimerFired )
118 , m_hideTimerBehaviorFlags(IgnoreNone) 118 , m_hideTimerBehaviorFlags(IgnoreNone)
119 , m_isMouseOverControls(false) 119 , m_isMouseOverControls(false)
120 , m_isPausedForScrubbing(false) 120 , m_isPausedForScrubbing(false)
121 , m_panelWidthChangedTimer(this, &MediaControls::panelWidthChangedTimerFired ) 121 , m_panelWidthChangedTimer(this, &MediaControls::panelWidthChangedTimerFired )
122 , m_panelWidth(0) 122 , m_panelWidth(0)
123 , m_allowHiddenVolumeControls(RuntimeEnabledFeatures::newMediaPlaybackUiEnab led()) 123 , m_allowHiddenVolumeControls(RuntimeEnabledFeatures::newMediaPlaybackUiEnab led())
124 { 124 {
125 } 125 }
126 126
127 PassRefPtrWillBeRawPtr<MediaControls> MediaControls::create(HTMLMediaElement& me diaElement) 127 RawPtr<MediaControls> MediaControls::create(HTMLMediaElement& mediaElement)
128 { 128 {
129 RefPtrWillBeRawPtr<MediaControls> controls = adoptRefWillBeNoop(new MediaCon trols(mediaElement)); 129 RawPtr<MediaControls> controls = (new MediaControls(mediaElement));
130 controls->setShadowPseudoId(AtomicString("-webkit-media-controls", AtomicStr ing::ConstructFromLiteral)); 130 controls->setShadowPseudoId(AtomicString("-webkit-media-controls", AtomicStr ing::ConstructFromLiteral));
131 controls->initializeControls(); 131 controls->initializeControls();
132 return controls.release(); 132 return controls.release();
133 } 133 }
134 134
135 // The media controls DOM structure looks like: 135 // The media controls DOM structure looks like:
136 // 136 //
137 // MediaControls (-webkit-media-controls) 137 // MediaControls (-webkit-media-controls)
138 // +-MediaControlOverlayEnclosureElement (-webkit-media-controls-o verlay-enclosure) 138 // +-MediaControlOverlayEnclosureElement (-webkit-media-controls-o verlay-enclosure)
139 // | +-MediaControlOverlayPlayButtonElement (-webkit-media-controls-o verlay-play-button) 139 // | +-MediaControlOverlayPlayButtonElement (-webkit-media-controls-o verlay-play-button)
140 // | | {if mediaControlsOverlayPlayButtonEnabled} 140 // | | {if mediaControlsOverlayPlayButtonEnabled}
141 // | \-MediaControlCastButtonElement (-internal-media-controls -overlay-cast-button) 141 // | \-MediaControlCastButtonElement (-internal-media-controls -overlay-cast-button)
142 // \-MediaControlPanelEnclosureElement (-webkit-media-controls-e nclosure) 142 // \-MediaControlPanelEnclosureElement (-webkit-media-controls-e nclosure)
143 // \-MediaControlPanelElement (-webkit-media-controls-p anel) 143 // \-MediaControlPanelElement (-webkit-media-controls-p anel)
144 // +-MediaControlPlayButtonElement (-webkit-media-controls-p lay-button) 144 // +-MediaControlPlayButtonElement (-webkit-media-controls-p lay-button)
145 // | {if !RTE::newMediaPlaybackUi()} 145 // | {if !RTE::newMediaPlaybackUi()}
146 // +-MediaControlTimelineElement (-webkit-media-controls-t imeline) 146 // +-MediaControlTimelineElement (-webkit-media-controls-t imeline)
147 // +-MediaControlCurrentTimeDisplayElement (-webkit-media-controls-c urrent-time-display) 147 // +-MediaControlCurrentTimeDisplayElement (-webkit-media-controls-c urrent-time-display)
148 // +-MediaControlTimeRemainingDisplayElement (-webkit-media-controls-t ime-remaining-display) 148 // +-MediaControlTimeRemainingDisplayElement (-webkit-media-controls-t ime-remaining-display)
149 // | {if RTE::newMediaPlaybackUi()} 149 // | {if RTE::newMediaPlaybackUi()}
150 // +-MediaControlTimelineElement (-webkit-media-controls-t imeline) 150 // +-MediaControlTimelineElement (-webkit-media-controls-t imeline)
151 // +-MediaControlMuteButtonElement (-webkit-media-controls-m ute-button) 151 // +-MediaControlMuteButtonElement (-webkit-media-controls-m ute-button)
152 // +-MediaControlVolumeSliderElement (-webkit-media-controls-v olume-slider) 152 // +-MediaControlVolumeSliderElement (-webkit-media-controls-v olume-slider)
153 // +-MediaControlToggleClosedCaptionsButtonElement (-webkit-media-controls-t oggle-closed-captions-button) 153 // +-MediaControlToggleClosedCaptionsButtonElement (-webkit-media-controls-t oggle-closed-captions-button)
154 // +-MediaControlCastButtonElement (-internal-media-controls -cast-button) 154 // +-MediaControlCastButtonElement (-internal-media-controls -cast-button)
155 // \-MediaControlFullscreenButtonElement (-webkit-media-controls-f ullscreen-button) 155 // \-MediaControlFullscreenButtonElement (-webkit-media-controls-f ullscreen-button)
156 void MediaControls::initializeControls() 156 void MediaControls::initializeControls()
157 { 157 {
158 const bool useNewUi = RuntimeEnabledFeatures::newMediaPlaybackUiEnabled(); 158 const bool useNewUi = RuntimeEnabledFeatures::newMediaPlaybackUiEnabled();
159 RefPtrWillBeRawPtr<MediaControlOverlayEnclosureElement> overlayEnclosure = M ediaControlOverlayEnclosureElement::create(*this); 159 RawPtr<MediaControlOverlayEnclosureElement> overlayEnclosure = MediaControlO verlayEnclosureElement::create(*this);
160 160
161 if (document().settings() && document().settings()->mediaControlsOverlayPlay ButtonEnabled()) { 161 if (document().settings() && document().settings()->mediaControlsOverlayPlay ButtonEnabled()) {
162 RefPtrWillBeRawPtr<MediaControlOverlayPlayButtonElement> overlayPlayButt on = MediaControlOverlayPlayButtonElement::create(*this); 162 RawPtr<MediaControlOverlayPlayButtonElement> overlayPlayButton = MediaCo ntrolOverlayPlayButtonElement::create(*this);
163 m_overlayPlayButton = overlayPlayButton.get(); 163 m_overlayPlayButton = overlayPlayButton.get();
164 overlayEnclosure->appendChild(overlayPlayButton.release()); 164 overlayEnclosure->appendChild(overlayPlayButton.release());
165 } 165 }
166 166
167 RefPtrWillBeRawPtr<MediaControlCastButtonElement> overlayCastButton = MediaC ontrolCastButtonElement::create(*this, true); 167 RawPtr<MediaControlCastButtonElement> overlayCastButton = MediaControlCastBu ttonElement::create(*this, true);
168 m_overlayCastButton = overlayCastButton.get(); 168 m_overlayCastButton = overlayCastButton.get();
169 overlayEnclosure->appendChild(overlayCastButton.release()); 169 overlayEnclosure->appendChild(overlayCastButton.release());
170 170
171 m_overlayEnclosure = overlayEnclosure.get(); 171 m_overlayEnclosure = overlayEnclosure.get();
172 appendChild(overlayEnclosure.release()); 172 appendChild(overlayEnclosure.release());
173 173
174 // Create an enclosing element for the panel so we can visually offset the c ontrols correctly. 174 // Create an enclosing element for the panel so we can visually offset the c ontrols correctly.
175 RefPtrWillBeRawPtr<MediaControlPanelEnclosureElement> enclosure = MediaContr olPanelEnclosureElement::create(*this); 175 RawPtr<MediaControlPanelEnclosureElement> enclosure = MediaControlPanelEnclo sureElement::create(*this);
176 176
177 RefPtrWillBeRawPtr<MediaControlPanelElement> panel = MediaControlPanelElemen t::create(*this); 177 RawPtr<MediaControlPanelElement> panel = MediaControlPanelElement::create(*t his);
178 178
179 RefPtrWillBeRawPtr<MediaControlPlayButtonElement> playButton = MediaControlP layButtonElement::create(*this); 179 RawPtr<MediaControlPlayButtonElement> playButton = MediaControlPlayButtonEle ment::create(*this);
180 m_playButton = playButton.get(); 180 m_playButton = playButton.get();
181 panel->appendChild(playButton.release()); 181 panel->appendChild(playButton.release());
182 182
183 RefPtrWillBeRawPtr<MediaControlTimelineElement> timeline = MediaControlTimel ineElement::create(*this); 183 RawPtr<MediaControlTimelineElement> timeline = MediaControlTimelineElement:: create(*this);
184 m_timeline = timeline.get(); 184 m_timeline = timeline.get();
185 // In old UX, timeline is before the time / duration text. 185 // In old UX, timeline is before the time / duration text.
186 if (!useNewUi) 186 if (!useNewUi)
187 panel->appendChild(timeline.release()); 187 panel->appendChild(timeline.release());
188 // else we will attach it later. 188 // else we will attach it later.
189 189
190 RefPtrWillBeRawPtr<MediaControlCurrentTimeDisplayElement> currentTimeDisplay = MediaControlCurrentTimeDisplayElement::create(*this); 190 RawPtr<MediaControlCurrentTimeDisplayElement> currentTimeDisplay = MediaCont rolCurrentTimeDisplayElement::create(*this);
191 m_currentTimeDisplay = currentTimeDisplay.get(); 191 m_currentTimeDisplay = currentTimeDisplay.get();
192 m_currentTimeDisplay->setIsWanted(useNewUi); 192 m_currentTimeDisplay->setIsWanted(useNewUi);
193 panel->appendChild(currentTimeDisplay.release()); 193 panel->appendChild(currentTimeDisplay.release());
194 194
195 RefPtrWillBeRawPtr<MediaControlTimeRemainingDisplayElement> durationDisplay = MediaControlTimeRemainingDisplayElement::create(*this); 195 RawPtr<MediaControlTimeRemainingDisplayElement> durationDisplay = MediaContr olTimeRemainingDisplayElement::create(*this);
196 m_durationDisplay = durationDisplay.get(); 196 m_durationDisplay = durationDisplay.get();
197 panel->appendChild(durationDisplay.release()); 197 panel->appendChild(durationDisplay.release());
198 198
199 // Timeline is after the time / duration text if newMediaPlaybackUiEnabled. 199 // Timeline is after the time / duration text if newMediaPlaybackUiEnabled.
200 if (useNewUi) 200 if (useNewUi)
201 panel->appendChild(timeline.release()); 201 panel->appendChild(timeline.release());
202 202
203 RefPtrWillBeRawPtr<MediaControlMuteButtonElement> muteButton = MediaControlM uteButtonElement::create(*this); 203 RawPtr<MediaControlMuteButtonElement> muteButton = MediaControlMuteButtonEle ment::create(*this);
204 m_muteButton = muteButton.get(); 204 m_muteButton = muteButton.get();
205 panel->appendChild(muteButton.release()); 205 panel->appendChild(muteButton.release());
206 206
207 RefPtrWillBeRawPtr<MediaControlVolumeSliderElement> slider = MediaControlVol umeSliderElement::create(*this); 207 RawPtr<MediaControlVolumeSliderElement> slider = MediaControlVolumeSliderEle ment::create(*this);
208 m_volumeSlider = slider.get(); 208 m_volumeSlider = slider.get();
209 panel->appendChild(slider.release()); 209 panel->appendChild(slider.release());
210 if (m_allowHiddenVolumeControls && preferHiddenVolumeControls(document())) 210 if (m_allowHiddenVolumeControls && preferHiddenVolumeControls(document()))
211 m_volumeSlider->setIsWanted(false); 211 m_volumeSlider->setIsWanted(false);
212 212
213 RefPtrWillBeRawPtr<MediaControlToggleClosedCaptionsButtonElement> toggleClos edCaptionsButton = MediaControlToggleClosedCaptionsButtonElement::create(*this); 213 RawPtr<MediaControlToggleClosedCaptionsButtonElement> toggleClosedCaptionsBu tton = MediaControlToggleClosedCaptionsButtonElement::create(*this);
214 m_toggleClosedCaptionsButton = toggleClosedCaptionsButton.get(); 214 m_toggleClosedCaptionsButton = toggleClosedCaptionsButton.get();
215 panel->appendChild(toggleClosedCaptionsButton.release()); 215 panel->appendChild(toggleClosedCaptionsButton.release());
216 216
217 RefPtrWillBeRawPtr<MediaControlCastButtonElement> castButton = MediaControlC astButtonElement::create(*this, false); 217 RawPtr<MediaControlCastButtonElement> castButton = MediaControlCastButtonEle ment::create(*this, false);
218 m_castButton = castButton.get(); 218 m_castButton = castButton.get();
219 panel->appendChild(castButton.release()); 219 panel->appendChild(castButton.release());
220 220
221 RefPtrWillBeRawPtr<MediaControlFullscreenButtonElement> fullscreenButton = M ediaControlFullscreenButtonElement::create(*this); 221 RawPtr<MediaControlFullscreenButtonElement> fullscreenButton = MediaControlF ullscreenButtonElement::create(*this);
222 m_fullScreenButton = fullscreenButton.get(); 222 m_fullScreenButton = fullscreenButton.get();
223 panel->appendChild(fullscreenButton.release()); 223 panel->appendChild(fullscreenButton.release());
224 224
225 m_panel = panel.get(); 225 m_panel = panel.get();
226 enclosure->appendChild(panel.release()); 226 enclosure->appendChild(panel.release());
227 227
228 m_enclosure = enclosure.get(); 228 m_enclosure = enclosure.get();
229 appendChild(enclosure.release()); 229 appendChild(enclosure.release());
230 } 230 }
231 231
(...skipping 517 matching lines...) Expand 10 before | Expand all | Expand 10 after
749 visitor->trace(m_toggleClosedCaptionsButton); 749 visitor->trace(m_toggleClosedCaptionsButton);
750 visitor->trace(m_fullScreenButton); 750 visitor->trace(m_fullScreenButton);
751 visitor->trace(m_durationDisplay); 751 visitor->trace(m_durationDisplay);
752 visitor->trace(m_enclosure); 752 visitor->trace(m_enclosure);
753 visitor->trace(m_castButton); 753 visitor->trace(m_castButton);
754 visitor->trace(m_overlayCastButton); 754 visitor->trace(m_overlayCastButton);
755 HTMLDivElement::trace(visitor); 755 HTMLDivElement::trace(visitor);
756 } 756 }
757 757
758 } // namespace blink 758 } // namespace blink
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698