MCPcopy
hub / github.com/ampproject/amphtml / unlayout

Method unlayout

src/service/resource.js:989–1008  ·  view source on GitHub ↗

* Calls element's unlayoutCallback callback and resets state for * relayout in case document becomes active again.

()

Source from the content-addressed store, hash-verified

987 * relayout in case document becomes active again.
988 */
989 unlayout() {
990 if (
991 this.state_ == ResourceState_Enum.NOT_BUILT ||
992 this.state_ == ResourceState_Enum.NOT_LAID_OUT ||
993 this.state_ == ResourceState_Enum.READY_FOR_LAYOUT
994 ) {
995 return;
996 }
997 if (this.abortController_) {
998 this.abortController_.abort();
999 this.abortController_ = null;
1000 }
1001 this.setInViewport(false);
1002 if (this.element.unlayoutCallback()) {
1003 this.element.togglePlaceholder(true);
1004 this.state_ = ResourceState_Enum.NOT_LAID_OUT;
1005 this.layoutCount_ = 0;
1006 this.layoutPromise_ = null;
1007 }
1008 }
1009
1010 /**
1011 * Returns the task ID for this resource.

Callers 5

test-mutator.jsFile · 0.80
test-resource.jsFile · 0.80
test-resources.jsFile · 0.80
unlayout_Method · 0.80
scheduleUnlayoutMethod · 0.80

Calls 4

setInViewportMethod · 0.95
abortMethod · 0.45
unlayoutCallbackMethod · 0.45
togglePlaceholderMethod · 0.45

Tested by

no test coverage detected