Tk Source Code

Timeline
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

50 most recent check-ins that include changes to files matching 'unix/*'

2026-09-22
12:23
Fix [9e89324a0a]: spinbox parsing depends on the LC_NUMERIC locale leaf check-in: 009719f2 user: jan.nijtmans tags: trunk, main
2026-09-21
09:05
Merge main check-in: 7f9f8c72 user: serhiy.storchaka tags: x11-nonlatin-shortcuts
2026-09-20
17:57
Fixes for [e7f4db8bc6] and [07c7c83853] check-in: 98c19a0c user: kevin_walzer tags: trunk, main
17:52
Fix [9e89324a0a]: spinbox parses its value with sscanf("%lf"), which depends on the LC_NUMERIC locale

With a decimal comma "0.5" was read as 0, so the up button gave 0.1 instead of 0.6 and -from/-to clamped valid values. Use Tcl_GetDouble() instead, as for the -from, -to and -increment options. Same for the value reported to AT-SPI. check-in: a13d8dba user: serhiy.storchaka tags: spinbox-locale-parse, core-spinbox-locale-parse

2026-09-19
20:33
Fix [22172f3732]: "raise" command fails on recent linux

Also send the EWMH _NET_RESTACK_WINDOW request, which KWin and Mutter honor for a window which is not active, while they ignore the plain XReconfigureWMWindow request. It restacks without activating the window. leaf check-in: 75327235 user: serhiy.storchaka tags: x11-raise-ewmh, core-x11-raise-ewmh

11:39
Fix [a53a902ac6]: overrideredirect on linux/mac prevents certain binds from working

The window manager never gives the focus to an override-redirect window, and Tk refused to set the X focus to it even with "focus -force" (an old olvwm workaround for menus), so "focus" reported the window while key events went elsewhere. "focus -force" now works for such windows on X11. check-in: 98ea86d9 user: serhiy.storchaka tags: x11-override-redirect-focus

09:20
Fix [481308]: Keypad keys report the wrong keysym with Num Lock on X11

With input methods disabled, TkpGetKeySym() ignored Num Lock and reported KP_Left for keypad 4. Select the keypad keysym with Num Lock as XLookupString() does. check-in: 27ce67ba user: serhiy.storchaka tags: x11-keypad-numlock, core-x11-keypad-numlock

09:12
Fix [1151700]: XIM input box font size hard coded

The font set for the preedit area of an over-the-spot input method is now chosen by the pixel size of the widget's line height, reported by Tk_SetCaretPos(), and cached per display. Also do not create the default font set again when the input method is reopened. leaf check-in: c125ceaa user: serhiy.storchaka tags: x11-xim-preedit-font, core-x11-xim-preedit-font

08:19
Fix [d3b9644729]: X11 <KeyRelease> broken

The X server sends a KeyRelease/KeyPress pair for each auto-repeat unless the client enables detectable auto-repeat. Now a held key generates repeated KeyPress events and a single KeyRelease, as on Windows and macOS. leaf check-in: 6d0c31fd user: serhiy.storchaka tags: x11-detectable-autorepeat, core-x11-detectable-autorepeat

2026-09-18
17:09
Fix [3131699cb4]: Mapped/Unmapped and Iconic State Problems

Some window managers (Mutter) keep a minimized window mapped and only set _NET_WM_STATE_HIDDEN. Now "wm state" reports "iconic" for such a window, and "wm deiconify" sends a _NET_ACTIVE_WINDOW request to unminimize it. leaf check-in: 144bb549 user: serhiy.storchaka tags: x11-wm-hidden-state, core-x11-wm-hidden-state

16:54
Fix [d01ec103c0]: After "wm withdraw .;wm state . iconic", "wm state ." always returns "withdrawn"

TkpWmSetState() did not clear the withdrawn flag when iconifying a window which has not been mapped yet. leaf check-in: 43c68112 user: serhiy.storchaka tags: x11-wm-state-iconic, core-x11-wm-state-iconic

16:11
Fix [35e67b8124]: tk sysnotify crashes after the interpreter which used it was deleted

libnotify registers GObject types, which cannot be unregistered, so it cannot be loaded again after unloading. Keep it loaded for the lifetime of the process. check-in: dc39bb00 user: serhiy.storchaka tags: sysnotify-no-unload, core-sysnotify-no-unload

09:29
Fix [3141377]: [winfo screenwidth/height] fail to track resolution changes on X11

Use the XRandR extension, if available, to be notified of changes of the screen size and to update the size recorded by Xlib. The size in millimeters is scaled with it, so that [tk scaling] does not change. leaf check-in: ae3b099b user: serhiy.storchaka tags: core-x11-randr-screen-size, x11-randr-screen-size

07:13
(cherry-pick): Follow-up to [3cb7c4ac72]: don't clamp the result of Tk_GetUserInactiveTime() on Windows check-in: 5d02ed55 user: jan.nijtmans tags: core-9-0-branch
2026-09-17
17:56
Fix [2236352]: NULL dereference as result of peculiarly formed font name

With a core-font (non-Xft) build, IdentifySymbolEncodings() crashed on a font whose XLFD family is a wildcard such as "????", which TkFontParseXLFD() leaves NULL. leaf check-in: 70fa3ec2 user: serhiy.storchaka tags: bug-2236352, core-bug-2236352

16:21
Fix [701d8f8953]: <Alt-key> bindings and %K do not work with a non-Latin keyboard layout on X11

TkpGetKeySym() used the keymap of the first XKB group only, so with input methods off %K was the Latin letter of the key whatever the current layout. Now the group of the event is used.

With a non-Latin layout, bindings like <Alt-q> never matched. Now, if Control or Alt is down, the keysym of the key in a Latin layout is used, as other X11 toolkits do. Typed characters (%A) are not affected. check-in: b052917b user: serhiy.storchaka tags: x11-nonlatin-shortcuts

2026-09-15
20:20
Merge trunk leaf check-in: 8b6e012e user: jan.nijtmans tags: revised_text, tip-466
13:12
Merge wayland-a11y to capture latest updates check-in: 4612ed8f user: kevin_walzer tags: wayland_test
2026-09-12
14:40
Begin work on wayland test suite check-in: cc999b74 user: kevin_walzer tags: wayland_test
2026-09-10
00:51
Consolidate changes from wayland_stress_test into wayland-a11y check-in: 383f25f1 user: kevin_walzer tags: wayland-a11y
2026-09-09
13:56
Add the -density option to photo images, [winfo pixeldensity] and the <<PixelDensityChanged>> virtual event.

An image of N x M pixels with density d is laid out and drawn as N/d x M/d screen pixels: on Aqua its pixels then map one to one onto the Retina backing store instead of being stretched, X11 and Windows resample it in software. Nothing changes at density 1. check-in: 06f7f96c user: nab tags: nab-photo-density

10:13
The Ubuntu package to install is 'libwayland-dev' leaf check-in: 816e2d59 user: jan.nijtmans tags: wayland
2026-09-03
21:29
Switch accessibility announcements from at-spi to speechd; begin work on reducing scope of at-spi implementation check-in: 1637454b user: kevin_walzer tags: wayland-a11y
2026-08-27
15:55
merge trunk check-in: e98033a6 user: dgp tags: core-9-1-b1-rc
2026-08-26
16:07
Fix [3e5d09f0e4]: tk.pc omits private pkg-config dependency for static linking check-in: b602b6d4 user: jan.nijtmans tags: trunk, main
15:06
Fix [3e5d09f0e4]: tk.pc omits private pkg-config dependency for static linking check-in: 24b953d0 user: jan.nijtmans tags: core-9-0-branch
2026-08-24
23:33
Merge wayland branch check-in: 352d0541 user: kevin_walzer tags: wayland-a11y
22:01
merge wayland_wm check-in: af5160b9 user: culler tags: wayland
2026-08-23
16:44
Possible fix for [3e5d09f0e4]: tk.pc omits private pkg-config dependency for static linking closed check-in: 38163e96 user: jan.nijtmans tags: bug-3e5d09f0e4
2026-08-22
19:42
One more desktop tweak check-in: 97ec39e5 user: kevin_walzer tags: wayland_wm
19:18
Restore broken tk.desktop file check-in: 68cf439c user: kevin_walzer tags: wayland_wm
2026-08-21
11:17
Tweak launch for terminal check-in: c8599861 user: kevin_walzer tags: wayland_wm
11:09
Update desktop.in to require a tty launched with wish check-in: 0febf640 user: kevin_walzer tags: wayland_wm
00:31
Remove unnecessary uninstall target; clean up comments check-in: a49e492a user: kevin_walzer tags: wayland_wm
2026-08-20
22:45
Add Freedesktop support - custom icon and .desktop file - to integrate Tk with panels/taskbars/app menus, and display Tk icon for windows - on X11 and Wayland check-in: 22f0e71d user: kevin_walzer tags: wayland_wm
2026-08-17
12:37
Rebase to trunk check-in: edddf96e user: jan.nijtmans tags: ttk-range-widget
2026-08-16
22:30
Fix dpi detection and use correct dpi for converting distances to pixels. check-in: 54e1f847 user: culler tags: wayland
20:20
Adjustments to X11 fonts to support emoji's in SA text check-in: 480accb4 user: kevin_walzer tags: tk_text_grapheme
19:16
Refinement of SA dicts to support Windows build; add tests for UAX #14 and #29; adjustments to tkTextDisp.c to address test failures check-in: aeec6fb4 user: kevin_walzer tags: tk_text_grapheme
04:28
Use correct dpi when converting points to pixels. Enable wayland defaults. Try using 3 for the default value of spacing2. closed check-in: 636ad5dc user: culler tags: wayland_screenmm
2026-08-14
01:52
Add SA dictionaries, custom match algorithm; also implement normal Unicode line breaking check-in: 71fac68c user: kevin_walzer tags: tk_text_grapheme
2026-08-12
20:56
Initial implementation of grapheme cluster segmentation in Tk check-in: cd68bf98 user: kevin_walzer tags: tk_text_grapheme
18:10
merge trunk check-in: ae3d9b10 user: dgp tags: core-9-1-b1-rc
14:41
Add mojibake library check-in: a7008242 user: kevin_walzer tags: tk_text_grapheme
2026-08-10
23:40
Merge trunk to pick up console.n manual fix check-in: 8d5619fc user: rocketship98 tags: tip-561-revised
19:04
Merge trunk check-in: e99b6acd user: kevin_walzer tags: wayland
15:17
Merge trunk check-in: bf7d19ba user: jan.nijtmans tags: revised_text, tip-466
14:01
Indenting check-in: 6d2e35bc user: jan.nijtmans tags: trunk, main
2026-08-09
19:16
Restore building X11 from the Wayland branch check-in: 3b04fe36 user: kevin_walzer tags: wayland
2026-08-05
03:20
cherrypick changes to autoconf files and tkWaylandPort.h from wayland. check-in: 3f02ccde user: culler tags: wayland_nvg