ucbuilder
Version:
For Developing Applications with multiple form/usercontrols etc.. In Single BrowserWindow...
32 lines (31 loc) • 1.12 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.FocusManager = void 0;
const ResourcesUC_1 = require("ucbuilder/ResourcesUC");
class FocusManager {
fetch() {
this.currentElement = undefined;
this.currentElement = document.activeElement;
//this.currentElement.fireEvent('blur');
}
/**
*
* @param containerElement if last focused element not insde `contaierElement` than direct focus to `containerElement`
*/
focus(containerElement) {
if (!containerElement.contain(this.currentElement)) {
if (containerElement.hasAttribute('tabindex'))
containerElement.focus();
else {
ResourcesUC_1.ResourcesUC.tabMng.moveNext(containerElement);
}
}
else {
this.currentElement.focus();
}
/*if (this.currentElement !== undefined && this.currentElement !== null && this.currentElement.isConnected) {
this.currentElement.focus();
}*/
}
}
exports.FocusManager = FocusManager;