classification
Title: IDLE: Config dialog again deletes custom themes and keysets.
Type: behavior Stage: resolved
Components: IDLE Versions: Python 3.7, Python 3.6
process
Status: closed Resolution: fixed
Dependencies: Superseder:
Assigned To: terry.reedy Nosy List: terry.reedy
Priority: high Keywords: patch

Created on 2017-09-17 23:11 by terry.reedy, last changed 2017-09-22 18:03 by terry.reedy. This issue is now closed.

Pull Requests
URL Status Linked Edit
PR 3634 merged terry.reedy, 2017-09-17 23:22
PR 3636 merged python-dev, 2017-09-18 00:13
Messages (4)
msg302392 - (view) Author: Terry J. Reedy (terry.reedy) * (Python committer) Date: 2017-09-17 23:11
The askyesno messagebox wrappers, added in #31287, returned None, which is interpreted as 'No', instead of the user entry.  With 'Yes' not seen, nothing was saved.

The manual tests, once the problem was understood, is to save a new theme/keyset and click the delete button twice, clicking No the first time and Yes the second time, and see what happens.

Unit testing the current version of askyesno would be difficult since it calls messagebox.askyesno(), which returns an answer, and there is no obvious way to get a reference to the actual widget, in order to generate simulated key or click events.

A long term solution might be to add a new subclass to query.Query, after reviewing *it* for ease of testing.
msg302393 - (view) Author: Terry J. Reedy (terry.reedy) * (Python committer) Date: 2017-09-17 23:19
I am not adding a new item because the regression has not been released.
msg302396 - (view) Author: Terry J. Reedy (terry.reedy) * (Python committer) Date: 2017-09-18 00:13
New changeset 0efc7c67a2f8a184e93f9a491305c81ef2e24250 by Terry Jan Reedy in branch 'master':
bpo-31502: IDLE Configdialog again deletes custom themes and keysets. (#3634)
https://github.com/python/cpython/commit/0efc7c67a2f8a184e93f9a491305c81ef2e24250
msg302400 - (view) Author: Terry J. Reedy (terry.reedy) * (Python committer) Date: 2017-09-18 00:39
New changeset 6b4d8ba0971355027b8981a45a0a62ac1ef9a456 by Terry Jan Reedy (Miss Islington (bot)) in branch '3.6':
[3.6] bpo-31502: IDLE Configdialog again deletes custom themes and keysets. (GH-3634) (#3636)
https://github.com/python/cpython/commit/6b4d8ba0971355027b8981a45a0a62ac1ef9a456
History
Date User Action Args
2017-09-22 18:03:37terry.reedysetstatus: open -> closed
resolution: fixed
stage: patch review -> resolved
2017-09-18 00:39:26terry.reedysetmessages: + msg302400
2017-09-18 00:13:49python-devsetpull_requests: + pull_request3627
2017-09-18 00:13:28terry.reedysetmessages: + msg302396
2017-09-17 23:22:06terry.reedysetkeywords: + patch
stage: needs patch -> patch review
pull_requests: + pull_request3624
2017-09-17 23:19:10terry.reedysetmessages: + msg302393
2017-09-17 23:11:45terry.reedycreate