classification
Title: IDLE: simplify, optimize, and clean up code context
Type: behavior Stage: resolved
Components: IDLE Versions: Python 3.9, Python 3.8, Python 3.7
process
Status: closed Resolution: fixed
Dependencies: Superseder:
Assigned To: terry.reedy Nosy List: cheryl.sabella, miss-islington, taleinat, terry.reedy
Priority: normal Keywords: patch

Created on 2019-07-09 17:44 by terry.reedy, last changed 2019-07-17 08:59 by taleinat. This issue is now closed.

Pull Requests
URL Status Linked Edit
PR 14675 merged taleinat, 2019-07-09 17:45
PR 14807 merged miss-islington, 2019-07-17 08:16
PR 14808 merged miss-islington, 2019-07-17 08:16
Messages (5)
msg347568 - (view) Author: Terry J. Reedy (terry.reedy) * (Python committer) Date: 2019-07-09 17:44
Issue for Tal's PR 14675, dependency of #33610.

1. Only create CodeContext instances for "real" editors windows, but not e.g. shell or output windows.

- Previously, were created but never activated because menu item deactivated.  This is even better.

2. Remove configuration update Tk event fired every second, by having the editor window ask its code context widget to update when necessary, i.e. upon font or highlighting updates.

3. When code context isn't being shown, avoid having a Tk event fired every 100ms to check whether the code context needs to be updated.

4. Use the editor window's getlineno() method where applicable.

5. Fix a bare except:.
msg348000 - (view) Author: Terry J. Reedy (terry.reedy) * (Python committer) Date: 2019-07-16 04:58
PR 14030 for #17535 (line numbers) also has code for 1. I want to merge this first, and fix-up the other.

Changing context font at the same time as the text font, instead of up to 1 second later, eliminates a visual glitch and is a user-visible improvement.  Ditto for highlight changes, although the situation is more complicated due to text recoloring (a separate issue).
msg348049 - (view) Author: Tal Einat (taleinat) * (Python committer) Date: 2019-07-17 08:15
New changeset 7036e1de3a87d36c7ef41b8a2b44ed6fc4d34be2 by Tal Einat in branch 'master':
bpo-37530: simplify, optimize and clean up IDLE code context (GH-14675)
https://github.com/python/cpython/commit/7036e1de3a87d36c7ef41b8a2b44ed6fc4d34be2
msg348051 - (view) Author: miss-islington (miss-islington) Date: 2019-07-17 08:44
New changeset bb79ab84c258566bcba89a87eb549fbc8643f882 by Miss Islington (bot) in branch '3.7':
bpo-37530: simplify, optimize and clean up IDLE code context (GH-14675)
https://github.com/python/cpython/commit/bb79ab84c258566bcba89a87eb549fbc8643f882
msg348052 - (view) Author: miss-islington (miss-islington) Date: 2019-07-17 08:44
New changeset 6cf7c45cb5691b75d9a774c904df02a4f8bfcd04 by Miss Islington (bot) in branch '3.8':
bpo-37530: simplify, optimize and clean up IDLE code context (GH-14675)
https://github.com/python/cpython/commit/6cf7c45cb5691b75d9a774c904df02a4f8bfcd04
History
Date User Action Args
2019-07-17 08:59:43taleinatsetstatus: open -> closed
resolution: fixed
stage: patch review -> resolved
2019-07-17 08:44:58miss-islingtonsetmessages: + msg348052
2019-07-17 08:44:29miss-islingtonsetnosy: + miss-islington
messages: + msg348051
2019-07-17 08:16:12miss-islingtonsetpull_requests: + pull_request14602
2019-07-17 08:16:05miss-islingtonsetpull_requests: + pull_request14601
2019-07-17 08:15:59taleinatsetmessages: + msg348049
2019-07-16 04:58:57terry.reedysetmessages: + msg348000
2019-07-09 18:03:11terry.reedylinkissue33610 dependencies
2019-07-09 17:45:38taleinatsetkeywords: + patch
pull_requests: + pull_request14482
2019-07-09 17:44:47terry.reedycreate