@override
(element)
| 115 | |
| 116 | /** @override */ |
| 117 | collapseElement(element) { |
| 118 | const box = this.viewport_.getLayoutRect(element); |
| 119 | if (box.width != 0 && box.height != 0) { |
| 120 | if (isExperimentOn(this.win, 'dirty-collapse-element')) { |
| 121 | this.dirtyElement(element); |
| 122 | } else { |
| 123 | this.resources_.setRelayoutTop(box.top); |
| 124 | } |
| 125 | } |
| 126 | |
| 127 | const resource = Resource.forElement(element); |
| 128 | resource.completeCollapse(); |
| 129 | |
| 130 | // Unlike completeExpand(), there's no requestMeasure() call here that |
| 131 | // requires another pass (with IntersectionObserver). |
| 132 | this.resources_.schedulePass(FOUR_FRAME_DELAY_); |
| 133 | } |
| 134 | |
| 135 | /** @override */ |
| 136 | measureElement(measurer) { |
no test coverage detected