diff options
author | Liong Sauw Ming <ming@teluu.com> | 2011-08-29 02:33:50 +0000 |
---|---|---|
committer | Liong Sauw Ming <ming@teluu.com> | 2011-08-29 02:33:50 +0000 |
commit | 4975a701a31b3c7de794a85435c83f614ac530a7 (patch) | |
tree | 32c1a06999fbe62026c3e3cf2e2b3c13d3b436ba /pjsip-apps/src/vidgui/vidwin.cpp | |
parent | 0eb1ccb735c3df5ca5bda3f0c64099bd8ac186f0 (diff) |
Fixed #1354: stopping preview may hide parent window.
git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@3728 74dad513-b988-da41-8d7b-12977e46ad98
Diffstat (limited to 'pjsip-apps/src/vidgui/vidwin.cpp')
-rw-r--r-- | pjsip-apps/src/vidgui/vidwin.cpp | 18 |
1 files changed, 8 insertions, 10 deletions
diff --git a/pjsip-apps/src/vidgui/vidwin.cpp b/pjsip-apps/src/vidgui/vidwin.cpp index 1148a020..654035c1 100644 --- a/pjsip-apps/src/vidgui/vidwin.cpp +++ b/pjsip-apps/src/vidgui/vidwin.cpp @@ -46,7 +46,7 @@ VidWin::VidWin(const pjmedia_vid_dev_hwnd *hwnd_, VidWin::~VidWin() { - show(false); + show_sdl(false); detach(); } @@ -72,13 +72,13 @@ bool VidWin::event(QEvent *e) break; case QEvent::Show: - show(true); + show_sdl(true); // revert to default size hint, make it resizable setFixedSize(QWIDGETSIZE_MAX, QWIDGETSIZE_MAX); break; case QEvent::Hide: - show(false); + show_sdl(false); break; default: @@ -138,7 +138,7 @@ void VidWin::get_size() TRACE_("%p size = %dx%d", w, size_hint.width(), size_hint.height()); } -void VidWin::show(bool visible) +void VidWin::show_sdl(bool visible) { if (!hwnd.info.win.hwnd) return; @@ -209,18 +209,16 @@ void VidWin::get_size() TRACE_("%p size = %dx%d", 0, size_hint.width(), size_hint.height()); } -void VidWin::show(bool visible) +void VidWin::show_sdl(bool visible) { if (!hwnd.info.cocoa.window) return; NSWindow *w = (NSWindow*)hwnd.info.cocoa.window; if (visible) { - if (![w isMiniaturized]) { - [w makeKeyAndOrderFront:nil]; - } + [[w contentView]setHidden:NO]; } else { - [w orderOut:nil]; + [[w contentView]setHidden:YES]; } } @@ -284,7 +282,7 @@ void VidWin::get_size() TRACE_("%p size = %dx%d", w, size_hint.width(), size_hint.height()); } -void VidWin::show(bool visible) +void VidWin::show_sdl(bool visible) { if (!hwnd.info.x11.window) return; |