From: Serhiy Storchaka Date: Wed, 11 Sep 2013 19:46:27 +0000 (+0300) Subject: Issue #18988: The "Tab" key now works when a word is already autocompleted. X-Git-Tag: v3.4.0a3~86^2 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=dd4754e6a8760d70db1853855c5f6f0f8c1b1f1b;p=thirdparty%2FPython%2Fcpython.git Issue #18988: The "Tab" key now works when a word is already autocompleted. --- diff --git a/Lib/idlelib/AutoComplete.py b/Lib/idlelib/AutoComplete.py index 929d3581c970..f3660307d35d 100644 --- a/Lib/idlelib/AutoComplete.py +++ b/Lib/idlelib/AutoComplete.py @@ -160,12 +160,9 @@ class AutoComplete: if not comp_lists[0]: return self.autocompletewindow = self._make_autocomplete_window() - self.autocompletewindow.show_window(comp_lists, - "insert-%dc" % len(comp_start), - complete, - mode, - userWantsWin) - return True + return not self.autocompletewindow.show_window( + comp_lists, "insert-%dc" % len(comp_start), + complete, mode, userWantsWin) def fetch_completions(self, what, mode): """Return a pair of lists of completions for something. The first list diff --git a/Lib/idlelib/AutoCompleteWindow.py b/Lib/idlelib/AutoCompleteWindow.py index 7787e7034c15..f666ea628bb5 100644 --- a/Lib/idlelib/AutoCompleteWindow.py +++ b/Lib/idlelib/AutoCompleteWindow.py @@ -157,13 +157,14 @@ class AutoCompleteWindow: self.start = self.widget.get(self.startindex, "insert") if complete: completed = self._complete_string(self.start) + start = self.start self._change_start(completed) i = self._binary_search(completed) if self.completions[i] == completed and \ (i == len(self.completions)-1 or self.completions[i+1][:len(completed)] != completed): # There is exactly one matching completion - return + return completed == start self.userwantswindow = userWantsWin self.lasttypedstart = self.start diff --git a/Misc/NEWS b/Misc/NEWS index 51e055786e35..dcd97540e7aa 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -293,6 +293,8 @@ C API IDLE ---- +- Issue #18988: The "Tab" key now works when a word is already autocompleted. + - Issue #18489: Add tests for SearchEngine. Original patch by Phil Webster. - Issue #18429: Format / Format Paragraph, now works when comment blocks