@yuebai008/cli
Version:
Command line interface for rapid qg-minigame development
1 lines • 1.09 kB
JavaScript
import*as UI from"../../ui/legacy/legacy.js";export class ExtensionView extends UI.Widget.Widget{server;id;iframe;frameIndex;constructor(e,i,t,s){super(),this.setHideOnDetach(),this.element.className="vbox flex-auto",this.element.tabIndex=-1,this.server=e,this.id=i,this.iframe=document.createElement("iframe"),this.iframe.addEventListener("load",this.onLoad.bind(this),!1),this.iframe.src=t,this.iframe.className=s,this.setDefaultFocusedElement(this.element),this.element.appendChild(this.iframe)}wasShown(){super.wasShown(),"number"==typeof this.frameIndex&&this.server.notifyViewShown(this.id,this.frameIndex)}willHide(){"number"==typeof this.frameIndex&&this.server.notifyViewHidden(this.id)}onLoad(){const e=window.frames;this.frameIndex=Array.prototype.indexOf.call(e,this.iframe.contentWindow),this.isShowing()&&this.server.notifyViewShown(this.id,this.frameIndex)}}export class ExtensionNotifierView extends UI.Widget.VBox{server;id;constructor(e,i){super(),this.server=e,this.id=i}wasShown(){this.server.notifyViewShown(this.id)}willHide(){this.server.notifyViewHidden(this.id)}}