OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2012 Victor Carbune (victor@rosedu.org) | 2 * Copyright (C) 2012 Victor Carbune (victor@rosedu.org) |
3 * | 3 * |
4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
5 * modification, are permitted provided that the following conditions | 5 * modification, are permitted provided that the following conditions |
6 * are met: | 6 * are met: |
7 * 1. Redistributions of source code must retain the above copyright | 7 * 1. Redistributions of source code must retain the above copyright |
8 * notice, this list of conditions and the following disclaimer. | 8 * notice, this list of conditions and the following disclaimer. |
9 * 2. Redistributions in binary form must reproduce the above copyright | 9 * 2. Redistributions in binary form must reproduce the above copyright |
10 * notice, this list of conditions and the following disclaimer in the | 10 * notice, this list of conditions and the following disclaimer in the |
(...skipping 301 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
312 { | 312 { |
313 LayoutBlockFlow::layout(); | 313 LayoutBlockFlow::layout(); |
314 | 314 |
315 ASSERT(firstChild()); | 315 ASSERT(firstChild()); |
316 | 316 |
317 LayoutState state(*this, locationOffset()); | 317 LayoutState state(*this, locationOffset()); |
318 | 318 |
319 // Determine the area covered by the media controls, if any. If the controls | 319 // Determine the area covered by the media controls, if any. If the controls |
320 // are present, they are the next sibling of the text track container, which | 320 // are present, they are the next sibling of the text track container, which |
321 // is our parent. (LayoutMedia ensures that the media controls are laid out | 321 // is our parent. (LayoutMedia ensures that the media controls are laid out |
322 // before text tracks, so that the layout is up-to-date here.) | 322 // before text tracks, so that the layout is up to date here.) |
323 ASSERT(parent()->node()->isTextTrackContainer()); | 323 ASSERT(parent()->node()->isTextTrackContainer()); |
324 IntRect controlsRect; | 324 IntRect controlsRect; |
325 if (LayoutObject* parentSibling = parent()->nextSibling()) { | 325 if (LayoutObject* parentSibling = parent()->nextSibling()) { |
326 // Only a part of the media controls is used for overlap avoidance. | 326 // Only a part of the media controls is used for overlap avoidance. |
327 MediaControls* controls = toMediaControls(parentSibling->node()); | 327 MediaControls* controls = toMediaControls(parentSibling->node()); |
328 if (LayoutObject* controlsLayout = controls->layoutObjectForTextTrackLay
out()) | 328 if (LayoutObject* controlsLayout = controls->layoutObjectForTextTrackLay
out()) |
329 controlsRect = controlsLayout->absoluteBoundingBoxRect(); | 329 controlsRect = controlsLayout->absoluteBoundingBoxRect(); |
330 } | 330 } |
331 | 331 |
332 // http://dev.w3.org/html5/webvtt/#dfn-apply-webvtt-cue-settings - step 13. | 332 // http://dev.w3.org/html5/webvtt/#dfn-apply-webvtt-cue-settings - step 13. |
333 if (!std::isnan(m_snapToLinesPosition)) | 333 if (!std::isnan(m_snapToLinesPosition)) |
334 SnapToLinesLayouter(*this, controlsRect).layout(); | 334 SnapToLinesLayouter(*this, controlsRect).layout(); |
335 else | 335 else |
336 repositionCueSnapToLinesNotSet(); | 336 repositionCueSnapToLinesNotSet(); |
337 } | 337 } |
338 | 338 |
339 } // namespace blink | 339 } // namespace blink |
OLD | NEW |