The source code for Tk is managed by fossil. Tk developers coordinate all changes to the Tk source code at
Release Tk 9.0.0 arises from the check-in with tag core-9-0-0.
Highlighted differences between Tk 9.0 and Tk 8.6 are summarized below, with focus on changes important to programmers using the Tk library and writing Tcl scripts containing Tk commands.
Many improvements to use of platform features and conventions.
- Built-in widgets and themes are scaling-aware.
- Improved support of two-finger gestures, where available
- The
tk windowingsystem
"aqua" needs macOS 10.10 or later
New commands and options
tk sysnotify
: access to the OS notifications systemtk systray
: access to the OS tray facilitytk print
: access to the OS printing facility
Widget options
- New
ttk::progressbar
option: -text $frame ... -backgroundimage $img -tile $bool
$menu id
,$menu add|insert ... ?$id? ...
$image get ... -withalpha ...
- All indices now accept the forms end, end-int, int+|-int
Improved widget appearance
ttk::notebook
with nondefault tab positions
Images
- Partial SVG support
- Read/write access to photo image metadata
Known bugs
- Use of Tcl_Obj vs char * in Widget storage
- Tilde file syntax not available on 9.0 but used by "~/.Xdefaults"
- many PIXEL options don't keep their configured value
- Canvas widget handles pixel objects incorrectly in Tk 9.0
- Inconsistent reporting of child geometry changes to grid container
- Inconsistency in whether widgets allow negative borderwidths
- Enter key works differently in Windows and Linux
- slow widget creation if default font is not used
- The wm manage command does not work on current macOS versions
- Slow processing irregular transparencies
- text's cursor width on 0th column