From: Heeyong Song Date: Wed, 18 Aug 2021 07:20:55 +0000 (+0900) Subject: Change window visibility changed signal X-Git-Tag: dali_2.0.40~2 X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Fdali-adaptor.git;a=commitdiff_plain;h=df1ff52ed6b131c79280ec4464f9e9b187b82de6 Change window visibility changed signal Emit window visibility changed signal before the adaptor is paused / resumed to ensure messages queued during the callback are processed. Change-Id: I34917dcfa274f31c5e372ccdaa74bb98156d9857 --- diff --git a/dali/internal/window-system/common/window-impl.cpp b/dali/internal/window-system/common/window-impl.cpp index 44f8b66..79228af 100644 --- a/dali/internal/window-system/common/window-impl.cpp +++ b/dali/internal/window-system/common/window-impl.cpp @@ -99,9 +99,9 @@ Window::~Window() { if(mAdaptor) { - auto bridge = Accessibility::Bridge::GetCurrentBridge(); - auto rootLayer = mScene.GetRootLayer(); - auto accessible = Accessibility::Accessible::Get(rootLayer); + auto bridge = Accessibility::Bridge::GetCurrentBridge(); + auto rootLayer = mScene.GetRootLayer(); + auto accessible = Accessibility::Accessible::Get(rootLayer); bridge->RemoveTopLevelWindow(accessible); mAdaptor->RemoveWindow(this); @@ -433,11 +433,11 @@ void Window::Show() if(!mIconified) { - WindowVisibilityObserver* observer(mAdaptor); - observer->OnWindowShown(); - Dali::Window handle(this); mVisibilityChangedSignal.Emit(handle, true); + + WindowVisibilityObserver* observer(mAdaptor); + observer->OnWindowShown(); } mSurface->SetFullSwapNextFrame(); @@ -453,11 +453,11 @@ void Window::Hide() if(!mIconified) { - WindowVisibilityObserver* observer(mAdaptor); - observer->OnWindowHidden(); - Dali::Window handle(this); mVisibilityChangedSignal.Emit(handle, false); + + WindowVisibilityObserver* observer(mAdaptor); + observer->OnWindowHidden(); } DALI_LOG_RELEASE_INFO("Window (%p), WinId (%d), Hide(): iconified = %d, visible = %d\n", this, mNativeWindowId, mIconified, mVisible); @@ -711,11 +711,11 @@ void Window::OnIconifyChanged(bool iconified) if(mVisible) { - WindowVisibilityObserver* observer(mAdaptor); - observer->OnWindowHidden(); - Dali::Window handle(this); mVisibilityChangedSignal.Emit(handle, false); + + WindowVisibilityObserver* observer(mAdaptor); + observer->OnWindowHidden(); } DALI_LOG_RELEASE_INFO("Window (%p), WinId (%d), Iconified: visible = %d\n", this, mNativeWindowId, mVisible); @@ -726,11 +726,11 @@ void Window::OnIconifyChanged(bool iconified) if(mVisible) { - WindowVisibilityObserver* observer(mAdaptor); - observer->OnWindowShown(); - Dali::Window handle(this); mVisibilityChangedSignal.Emit(handle, true); + + WindowVisibilityObserver* observer(mAdaptor); + observer->OnWindowShown(); } DALI_LOG_RELEASE_INFO("Window (%p), WinId (%d), Deiconified: visible = %d\n", this, mNativeWindowId, mVisible);