MCPcopy Index your code
hub / github.com/ampproject/amphtml / collapseElement

Method collapseElement

src/service/mutator-impl.js:117–133  ·  view source on GitHub ↗

@override

(element)

Source from the content-addressed store, hash-verified

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) {

Callers 3

test-mutator.jsFile · 0.45
collapseMethod · 0.45

Calls 7

dirtyElementMethod · 0.95
completeCollapseMethod · 0.80
isExperimentOnFunction · 0.50
getLayoutRectMethod · 0.45
setRelayoutTopMethod · 0.45
forElementMethod · 0.45
schedulePassMethod · 0.45

Tested by

no test coverage detected