Assume that the user knows when he wants to end the line; don't insert
something he didn't select or complete. Backport r58306
This commit is contained in:
parent
60d9f8df38
commit
2fbad0e99b
|
@ -27,7 +27,7 @@ class AutoComplete:
|
||||||
|
|
||||||
menudefs = [
|
menudefs = [
|
||||||
('edit', [
|
('edit', [
|
||||||
("Show completions", "<<force-open-completions>>"),
|
("Show Completions", "<<force-open-completions>>"),
|
||||||
])
|
])
|
||||||
]
|
]
|
||||||
|
|
||||||
|
|
|
@ -274,18 +274,7 @@ class AutoCompleteWindow:
|
||||||
self._selection_changed()
|
self._selection_changed()
|
||||||
return "break"
|
return "break"
|
||||||
|
|
||||||
elif keysym == "Return" and not state:
|
elif keysym == "Return":
|
||||||
# If start is a prefix of the selection, or there was an indication
|
|
||||||
# that the user used the completion window, put the selected
|
|
||||||
# completion in the text, and close the list.
|
|
||||||
# Otherwise, close the window and let the event through.
|
|
||||||
cursel = int(self.listbox.curselection()[0])
|
|
||||||
if self.completions[cursel][:len(self.start)] == self.start or \
|
|
||||||
self.userwantswindow:
|
|
||||||
self._change_start(self.completions[cursel])
|
|
||||||
self.hide_window()
|
|
||||||
return "break"
|
|
||||||
else:
|
|
||||||
self.hide_window()
|
self.hide_window()
|
||||||
return
|
return
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue