From 68c16b98c8707969dfd4918d467ac5399fb680fb Mon Sep 17 00:00:00 2001 From: Max Last Date: Thu, 31 Oct 2024 10:18:44 +0000 Subject: [PATCH] nuke 14 panel bug fix --- PythonEditor/ui/features/autocompletion.py | 24 +++++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) diff --git a/PythonEditor/ui/features/autocompletion.py b/PythonEditor/ui/features/autocompletion.py index 5266fb5..ab4deec 100644 --- a/PythonEditor/ui/features/autocompletion.py +++ b/PythonEditor/ui/features/autocompletion.py @@ -12,7 +12,7 @@ from PythonEditor.ui.Qt.QtWidgets import ( QWidget, QCompleter) from PythonEditor.ui.Qt.QtCore import ( - QObject, Qt, Slot, QStringListModel) + QObject, Qt, Slot, QStringListModel, QTimer) from PythonEditor.utils.debug import debug from PythonEditor.utils.constants import NUKE_DIR @@ -680,6 +680,15 @@ def _pre_keyPressEvent(self, event): - Complete class properties/methods (parse for "self.") """ + + # Nuke 14 bugfix - override Spacebar to + # prevent the window from expanding + if event.key() == Qt.Key_Space: + self.set_override(False) + # print(' Autocomplete: pre keypress') + self.editor.keyPressEvent(event) + return True + # print(' Autocomplete: pre keypress') cp = self.completer completing = ( @@ -738,6 +747,19 @@ def _post_keyPressEvent(self, event): """ # print(' Autocomplete: post keypress.') cp = self.completer + + # Nuke 14 bugfix - override Spacebar to + # prevent the window from expanding + if event.key() == Qt.Key_Space: + event.accept() + self.set_override(True) + popup = cp.popup() + if popup: + # cp.popup().hide() + QTimer.singleShot(0, popup.hide) + # print(' Autocomplete: post keypress') + return True + #if event.text() in [':', '!', '.']: if event.text() == '.': # things to autocomplete on