X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=dali%2Finternal%2Fadaptor%2Fcommon%2Fadaptor.cpp;h=a0747df725167e657179abfe303c57beb044d156;hb=556055cba279f756420711d8b53b0b55ea4f83a7;hp=789fc7004abd029f59df71fc264b588f9cd08e46;hpb=9eade5d10eb913deb44346549c69cf2e7eb85222;p=platform%2Fcore%2Fuifw%2Fdali-adaptor.git diff --git a/dali/internal/adaptor/common/adaptor.cpp b/dali/internal/adaptor/common/adaptor.cpp index 789fc70..e6c3735 100644 --- a/dali/internal/adaptor/common/adaptor.cpp +++ b/dali/internal/adaptor/common/adaptor.cpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Samsung Electronics Co., Ltd. + * Copyright (c) 2020 Samsung Electronics Co., Ltd. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -16,41 +16,48 @@ */ // CLASS HEADER -#include +#include // EXTERNAL INCLUDES +#include #include // INTERNAL INCLUDES #include -#include #include -#include +#include +#include #include +#include namespace Dali { Adaptor& Adaptor::New( Window window ) { - return New( window, Configuration::APPLICATION_DOES_NOT_HANDLE_CONTEXT_LOSS ); + Internal::Adaptor::SceneHolder* sceneHolder = &Dali::GetImplementation( window ); + Adaptor* adaptor = Internal::Adaptor::Adaptor::New( Dali::Integration::SceneHolder( sceneHolder ), NULL ); + return *adaptor; } -Adaptor& Adaptor::New( Window window, Configuration::ContextLoss configuration ) +Adaptor& Adaptor::New( Window window, const Dali::RenderSurfaceInterface& surface ) { - Adaptor* adaptor = Internal::Adaptor::Adaptor::New( window, configuration, NULL ); + Internal::Adaptor::SceneHolder* sceneHolder = &Dali::GetImplementation( window ); + Dali::RenderSurfaceInterface* pSurface = const_cast(&surface); + Adaptor* adaptor = Internal::Adaptor::Adaptor::New( Dali::Integration::SceneHolder( sceneHolder ), pSurface, NULL ); return *adaptor; } -Adaptor& Adaptor::New( Any nativeWindow, const Dali::RenderSurface& surface ) +Adaptor& Adaptor::New( Dali::Integration::SceneHolder window ) { - return New( nativeWindow, surface, Configuration::APPLICATION_DOES_NOT_HANDLE_CONTEXT_LOSS ); + Adaptor* adaptor = Internal::Adaptor::Adaptor::New( window, NULL ); + return *adaptor; } -Adaptor& Adaptor::New( Any nativeWindow, const Dali::RenderSurface& surface, Configuration::ContextLoss configuration ) +Adaptor& Adaptor::New( Dali::Integration::SceneHolder window, const Dali::RenderSurfaceInterface& surface ) { - Dali::RenderSurface* pSurface = const_cast(&surface); - Adaptor* adaptor = Internal::Adaptor::Adaptor::New( nativeWindow, pSurface, configuration, NULL ); + Dali::RenderSurfaceInterface* pSurface = const_cast(&surface); + Adaptor* adaptor = Internal::Adaptor::Adaptor::New( window, pSurface, NULL ); return *adaptor; } @@ -79,19 +86,39 @@ void Adaptor::Stop() mImpl->Stop(); } -bool Adaptor::AddIdle( CallbackBase* callback ) +bool Adaptor::AddIdle( CallbackBase* callback, bool hasReturnValue ) +{ + DALI_ASSERT_ALWAYS( IsAvailable() && "Adaptor not instantiated" ); + return mImpl->AddIdle( callback, hasReturnValue, false ); +} + +bool Adaptor::AddWindow( Dali::Integration::SceneHolder childWindow ) { - return mImpl->AddIdle( callback, false ); + DALI_ASSERT_ALWAYS( IsAvailable() && "Adaptor not instantiated" ); + return mImpl->AddWindow( childWindow ); } void Adaptor::RemoveIdle( CallbackBase* callback ) { + DALI_ASSERT_ALWAYS( IsAvailable() && "Adaptor not instantiated" ); mImpl->RemoveIdle( callback ); } -void Adaptor::ReplaceSurface( Any nativeWindow, Dali::RenderSurface& surface ) +void Adaptor::ProcessIdle() +{ + DALI_ASSERT_ALWAYS( IsAvailable() && "Adaptor not instantiated" ); + mImpl->ProcessIdle(); +} + +void Adaptor::ReplaceSurface( Window window, Dali::RenderSurfaceInterface& surface ) +{ + Internal::Adaptor::SceneHolder* sceneHolder = &Dali::GetImplementation( window ); + mImpl->ReplaceSurface( Dali::Integration::SceneHolder( sceneHolder ), surface ); +} + +void Adaptor::ReplaceSurface( Dali::Integration::SceneHolder window, Dali::RenderSurfaceInterface& surface ) { - mImpl->ReplaceSurface(nativeWindow, surface); + mImpl->ReplaceSurface( window, surface ); } Adaptor::AdaptorSignalType& Adaptor::ResizedSignal() @@ -104,7 +131,12 @@ Adaptor::AdaptorSignalType& Adaptor::LanguageChangedSignal() return mImpl->LanguageChangedSignal(); } -RenderSurface& Adaptor::GetSurface() +Adaptor::WindowCreatedSignalType& Adaptor::WindowCreatedSignal() +{ + return mImpl->WindowCreatedSignal(); +} + +Dali::RenderSurfaceInterface& Adaptor::GetSurface() { return mImpl->GetSurface(); } @@ -114,6 +146,16 @@ Any Adaptor::GetNativeWindowHandle() return mImpl->GetNativeWindowHandle(); } +Any Adaptor::GetNativeWindowHandle( Actor actor ) +{ + return mImpl->GetNativeWindowHandle( actor ); +} + +Any Adaptor::GetGraphicsDisplay() +{ + return mImpl->GetGraphicsDisplay(); +} + void Adaptor::ReleaseSurfaceLock() { mImpl->ReleaseSurfaceLock(); @@ -124,9 +166,9 @@ void Adaptor::SetRenderRefreshRate( unsigned int numberOfVSyncsPerRender ) mImpl->SetRenderRefreshRate( numberOfVSyncsPerRender ); } -void Adaptor::SetUseHardwareVSync(bool useHardware) +void Adaptor::SetPreRenderCallback( CallbackBase* callback ) { - mImpl->SetUseHardwareVSync( useHardware ); + mImpl->SetPreRenderCallback( callback ); } Adaptor& Adaptor::Get() @@ -149,11 +191,6 @@ void Adaptor::NotifyLanguageChanged() mImpl->NotifyLanguageChanged(); } -void Adaptor::SetMinimumPinchDistance(float distance) -{ - mImpl->SetMinimumPinchDistance(distance); -} - void Adaptor::FeedTouchPoint( TouchPoint& point, int timeStamp ) { mImpl->FeedTouchPoint(point, timeStamp); @@ -174,14 +211,14 @@ void Adaptor::SceneCreated() mImpl->SceneCreated(); } -void Adaptor::SetViewMode( ViewMode mode ) +void Adaptor::SurfaceResizePrepare( Dali::RenderSurfaceInterface* surface, SurfaceSize surfaceSize ) { - mImpl->SetViewMode( mode ); + mImpl->SurfaceResizePrepare( surface, surfaceSize ); } -void Adaptor::SetStereoBase( float stereoBase ) +void Adaptor::SurfaceResizeComplete( Dali::RenderSurfaceInterface* surface, SurfaceSize surfaceSize ) { - mImpl->SetStereoBase( stereoBase ); + mImpl->SurfaceResizeComplete( surface, surfaceSize ); } void Adaptor::RenderOnce() @@ -194,6 +231,41 @@ const LogFactoryInterface& Adaptor::GetLogFactory() return mImpl->GetLogFactory(); } +void Adaptor::RegisterProcessor( Integration::Processor& processor ) +{ + mImpl->RegisterProcessor( processor ); +} + +void Adaptor::UnregisterProcessor( Integration::Processor& processor ) +{ + mImpl->UnregisterProcessor( processor ); +} + +Dali::WindowContainer Adaptor::GetWindows() const +{ + return mImpl->GetWindows(); +} + +SceneHolderList Adaptor::GetSceneHolders() const +{ + return mImpl->GetSceneHolders(); +} + +Dali::ObjectRegistry Adaptor::GetObjectRegistry() const +{ + return mImpl->GetObjectRegistry(); +} + +void Adaptor::OnWindowShown() +{ + mImpl->OnWindowShown(); +} + +void Adaptor::OnWindowHidden() +{ + mImpl->OnWindowHidden(); +} + Adaptor::Adaptor() : mImpl( NULL ) {