diff options
author | Damien Plisson <damien.plisson@yahoo.fr> | 2009-11-09 20:06:48 +0300 |
---|---|---|
committer | Damien Plisson <damien.plisson@yahoo.fr> | 2009-11-09 20:06:48 +0300 |
commit | 9c0cdd2501eda811829ec9a14cf3b9d1a89966aa (patch) | |
tree | bdf221dfe5f9074d28fbcb66f510b2356178efd9 /intern | |
parent | 196ecb7babad8cb865e405e6f696c1c2cfaefdbd (diff) |
- fix Cocoa window setOrder function to maintain focus on a blender window (e.g. ensure the blender window gets the focus when the user presses ESC to move back the render window)
- QuickTime export fixes.
Note that QuickTime export still crashes because it tries to open a "codec settings" dialog from the rendering background thread (and not the main/UI thread).
One quick fix may be to move the movie export initialization out of the render thread back into the operator function.
But a cleaner way would be to get rid of such a carbon/win32 dialog and place the codec settings inside blender interface
(additional fields in the output panel as it is currently the case for other file formats ?).
Diffstat (limited to 'intern')
-rw-r--r-- | intern/ghost/intern/GHOST_WindowCocoa.mm | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/intern/ghost/intern/GHOST_WindowCocoa.mm b/intern/ghost/intern/GHOST_WindowCocoa.mm index f0bc8dd4d0f..6d6829f3925 100644 --- a/intern/ghost/intern/GHOST_WindowCocoa.mm +++ b/intern/ghost/intern/GHOST_WindowCocoa.mm @@ -684,10 +684,18 @@ GHOST_TSuccess GHOST_WindowCocoa::setOrder(GHOST_TWindowOrder order) { GHOST_ASSERT(getValid(), "GHOST_WindowCocoa::setOrder(): window invalid") if (order == GHOST_kWindowOrderTop) { - [m_window orderFront:nil]; + [m_window makeKeyAndOrderFront:nil]; } else { + NSArray *windowsList; + [m_window orderBack:nil]; + + //Check for other blender opened windows and make the frontmost key + windowsList = [NSApp orderedWindows]; + if ([windowsList count]) { + [[windowsList objectAtIndex:0] makeKeyAndOrderFront:nil]; + } } return GHOST_kSuccess; } |