mirror of
https://gitee.com/openharmony/arkui_ace_engine
synced 2024-10-07 00:13:44 +00:00
cherry pick dce5792
from https://gitee.com/ZhangYu-Home/arkui_ace_engine/pulls/44809
cherry pick 4b123a6
from https://gitee.com/sunbees/ace_ace_engine/pulls/44607
fix video export texture fullscreen
Signed-off-by: sunbees <sunqinjia@huawei.com>
This commit is contained in:
parent
61988b2dcd
commit
c7913abf88
@ -1110,9 +1110,23 @@ void VideoPattern::OnRebuildFrame()
|
||||
auto column = AceType::DynamicCast<FrameNode>(video->GetMediaColumn());
|
||||
CHECK_NULL_VOID(column);
|
||||
auto renderContext = column->GetRenderContext();
|
||||
CHECK_NULL_VOID(renderContext);
|
||||
renderContext->AddChild(renderContextForMediaPlayer_, 0);
|
||||
}
|
||||
|
||||
void VideoPattern::RemoveMediaPlayerSurfaceNode()
|
||||
{
|
||||
auto host = GetHost();
|
||||
CHECK_NULL_VOID(host);
|
||||
auto video = AceType::DynamicCast<VideoNode>(host);
|
||||
CHECK_NULL_VOID(video);
|
||||
auto column = AceType::DynamicCast<FrameNode>(video->GetMediaColumn());
|
||||
CHECK_NULL_VOID(column);
|
||||
auto renderContext = column->GetRenderContext();
|
||||
CHECK_NULL_VOID(renderContext);
|
||||
renderContext->RemoveChild(renderContextForMediaPlayer_);
|
||||
}
|
||||
|
||||
bool VideoPattern::OnDirtyLayoutWrapperSwap(const RefPtr<LayoutWrapper>& dirty, const DirtySwapConfig& config)
|
||||
{
|
||||
if (config.skipMeasure || dirty->SkipMeasureContent()) {
|
||||
|
@ -203,9 +203,12 @@ public:
|
||||
{
|
||||
mediaPlayer_.Reset();
|
||||
renderSurface_.Reset();
|
||||
RemoveMediaPlayerSurfaceNode();
|
||||
renderContextForMediaPlayer_.Reset();
|
||||
}
|
||||
|
||||
void RemoveMediaPlayerSurfaceNode();
|
||||
|
||||
void OnFullScreenChange(bool isFullScreen);
|
||||
|
||||
void RecoverState(const RefPtr<VideoPattern>& videoPattern);
|
||||
|
Loading…
Reference in New Issue
Block a user