X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=dali-toolkit%2Finternal%2Fcontrols%2Fvideo-view%2Fvideo-view-impl.cpp;h=8052be26e092dbb2ca44e24ec438b238da51cb29;hb=70510385d88cfbd5c232117d8436ca74c523e172;hp=523fcf0868638996c333934bf3f97237086c22cf;hpb=54342c70a267a34b3345b24c404f1064fed99338;p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git diff --git a/dali-toolkit/internal/controls/video-view/video-view-impl.cpp b/dali-toolkit/internal/controls/video-view/video-view-impl.cpp old mode 100644 new mode 100755 index 523fcf0..8052be2 --- a/dali-toolkit/internal/controls/video-view/video-view-impl.cpp +++ b/dali-toolkit/internal/controls/video-view/video-view-impl.cpp @@ -33,6 +33,8 @@ #include #include #include +#include +#include namespace Dali { @@ -85,50 +87,6 @@ const char* const CUSTOM_FRAGMENT_SHADER( "fragmentShader" ); const char* const DEFAULT_SAMPLER_TYPE_NAME( "sampler2D" ); const char* const CUSTOM_SAMPLER_TYPE_NAME( "samplerExternalOES" ); -const char* VERTEX_SHADER = DALI_COMPOSE_SHADER( - attribute mediump vec2 aPosition;\n - uniform highp mat4 uMvpMatrix;\n - uniform highp vec3 uSize;\n - \n - void main()\n - {\n - mediump vec4 vertexPosition = vec4(aPosition, 0.0, 1.0);\n - vertexPosition.xyz *= uSize;\n - gl_Position = uMvpMatrix * vertexPosition;\n - }\n -); - -const char* FRAGMENT_SHADER = DALI_COMPOSE_SHADER( - \n - void main()\n - {\n - gl_FragColor = vec4(0.0);\n - }\n -); - -const char* VERTEX_SHADER_TEXTURE = DALI_COMPOSE_SHADER( - attribute mediump vec2 aPosition;\n - varying mediump vec2 vTexCoord;\n - uniform highp mat4 uMvpMatrix;\n - uniform highp vec3 uSize;\n - varying mediump vec2 sTexCoordRect;\n - void main()\n - {\n - gl_Position = uMvpMatrix * vec4(aPosition * uSize.xy, 0.0, 1.0);\n - vTexCoord = aPosition + vec2(0.5);\n - }\n -); - -const char* FRAGMENT_SHADER_TEXTURE = DALI_COMPOSE_SHADER( - uniform lowp vec4 uColor;\n - varying mediump vec2 vTexCoord;\n - uniform samplerExternalOES sTexture;\n - void main()\n - {\n - gl_FragColor = texture2D( sTexture, vTexCoord ) * uColor;\n - }\n -); - } // anonymous namepsace VideoView::VideoView( Dali::VideoSyncMode syncMode ) @@ -158,6 +116,11 @@ Toolkit::VideoView VideoView::New( VideoSyncMode syncMode ) void VideoView::OnInitialize() { mVideoPlayer.FinishedSignal().Connect( this, &VideoView::EmitSignalFinish ); + + DevelControl::SetAccessibilityConstructor( Self(), []( Dali::Actor actor ) { + return std::unique_ptr< Dali::Accessibility::Accessible >( + new Control::Impl::AccessibleImpl( actor, Dali::Accessibility::Role::VIDEO )); + } ); } void VideoView::SetUrl( const std::string& url ) @@ -228,11 +191,6 @@ bool VideoView::IsLooping() void VideoView::Play() { - if( mOverlayRenderer ) - { - Self().AddRenderer( mOverlayRenderer ); - } - mVideoPlayer.Play(); mIsPlay = true; } @@ -295,11 +253,6 @@ Dali::Toolkit::VideoView::VideoViewSignalType& VideoView::FinishedSignal() void VideoView::EmitSignalFinish() { - if( mOverlayRenderer ) - { - Self().RemoveRenderer( mOverlayRenderer ); - } - if ( !mFinishedSignal.Empty() ) { Dali::Toolkit::VideoView handle( GetOwner() ); @@ -656,10 +609,11 @@ void VideoView::SetWindowSurfaceTarget() { // For underlay rendering mode, video display area have to be transparent. Geometry geometry = VisualFactoryCache::CreateQuadGeometry(); - Shader shader = Shader::New( VERTEX_SHADER, FRAGMENT_SHADER ); + Shader shader = Shader::New( SHADER_VIDEO_VIEW_VERT, SHADER_VIDEO_VIEW_FRAG ); mOverlayRenderer = Renderer::New( geometry, shader ); mOverlayRenderer.SetProperty( Renderer::Property::BLEND_MODE, BlendMode::OFF ); } + Self().AddRenderer( mOverlayRenderer ); if( mIsPlay ) { @@ -859,7 +813,7 @@ Dali::Shader VideoView::CreateShader() if( !vertexShaderValue || !checkShader ) { - vertexShader = VERTEX_SHADER_TEXTURE; + vertexShader = SHADER_VIDEO_VIEW_TEXTURE_VERT.data(); } Property::Value* fragmentShaderValue = mEffectPropertyMap.Find( CUSTOM_FRAGMENT_SHADER ); @@ -875,13 +829,13 @@ Dali::Shader VideoView::CreateShader() if( !fragmentShaderValue || !checkShader ) { - fragmentShader += FRAGMENT_SHADER_TEXTURE; + fragmentShader += SHADER_VIDEO_VIEW_TEXTURE_FRAG.data(); } } else { - vertexShader = VERTEX_SHADER_TEXTURE; - fragmentShader += FRAGMENT_SHADER_TEXTURE; + vertexShader = SHADER_VIDEO_VIEW_TEXTURE_VERT.data(); + fragmentShader += SHADER_VIDEO_VIEW_TEXTURE_FRAG.data(); } return Dali::Shader::New( vertexShader, fragmentShader );