diff --git a/js/ui/ibusCandidatePopup.js b/js/ui/ibusCandidatePopup.js index c57e289cb..340f9a8e1 100644 --- a/js/ui/ibusCandidatePopup.js +++ b/js/ui/ibusCandidatePopup.js @@ -270,6 +270,7 @@ class IbusCandidatePopup extends BoxPointer.BoxPointer { indexes.push(indexLabel.get_text()); Main.keyboard.resetSuggestions(); + Main.keyboard.setSuggestionsVisible(visible); let candidates = []; for (let i = startIndex; i < endIndex; ++i) { @@ -289,10 +290,12 @@ class IbusCandidatePopup extends BoxPointer.BoxPointer { this._candidateArea.updateButtons(lookupTable.is_round(), page, nPages); }); panelService.connect('show-lookup-table', () => { + Main.keyboard.setSuggestionsVisible(true); this._candidateArea.show(); this._updateVisibility(); }); panelService.connect('hide-lookup-table', () => { + Main.keyboard.setSuggestionsVisible(false); this._candidateArea.hide(); this._updateVisibility(); }); diff --git a/js/ui/keyboard.js b/js/ui/keyboard.js index c819265eb..ac2a800b4 100644 --- a/js/ui/keyboard.js +++ b/js/ui/keyboard.js @@ -227,6 +227,11 @@ class Suggestions extends St.BoxLayout { clear() { this.remove_all_children(); } + + setVisible(visible) { + for (const child of this) + child.visible = visible; + } }); var LanguageSelectionPopup = class extends PopupMenu.PopupMenu { @@ -1940,6 +1945,10 @@ var Keyboard = GObject.registerClass({ this._suggestions.clear(); } + setSuggestionsVisible(visible) { + this._suggestions?.setVisible(visible); + } + addSuggestion(text, callback) { if (!this._suggestions) return;