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

Side by Side Diff: third_party/WebKit/LayoutTests/media/media-controls.js

Issue 2268923003: Clean up textTrackDisplayElement utility function (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: fix Created 4 years, 3 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
« no previous file with comments | « no previous file | third_party/WebKit/LayoutTests/media/track/css-cue-for-video-in-shadow.html » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 var captionsButtonElement; 1 var captionsButtonElement;
2 var captionsButtonCoordinates; 2 var captionsButtonCoordinates;
3 3
4 // As specified in mediaControls.css, this is how long it takes to fade out cont rols 4 // As specified in mediaControls.css, this is how long it takes to fade out cont rols
5 const controlsFadeOutDurationMs = 300; 5 const controlsFadeOutDurationMs = 300;
6 6
7 // The timeout for the hide-after-no-mouse-movement behavior. Defined (and 7 // The timeout for the hide-after-no-mouse-movement behavior. Defined (and
8 // should mirror) the value 'timeWithoutMouseMovementBeforeHidingMediaControls' 8 // should mirror) the value 'timeWithoutMouseMovementBeforeHidingMediaControls'
9 // in MediaControls.cpp. 9 // in MediaControls.cpp.
10 const controlsMouseMovementTimeoutMs = 3000; 10 const controlsMouseMovementTimeoutMs = 3000;
(...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after
66 var button = mediaControlsButton(element, id); 66 var button = mediaControlsButton(element, id);
67 var buttonBoundingRect = button.getBoundingClientRect(); 67 var buttonBoundingRect = button.getBoundingClientRect();
68 return new Array(buttonBoundingRect.width, buttonBoundingRect.height); 68 return new Array(buttonBoundingRect.width, buttonBoundingRect.height);
69 } 69 }
70 70
71 function textTrackContainerElement(parentElement) { 71 function textTrackContainerElement(parentElement) {
72 return mediaControlsElement(internals.shadowRoot(parentElement).firstChild, 72 return mediaControlsElement(internals.shadowRoot(parentElement).firstChild,
73 "-webkit-media-text-track-container"); 73 "-webkit-media-text-track-container");
74 } 74 }
75 75
76 function textTrackCueDisplayElement(parentElement) {
77 var containerElement = textTrackContainerElement(parentElement);
78 return mediaControlsElement(containerElement.firstChild, "-webkit-media-text -track-display");
79 }
80
81 function textTrackCueElementByIndex(parentElement, cueIndex) { 76 function textTrackCueElementByIndex(parentElement, cueIndex) {
82 var displayElement = textTrackCueDisplayElement(parentElement); 77 var displayElement = textTrackDisplayElement(parentElement);
83 if (displayElement) { 78 if (displayElement) {
84 for (i = 0; i < cueIndex; i++) 79 for (i = 0; i < cueIndex; i++)
85 displayElement = displayElement.nextSibling; 80 displayElement = displayElement.nextSibling;
86 } 81 }
87 82
88 return displayElement; 83 return displayElement;
89 } 84 }
90 85
91 function textTrackRegionElement(parentElement) 86 function textTrackRegionElement(parentElement)
92 { 87 {
93 var containerElement = textTrackContainerElement(parentElement); 88 var containerElement = textTrackContainerElement(parentElement);
94 return mediaControlsElement(containerElement.firstChild, "-webkit-media-text -track-region"); 89 return mediaControlsElement(containerElement.firstChild, "-webkit-media-text -track-region");
95 } 90 }
96 91
97 function textTrackRegionContainerElement(parentElement) 92 function textTrackRegionContainerElement(parentElement)
98 { 93 {
99 var containerElement = textTrackContainerElement(parentElement); 94 var containerElement = textTrackContainerElement(parentElement);
100 return mediaControlsElement(containerElement.firstChild, "-webkit-media-text -track-region-container"); 95 return mediaControlsElement(containerElement.firstChild, "-webkit-media-text -track-region-container");
101 } 96 }
102 97
103 // TODO(srirama.m): Phase out the uses of this function and 98 function textTrackDisplayElement(parentElement)
104 // replace with more specific functions at each call site.
105 function textTrackDisplayElement(parentElement, id, cueNumber)
106 { 99 {
107 var containerElement = textTrackContainerElement(parentElement); 100 var containerElement = textTrackContainerElement(parentElement);
108 101 return mediaControlsElement(containerElement.firstChild, "-webkit-media-text -track-display");
109 if (!containerElement)
110 throw "Failed to find text track container element";
111
112 if (!id)
113 return containerElement;
114
115 var controlID = id;
116 if (controlID != 'cue')
117 controlID = "-webkit-media-text-track-" + id;
118
119 var displayElement = mediaControlsElement(containerElement.firstChild, contr olID);
120 if (!displayElement)
121 throw "No text track cue with display id '" + controlID + "' is currentl y visible";
122
123 if (cueNumber) {
124 for (i = 0; i < cueNumber; i++)
125 displayElement = displayElement.nextSibling;
126
127 if (!displayElement)
128 throw "There are not " + cueNumber + " text track cues visible";
129 }
130
131 return displayElement;
132 } 102 }
133 103
134 function isClosedCaptionsButtonVisible(currentMediaElement) 104 function isClosedCaptionsButtonVisible(currentMediaElement)
135 { 105 {
136 var captionsButtonElement = mediaControlsButton(currentMediaElement, "toggle -closed-captions-button"); 106 var captionsButtonElement = mediaControlsButton(currentMediaElement, "toggle -closed-captions-button");
137 var captionsButtonCoordinates = mediaControlsButtonCoordinates(currentMediaE lement, "toggle-closed-captions-button"); 107 var captionsButtonCoordinates = mediaControlsButtonCoordinates(currentMediaE lement, "toggle-closed-captions-button");
138 108
139 if (!captionsButtonElement.disabled 109 if (!captionsButtonElement.disabled
140 && captionsButtonCoordinates[0] > 0 110 && captionsButtonCoordinates[0] > 0
141 && captionsButtonCoordinates[1] > 0) { 111 && captionsButtonCoordinates[1] > 0) {
(...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after
195 throw "The media will end before the controls have been hidden"; 165 throw "The media will end before the controls have been hidden";
196 166
197 setTimeout(func, hideTimeoutMs); 167 setTimeout(func, hideTimeoutMs);
198 } 168 }
199 169
200 function hasFullscreenButton(element) 170 function hasFullscreenButton(element)
201 { 171 {
202 var size = mediaControlsButtonDimensions(element, "fullscreen-button"); 172 var size = mediaControlsButtonDimensions(element, "fullscreen-button");
203 return size[0] > 0 && size[1] > 0; 173 return size[0] > 0 && size[1] > 0;
204 } 174 }
OLDNEW
« no previous file with comments | « no previous file | third_party/WebKit/LayoutTests/media/track/css-cue-for-video-in-shadow.html » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698