You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The original fix for Issue #12 was incomplete. The fix for Issue #36 filled one hole, but many more remain. Also, the fix for Issue #12 was kludgy. It made all dialogs derived from the Dialog class non-modal, which meant that they often needed methods called "constrain_master" and "restore_master" to explicitly prevent the user from performing certain actions in the master window.
The workaround for this bug should be done so it covers all cases and so that the dialogs can once again be modal.
The text was updated successfully, but these errors were encountered:
This is a better fix for Issue #12 and Issue #36 that:
- Also fix all other cases where the bug could manifest itself (all tk dialogs)
- Restores the Dialog class to be modal
The new workaround is to recreate the whole menubar whenever a modal window is closed. This is the same workaround used for Issue #36, but is now enclosed in a method mac_grayed_menu_workaround. Calls to that method are placed after every usage of a dialog. To reduce the clutter, most of the tk dialogs (tkMessageBox, tkSimpleDialog, etc) are enclosed in wrappers that include the workaround.
The generic Dialog class is now reverted to its original modal behavior. All the dialog classes derived from Dialog no longer need the constrain_master and restore_master methods, so those (and calls to them) have been removed.
The original fix for Issue #12 was incomplete. The fix for Issue #36 filled one hole, but many more remain. Also, the fix for Issue #12 was kludgy. It made all dialogs derived from the Dialog class non-modal, which meant that they often needed methods called "constrain_master" and "restore_master" to explicitly prevent the user from performing certain actions in the master window.
The workaround for this bug should be done so it covers all cases and so that the dialogs can once again be modal.
The text was updated successfully, but these errors were encountered: