X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git;a=blobdiff_plain;f=dali-toolkit%2Finternal%2Fcontrols%2Fvideo-view%2Fvideo-view-impl.cpp;h=5fa13de7a4d222dd3b6f3aaea12f1e378acdcf8f;hp=85b219e5a2408b34d2946cb8d5095fb5e6f01627;hb=HEAD;hpb=2f48746387a5d6b993f19fad3756796c8bd95c1c diff --git a/dali-toolkit/internal/controls/video-view/video-view-impl.cpp b/dali-toolkit/internal/controls/video-view/video-view-impl.cpp index 85b219e..5fa13de 100644 --- a/dali-toolkit/internal/controls/video-view/video-view-impl.cpp +++ b/dali-toolkit/internal/controls/video-view/video-view-impl.cpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2021 Samsung Electronics Co., Ltd. + * Copyright (c) 2024 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. @@ -21,6 +21,7 @@ // EXTERNAL INCLUDES #include #include +#include #include #include #include @@ -117,10 +118,9 @@ void VideoView::OnInitialize() Actor self = Self(); mVideoPlayer.FinishedSignal().Connect(this, &VideoView::EmitSignalFinish); - DevelControl::SetAccessibilityConstructor(self, [](Dali::Actor actor) { - return std::unique_ptr( - new DevelControl::AccessibleImpl(actor, Dali::Accessibility::Role::VIDEO)); - }); + // Accessibility + self.SetProperty(DevelControl::Property::ACCESSIBILITY_ROLE, Dali::Accessibility::Role::VIDEO); + self.SetProperty(DevelControl::Property::ACCESSIBILITY_HIGHLIGHTABLE, true); //update self property self.RegisterProperty(IS_VIDEO_VIEW_PROPERTY_NAME, true, Property::READ_WRITE); @@ -604,30 +604,6 @@ Vector3 VideoView::GetNaturalSize() } } -float VideoView::GetHeightForWidth(float width) -{ - if(mVideoSize.GetWidth() > 0 && mVideoSize.GetHeight() > 0) - { - return GetHeightForWidthBase(width); - } - else - { - return Control::GetHeightForWidthBase(width); - } -} - -float VideoView::GetWidthForHeight(float height) -{ - if(mVideoSize.GetWidth() > 0 && mVideoSize.GetHeight() > 0) - { - return GetWidthForHeightBase(height); - } - else - { - return Control::GetWidthForHeightBase(height); - } -} - void VideoView::SetWindowSurfaceTarget() { Actor self = Self(); @@ -669,7 +645,7 @@ void VideoView::SetWindowSurfaceTarget() { // For underlay rendering mode, video display area have to be transparent. Geometry geometry = VisualFactoryCache::CreateQuadGeometry(); - Shader shader = Shader::New(SHADER_VIDEO_VIEW_VERT, SHADER_VIDEO_VIEW_FRAG); + Shader shader = Shader::New(SHADER_VIDEO_VIEW_VERT, SHADER_VIDEO_VIEW_FRAG, Shader::Hint::NONE, "VIDEO_VIEW_OVERLAY"); mOverlayRenderer = Renderer::New(geometry, shader); mOverlayRenderer.SetProperty(Renderer::Property::BLEND_MODE, BlendMode::OFF); } @@ -869,7 +845,7 @@ void VideoView::PlayAnimation(Dali::Animation animation) Dali::Shader VideoView::CreateShader() { - std::string fragmentShader = "#extension GL_OES_EGL_image_external:require\n"; + std::string fragmentShader; std::string vertexShader; std::string customFragmentShader; bool checkShader = false; @@ -900,16 +876,18 @@ Dali::Shader VideoView::CreateShader() if(!fragmentShaderValue || !checkShader) { - fragmentShader += SHADER_VIDEO_VIEW_TEXTURE_FRAG.data(); + fragmentShader = SHADER_VIDEO_VIEW_TEXTURE_FRAG.data(); + DevelTexture::ApplyNativeFragmentShader(mNativeTexture, fragmentShader); } } else { - vertexShader = SHADER_VIDEO_VIEW_TEXTURE_VERT.data(); - fragmentShader += SHADER_VIDEO_VIEW_TEXTURE_FRAG.data(); + vertexShader = SHADER_VIDEO_VIEW_TEXTURE_VERT.data(); + fragmentShader = SHADER_VIDEO_VIEW_TEXTURE_FRAG.data(); + DevelTexture::ApplyNativeFragmentShader(mNativeTexture, fragmentShader); } - return Dali::Shader::New(vertexShader, fragmentShader); + return Dali::Shader::New(vertexShader, fragmentShader, Shader::Hint::NONE, "VIDEO_VIEW"); } bool VideoView::GetStringFromProperty(const Dali::Property::Value& value, std::string& output)