@yuebai008/cli
Version:
Command line interface for rapid qg-minigame development
1 lines • 666 B
JavaScript
import*as Platform from"../../../core/platform/platform.js";function WidgetfocusWidgetForNode(e){for(;e&&!e.__widget;)e=e.parentNodeOrShadowHost();if(!e)return;let t=e.__widget;for(;t&&t.parentWidget();){const e=t.parentWidget();if(!e)break;e.defaultFocusedChild=t,t=e}}function XWidgetfocusWidgetForNode(e){e=e&&e.parentNodeOrShadowHost();const t=customElements.get("x-widget");let o=null;for(;e;)t&&e instanceof t&&(o&&(e.defaultFocusedElement=o),o=e),e=e.parentNodeOrShadowHost()}export function focusChanged(e){const t=e.target,o=t?t.ownerDocument:null,d=o?Platform.DOMUtilities.deepActiveElement(o):null;WidgetfocusWidgetForNode(d),XWidgetfocusWidgetForNode(d)}