Use MacOS.OutputSeen() on menuselections. Removed KeepConsole code again. This solution is better: it treats a menu selection in the same way as input to stdin (i.e. as an ack of the output that went before).
diff --git a/Mac/Lib/FrameWork.py b/Mac/Lib/FrameWork.py
index 50ffe5f..2d75965 100644
--- a/Mac/Lib/FrameWork.py
+++ b/Mac/Lib/FrameWork.py
@@ -149,13 +149,9 @@
schedparams = (0, 0) # By default disable Python's event handling
- keepconsole = 0 # By default don't keep console window open
-
def mainloop(self, mask = everyEvent, wait = 0):
self.quitting = 0
saveparams = apply(MacOS.SchedParams, self.schedparams)
- if self.keepconsole != None:
- MacOS.KeepConsole(self.keepconsole)
try:
while not self.quitting:
try:
@@ -291,6 +287,7 @@
HiliteMenu(0)
def do_menu(self, id, item, window, event):
+ MacOS.OutputSeen()
self.menubar.dispatch(id, item, window, event)