Tk Source Code

View Ticket
Login
Ticket UUID: 220781
Title: wm overrideredirect zaps additions to system menu
Type: Bug Version: 8.0.3, 8.6.18, 9.0.5, 9.1b1
Submitter: welch Created on: 2000-11-01 00:53:58
Subsystem: 13. Win Menus Assigned To: aku
Priority: 5 Medium Severity: Minor
Status: Closed Last Modified: 2026-10-18 19:42:34
Resolution: Fixed Closed By: nemethi
    Closed on: 2026-10-18 19:42:34
Description:
OriginalBugID: 955 Bug
Version: 8.0.3
SubmitDate: '1998-12-14'
LastModified: '2000-01-06'
Severity: MED
Status: Assigned
Submitter: pat
ChangedBy: hobbs
OS: All Windows
Machine: X86


Name: Tim Wilson

ReproducibleScript:
Working on Wish for Win95:

% menu .m
.m
% menu .m.system
.m.system
% .m add cascade -menu .m.system
% .m.system add command -label Hello
% . configure -menu .m
(Observe new "Hello" entry in system menu.)
% . cget -menu
.m
(Confirm Tk knows about menu.)
% wm overrideredirect . 0
(I would expect this to be a no-op, but
observe that "Hello" entry has disappeared from system menu.  BUG!)
% . cget -menu
.m
(Tk thinks menu is there... but it isn't displaying it any more.)
% . configure -menu .m
(Observe that this doesn't fix it.)
% . configure -menu {}
% . configure -menu .m
(This pair of operations successfully restores the additions to the system menu.)



Verified that something really screwy is going on in 8.3b1.
The 'wm override' does cause a loss of the system menu additions.
It also causes . to increase in size with each call.  Clicking
on the system menu after it disappears caused . to disappear on
me, but you can reconfigure it otherwise. 
-- 01/06/2000 hobbs
Partial fix in 8.3b2 - 'wm override' will not do anything unless
you are really changing values, becoming a true noop in the above
case. 
-- 01/06/2000 hobbs
User Comments: nemethi (claiming to be Csaba Nemethi) added on 2026-10-18 19:42:34:

Merged into main, core-9-0-branch, and core-8-6-branch by commits [88bdbe4c] (Jan), [030f83d2], and [d21c812c]. Closing the ticket.


serhiy.storchaka added on 2026-09-21 17:39:57:

Still present on Windows 11 with 8.6 and 9.1: "wm overrideredirect . 0" is a no-op now, but a real change of the value recreates the wrapper window and the additions to the system menu are lost, as noted above. The ".system" menu was bound to the system menu of the wrapper only once. Fixed on branch win-sysmenu-wrapper in [dcd20365e5]: the menu is rebound to the system menu of the new wrapper.


hobbs added on 2002-08-08 08:23:40:
Logged In: YES 
user_id=72656

Also dupped by 587698, it is still a valid problem where the 
wrapper window isn't updating the system menu when it is 
recreated in tkWinWm.c:UpdateWrapper.

dgp added on 2002-07-06 05:02:25:
Logged In: YES 
user_id=80530


still valid?