summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLysandros Nikolaou <lisandrosnik@gmail.com>2024-06-04 17:26:44 (GMT)
committerGitHub <noreply@github.com>2024-06-04 17:26:44 (GMT)
commitbf8e5e53d0c359a1f9c285d855e7a5e9b6d91375 (patch)
tree22eae3732e7909ea0bbdb600363966972fd9df37
parente0799352823289fafb8131341abd751923ee9c08 (diff)
downloadcpython-bf8e5e53d0c359a1f9c285d855e7a5e9b6d91375.zip
cpython-bf8e5e53d0c359a1f9c285d855e7a5e9b6d91375.tar.gz
cpython-bf8e5e53d0c359a1f9c285d855e7a5e9b6d91375.tar.bz2
gh-120041: Refactor check for visible completion menu in completing_reader (#120055)
-rw-r--r--Lib/_pyrepl/commands.py7
-rw-r--r--Lib/_pyrepl/completing_reader.py3
2 files changed, 4 insertions, 6 deletions
diff --git a/Lib/_pyrepl/commands.py b/Lib/_pyrepl/commands.py
index b967f52..2ef5dad 100644
--- a/Lib/_pyrepl/commands.py
+++ b/Lib/_pyrepl/commands.py
@@ -365,12 +365,7 @@ class self_insert(EditCommand):
r = self.reader
text = self.event * r.get_arg()
r.insert(text)
- if (
- len(text) == 1 and
- r.pos == len(r.buffer) and
- not r.cmpltn_menu_visible and # type: ignore[attr-defined]
- not r.cmpltn_message_visible # type: ignore[attr-defined]
- ):
+ if len(text) == 1 and r.pos == len(r.buffer):
r.calc_screen = r.append_to_screen
diff --git a/Lib/_pyrepl/completing_reader.py b/Lib/_pyrepl/completing_reader.py
index 215ad87..8df35cc 100644
--- a/Lib/_pyrepl/completing_reader.py
+++ b/Lib/_pyrepl/completing_reader.py
@@ -210,6 +210,9 @@ class self_insert(commands.self_insert):
commands.self_insert.do(self)
+ if r.cmpltn_menu_visible or r.cmpltn_message_visible:
+ r.calc_screen = r.calc_complete_screen
+
if r.cmpltn_menu_visible:
stem = r.get_stem()
if len(stem) < 1: