Mon 14 Nov 2011 02:14:16 PM UTC, comment #3:
sorry for forgetting to attach the example - of course i deleted it by now and had to recreate it - attached.
i see you are right that it isn't supposed to work - unless there is somehow more to it the documentation would indicate that the main run loop is paused.
however, this is not what is happening on Mac OS X.
the main run loop is paused when something completely modal is done like
[NSApplication runModalForWindow:], you can't interact with any other windows of the app anymore and the main runloop is paused.
other methods like
beginSheet:modalForWindow
or
presentError:modalForWindow
that present a window that is modal just for a single window don't seem to block the main run loop and also let you interact with other windows, just not the blocked one.
its a bit confusing that all these methods have modalForWindow: in their name while in the first case this is the window that is presented modally, blocking everything else, while for the methods in the second class, the window parameter is not the presented window, but rather the only window that will be blocked.
anyway, since this is not completely clear from the documentation, i could understand not wanting to "fix" anything here.
will file a bug at apple about the documentation not matching reality now.
(file #24370)
|