Index: .github/workflows/linux-build.yml ================================================================== --- .github/workflows/linux-build.yml +++ .github/workflows/linux-build.yml @@ -3,10 +3,11 @@ push: branches: - "main" - "core-8-branch" - "core-8-6-branch" + - "bug-13ac26b35d" tags: - "core-**" permissions: contents: read defaults: Index: .github/workflows/mac-build.yml ================================================================== --- .github/workflows/mac-build.yml +++ .github/workflows/mac-build.yml @@ -3,10 +3,11 @@ push: branches: - "main" - "core-8-branch" - "core-8-6-branch" + - "bug-13ac26b35d" tags: - "core-**" permissions: contents: read env: Index: .github/workflows/win-build.yml ================================================================== --- .github/workflows/win-build.yml +++ .github/workflows/win-build.yml @@ -3,10 +3,11 @@ push: branches: - "main" - "core-8-branch" - "core-8-6-branch" + - "bug-13ac26b35d" tags: - "core-**" permissions: contents: read env: Index: changes.md ================================================================== --- changes.md +++ changes.md @@ -53,10 +53,11 @@ - [File clamTheme.tcl misses code related to the -indicatorforeground option](https://core.tcl-lang.org/tk/tktview/a69fd7) - [Segfault when using menu(button) with the -font option](https://core.tcl-lang.org/tk/tktview/8ce672) - [Bind mechanism vs. GNOME](https://core.tcl-lang.org/tk/tktview/6bdf1a) - [many PIXEL options don't keep their configured value](https://core.tcl-lang.org/tk/tktview/29ba53) - [Menu entry underline does not consider activeborderwidth](https://core.tcl-lang.org/tk/tktview/844c0b) + - [wm iconbitmap does not correctly set the icon pixmap hint on macOS](https://core.tcl-lang.org/tk/tktview/13ac26) 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 Index: macosx/tkMacOSXWm.c ================================================================== --- macosx/tkMacOSXWm.c +++ macosx/tkMacOSXWm.c @@ -2975,18 +2975,19 @@ } if (!TkMacOSXHostToplevelExists(winPtr)) { TkMacOSXMakeRealWindowExist(winPtr); } if (WmSetAttribute(winPtr, TkMacOSXGetNSWindowForDrawable(winPtr->window), interp, - WMATT_TITLEPATH, objv[3]) == TCL_OK) { - if (!len) { - if (wmPtr->hints.icon_pixmap != None) { - Tk_FreeBitmap(winPtr->display, wmPtr->hints.icon_pixmap); - wmPtr->hints.icon_pixmap = None; - } - wmPtr->hints.flags &= ~IconPixmapHint; - } + WMATT_TITLEPATH, objv[3]) != TCL_OK) { + return TCL_ERROR; + } + if (!len) { + if (wmPtr->hints.icon_pixmap != None) { + Tk_FreeBitmap(winPtr->display, wmPtr->hints.icon_pixmap); + wmPtr->hints.icon_pixmap = None; + } + wmPtr->hints.flags &= ~IconPixmapHint; } else { pixmap = Tk_GetBitmap(interp, (Tk_Window)winPtr, str); if (pixmap == None) { return TCL_ERROR; } Index: tests/unixWm.test ================================================================== --- tests/unixWm.test +++ tests/unixWm.test @@ -813,19 +813,13 @@ wm iconbitmap .t {} set bit [format 0x%x [expr 0x4 & [lindex [testprop [testwrapper .t] \ WM_HINTS] 0]]] lappend result [wm iconbitmap .t] $bit } {{} questhead 0x4 {} 0x0} -if {[tk windowingsystem] eq "aqua"} { - set result_22_3 {0 {}} -} else { - set result_22_3 {1 {bitmap "bad-bitmap" not defined}} -} -test unixWm-22.3 {Tk_WmCmd procedure, "iconbitmap" option for unix only} \ -unix { +test unixWm-22.3 {Tk_WmCmd procedure, "iconbitmap" option} unix { list [catch {wm iconbitmap .t bad-bitmap} msg] $msg -} $result_22_3 +} {1 {bitmap "bad-bitmap" not defined}} test unixWm-23.1 {Tk_WmCmd procedure, "iconify" option} unix { list [catch {wm iconify .t 12} msg] $msg } {1 {wrong # args: should be "wm iconify window"}} test unixWm-23.2 {Tk_WmCmd procedure, "iconify" option} unix { Index: tests/wm.test ================================================================== --- tests/wm.test +++ tests/wm.test @@ -876,15 +876,15 @@ wm iconbitmap .t 12 13 14 } -result {wrong # args: should be "wm iconbitmap window ?-default? ?image?"} test wm-iconbitmap-1.3 {usage} -constraints win -returnCodes error -body { wm iconbitmap .t 12 13 } -result {illegal option "12" must be "-default"} -test wm-iconbitmap-1.4 {usage} -constraints notAqua -returnCodes error -body { +test wm-iconbitmap-1.4 {usage} -returnCodes error -body { wm iconbitmap .t bad-bitmap } -result {bitmap "bad-bitmap" not defined} -test wm-iconbitmap-2.1 {setting and reading values} -constraints notAqua -setup { +test wm-iconbitmap-2.1 {setting and reading values} -setup { set result {} } -body { lappend result [wm iconbitmap .t] wm iconbitmap .t hourglass lappend result [wm iconbitmap .t]