Tk Library Source Code

View Ticket
Bounty program for improvements to Tcl and certain Tcl packages.
Tcl 2019 Conference, Houston/TX, US, Nov 4-8
Send your abstracts to [email protected]
or submit via the online form by Sep 9.
Ticket UUID: ff4630901499e0e7d01c5d63c462929643f4080e
Title: Check for window existence AFTER update idletasks in tooltip
Type: Bug Version: latest
Submitter: anonymous Created on: 2015-09-04 07:20:38
Subsystem: tklib :: tooltip Assigned To: nobody
Priority: 5 Medium Severity: Severe
Status: Open Last Modified: 2015-09-04 07:20:38
Resolution: None Closed By: nobody
    Closed on:
The procedure ::tooltip::show performs a call to update idletasks early on in its initialisation. This is to be able to properly detect the size of the window on top of which the tooltip should be shown.

HOWEVER, since update idletasks releases control to everything else, there should be line like the following one immediately after:

    if {![winfo exists $w]} { return }

I use an automated talkback reporter so that my clients can report problems and bugs. I've had a few reports that I can trace back to this "misbehaviour". This happens because ::tooltip::show itself is delayed and called from an "after xx" command.