diff --git a/src/app/panels/terminal.js b/src/app/panels/terminal.js index 0bb6d60ced..57501179f9 100644 --- a/src/app/panels/terminal.js +++ b/src/app/panels/terminal.js @@ -168,8 +168,8 @@ class Terminal extends BaseApi { ` self._view.term = yo`
-
+ let autoComplete = yo` +
${self.data._options.map((item, index) => { return yo` -
+
{ self.handleSelect(event.srcElement.innerText) }}> ${getKeyOf(item)}
@@ -62,22 +57,19 @@ class AutoCompletePopup {
` - function setUpPopUp () { - handleOpenPopup() - handleListSize() + function setUpPopUp (autoComplete) { + handleOpenPopup(autoComplete) + handleListSize(autoComplete) } - function handleOpenPopup () { - if (self.data._options.length > 0) { - self._view.autoComplete.style.display = 'block' - self._components.modal = modal('', self._view.autoComplete, {label: null}, {label: null}, null, { class: css.modalContent, hideClose: true }) - } + function handleOpenPopup (autoComplete) { + autoComplete.style.display = self.data._options.length > 0 ? 'block' : 'none' } - function handleListSize () { + function handleListSize (autoComplete) { if (self.data._options.length >= self._startingElement) { for (let i = self._startingElement; i < (self._elementsToShow + self._startingElement); i++) { - let el = self._view.autoComplete.querySelectorAll('.item')[i] + let el = autoComplete.querySelectorAll('.item')[i] if (el) { el.classList.remove(css.listHandlerHide) el.classList.add(css.listHandlerShow) @@ -85,10 +77,9 @@ class AutoCompletePopup { } } } - - setUpPopUp() - - return self._view + setUpPopUp(autoComplete) + if (!this._view) this._view = autoComplete + return autoComplete } handleSelect (text) { @@ -189,8 +180,7 @@ class AutoCompletePopup { removeAutoComplete () { if (!this.isOpen) return - this._view.autoComplete.style.display = 'none' - if (this._components.modal) this._components.modal.cancelListener() + this._view.style.display = 'none' this.isOpen = false this.data._options = [] this._startingElement = 0 diff --git a/src/app/ui/styles/auto-complete-popup-styles.js b/src/app/ui/styles/auto-complete-popup-styles.js index 77691db867..1d99d937a1 100644 --- a/src/app/ui/styles/auto-complete-popup-styles.js +++ b/src/app/ui/styles/auto-complete-popup-styles.js @@ -2,6 +2,7 @@ var csjs = require('csjs-inject') var css = csjs` .popup { + position : absolute; text-align : left; display : none; width : 100%; @@ -9,6 +10,8 @@ var css = csjs` font-size : 10px; overflow : auto; padding-bottom : 13px; + z-index : 2; + bottom : 1.7em; } .autoCompleteItem {