From ca478f92516c20131b24d20c23de1cab9081d087 Mon Sep 17 00:00:00 2001 From: yangli Date: Sat, 18 Nov 2023 10:53:51 +0800 Subject: [PATCH 01/11] 1118 Signed-off-by: yangli --- .../dscreenmgr/common/src/screen_manager_adapter.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/services/screenservice/sourceservice/dscreenmgr/common/src/screen_manager_adapter.cpp b/services/screenservice/sourceservice/dscreenmgr/common/src/screen_manager_adapter.cpp index f7e4b26b..e645a364 100644 --- a/services/screenservice/sourceservice/dscreenmgr/common/src/screen_manager_adapter.cpp +++ b/services/screenservice/sourceservice/dscreenmgr/common/src/screen_manager_adapter.cpp @@ -79,6 +79,7 @@ uint64_t ScreenMgrAdapter::CreateVirtualScreen(const std::string &devId, const s false }; + Rosen::ScreenManager::GetInstance().SetVirtualScreenUsingStatus(false); uint64_t screenId = Rosen::ScreenManager::GetInstance().CreateVirtualScreen(option); DHLOGI("virtualScreen id is: %" PRIu64, screenId); screenIdMap_.emplace(screenName, screenId); @@ -151,6 +152,7 @@ int32_t ScreenMgrAdapter::SetImageSurface(uint64_t screenId, sptr return ERR_DH_SCREEN_SA_SET_IMAGESURFACE_FAIL; } DHLOGI("SetImageSurface for virtualscreen, screenId: %" PRIu64, screenId); + Rosen::ScreenManager::GetInstance().SetVirtualScreenUsingStatus(true); Rosen::ScreenManager::GetInstance().SetVirtualScreenSurface(screenId, surface); return DH_SUCCESS; } -- Gitee From 27c176f6fb4eff69f96aeccfddd985ed2b437d83 Mon Sep 17 00:00:00 2001 From: yangli Date: Sat, 18 Nov 2023 18:51:07 +0800 Subject: [PATCH 02/11] 1118 Signed-off-by: yangli --- services/screenservice/sourceservice/BUILD.gn | 1 + .../dscreenmgr/common/include/screen_manager_adapter.h | 1 + .../dscreenmgr/common/src/screen_manager_adapter.cpp | 4 ++-- 3 files changed, 4 insertions(+), 2 deletions(-) diff --git a/services/screenservice/sourceservice/BUILD.gn b/services/screenservice/sourceservice/BUILD.gn index 345bdb2b..ced750a2 100644 --- a/services/screenservice/sourceservice/BUILD.gn +++ b/services/screenservice/sourceservice/BUILD.gn @@ -93,6 +93,7 @@ ohos_shared_library("distributed_screen_source") { "distributed_hardware_fwk:distributed_av_sender", "distributed_hardware_fwk:distributedhardwareutils", "distributed_hardware_fwk:libdhfwk_sdk", + "graphic_2d:librender_service_client", "graphic_2d:libcomposer", "graphic_2d:surface", "hicollie:libhicollie", diff --git a/services/screenservice/sourceservice/dscreenmgr/common/include/screen_manager_adapter.h b/services/screenservice/sourceservice/dscreenmgr/common/include/screen_manager_adapter.h index ed2a022e..38ea792c 100644 --- a/services/screenservice/sourceservice/dscreenmgr/common/include/screen_manager_adapter.h +++ b/services/screenservice/sourceservice/dscreenmgr/common/include/screen_manager_adapter.h @@ -24,6 +24,7 @@ #include "dscreen_maprelation.h" #include "video_param.h" +#include "transsction/rs_interfaces.h" namespace OHOS { namespace DistributedHardware { diff --git a/services/screenservice/sourceservice/dscreenmgr/common/src/screen_manager_adapter.cpp b/services/screenservice/sourceservice/dscreenmgr/common/src/screen_manager_adapter.cpp index e645a364..12bd3a91 100644 --- a/services/screenservice/sourceservice/dscreenmgr/common/src/screen_manager_adapter.cpp +++ b/services/screenservice/sourceservice/dscreenmgr/common/src/screen_manager_adapter.cpp @@ -79,7 +79,7 @@ uint64_t ScreenMgrAdapter::CreateVirtualScreen(const std::string &devId, const s false }; - Rosen::ScreenManager::GetInstance().SetVirtualScreenUsingStatus(false); + Rosen::RSInterfaces::GetInstance().SetVirtualScreenUsingStatus(false); uint64_t screenId = Rosen::ScreenManager::GetInstance().CreateVirtualScreen(option); DHLOGI("virtualScreen id is: %" PRIu64, screenId); screenIdMap_.emplace(screenName, screenId); @@ -152,7 +152,7 @@ int32_t ScreenMgrAdapter::SetImageSurface(uint64_t screenId, sptr return ERR_DH_SCREEN_SA_SET_IMAGESURFACE_FAIL; } DHLOGI("SetImageSurface for virtualscreen, screenId: %" PRIu64, screenId); - Rosen::ScreenManager::GetInstance().SetVirtualScreenUsingStatus(true); + Rosen::RSInterfaces::GetInstance().SetVirtualScreenUsingStatus(true); Rosen::ScreenManager::GetInstance().SetVirtualScreenSurface(screenId, surface); return DH_SUCCESS; } -- Gitee From 1152d249adc02c2a029d294dde8f304aa0457639 Mon Sep 17 00:00:00 2001 From: yangli Date: Sat, 18 Nov 2023 18:52:46 +0800 Subject: [PATCH 03/11] 1118 Signed-off-by: yangli --- services/screenservice/sourceservice/BUILD.gn | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/services/screenservice/sourceservice/BUILD.gn b/services/screenservice/sourceservice/BUILD.gn index ced750a2..8554628b 100644 --- a/services/screenservice/sourceservice/BUILD.gn +++ b/services/screenservice/sourceservice/BUILD.gn @@ -93,8 +93,8 @@ ohos_shared_library("distributed_screen_source") { "distributed_hardware_fwk:distributed_av_sender", "distributed_hardware_fwk:distributedhardwareutils", "distributed_hardware_fwk:libdhfwk_sdk", - "graphic_2d:librender_service_client", "graphic_2d:libcomposer", + "graphic_2d:librender_service_client", "graphic_2d:surface", "hicollie:libhicollie", "hisysevent:libhisysevent", -- Gitee From be8ea405de6ef6ba757ea4540700aa1d15ee9cfb Mon Sep 17 00:00:00 2001 From: yangli Date: Sat, 18 Nov 2023 19:18:26 +0800 Subject: [PATCH 04/11] 1118 Signed-off-by: yangli --- .../dscreenmgr/common/include/screen_manager_adapter.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/services/screenservice/sourceservice/dscreenmgr/common/include/screen_manager_adapter.h b/services/screenservice/sourceservice/dscreenmgr/common/include/screen_manager_adapter.h index 38ea792c..a143185e 100644 --- a/services/screenservice/sourceservice/dscreenmgr/common/include/screen_manager_adapter.h +++ b/services/screenservice/sourceservice/dscreenmgr/common/include/screen_manager_adapter.h @@ -24,7 +24,7 @@ #include "dscreen_maprelation.h" #include "video_param.h" -#include "transsction/rs_interfaces.h" +#include "transaction/rs_interfaces.h" namespace OHOS { namespace DistributedHardware { -- Gitee From 805029bb328acd66d84b4c26c8d0aa237cf3528e Mon Sep 17 00:00:00 2001 From: yangli Date: Mon, 20 Nov 2023 10:11:48 +0800 Subject: [PATCH 05/11] 1118 Signed-off-by: yangli --- .../dscreenmgr/common/src/screen_manager_adapter.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/services/screenservice/sourceservice/dscreenmgr/common/src/screen_manager_adapter.cpp b/services/screenservice/sourceservice/dscreenmgr/common/src/screen_manager_adapter.cpp index 12bd3a91..bfbe7404 100644 --- a/services/screenservice/sourceservice/dscreenmgr/common/src/screen_manager_adapter.cpp +++ b/services/screenservice/sourceservice/dscreenmgr/common/src/screen_manager_adapter.cpp @@ -79,7 +79,7 @@ uint64_t ScreenMgrAdapter::CreateVirtualScreen(const std::string &devId, const s false }; - Rosen::RSInterfaces::GetInstance().SetVirtualScreenUsingStatus(false); + Rosen::RSInterfaces::GetInstance().SetVirtualScreenUsingStatus(true); uint64_t screenId = Rosen::ScreenManager::GetInstance().CreateVirtualScreen(option); DHLOGI("virtualScreen id is: %" PRIu64, screenId); screenIdMap_.emplace(screenName, screenId); @@ -152,7 +152,7 @@ int32_t ScreenMgrAdapter::SetImageSurface(uint64_t screenId, sptr return ERR_DH_SCREEN_SA_SET_IMAGESURFACE_FAIL; } DHLOGI("SetImageSurface for virtualscreen, screenId: %" PRIu64, screenId); - Rosen::RSInterfaces::GetInstance().SetVirtualScreenUsingStatus(true); + Rosen::RSInterfaces::GetInstance().SetVirtualScreenUsingStatus(false); Rosen::ScreenManager::GetInstance().SetVirtualScreenSurface(screenId, surface); return DH_SUCCESS; } -- Gitee From 046e88cf533b47d97519504c4648731e81177fcb Mon Sep 17 00:00:00 2001 From: yangli Date: Mon, 20 Nov 2023 14:17:53 +0800 Subject: [PATCH 06/11] 1118 Signed-off-by: yangli --- .../test/unittest/sourceservice/dscreenmgr/BUILD.gn | 1 + 1 file changed, 1 insertion(+) diff --git a/services/screenservice/test/unittest/sourceservice/dscreenmgr/BUILD.gn b/services/screenservice/test/unittest/sourceservice/dscreenmgr/BUILD.gn index 5f052a74..9cd05153 100644 --- a/services/screenservice/test/unittest/sourceservice/dscreenmgr/BUILD.gn +++ b/services/screenservice/test/unittest/sourceservice/dscreenmgr/BUILD.gn @@ -79,6 +79,7 @@ ohos_unittest("DscreenMgrTest") { "distributed_hardware_fwk:distributedhardwareutils", "distributed_hardware_fwk:libdhfwk_sdk", "graphic_2d:libcomposer", + "graphic_2d:librender_service_client", "graphic_2d:surface", "graphic_2d:sync_fence", "hdf_core:libhdi", -- Gitee From de1010af739155bb2d4a43c406d3157da9091201 Mon Sep 17 00:00:00 2001 From: yangli Date: Mon, 20 Nov 2023 14:51:01 +0800 Subject: [PATCH 07/11] 1118 Signed-off-by: yangli --- .../dscreenmgr/common/src/screen_manager_adapter.cpp | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/services/screenservice/sourceservice/dscreenmgr/common/src/screen_manager_adapter.cpp b/services/screenservice/sourceservice/dscreenmgr/common/src/screen_manager_adapter.cpp index bfbe7404..bc01feb7 100644 --- a/services/screenservice/sourceservice/dscreenmgr/common/src/screen_manager_adapter.cpp +++ b/services/screenservice/sourceservice/dscreenmgr/common/src/screen_manager_adapter.cpp @@ -79,7 +79,6 @@ uint64_t ScreenMgrAdapter::CreateVirtualScreen(const std::string &devId, const s false }; - Rosen::RSInterfaces::GetInstance().SetVirtualScreenUsingStatus(true); uint64_t screenId = Rosen::ScreenManager::GetInstance().CreateVirtualScreen(option); DHLOGI("virtualScreen id is: %" PRIu64, screenId); screenIdMap_.emplace(screenName, screenId); @@ -152,7 +151,7 @@ int32_t ScreenMgrAdapter::SetImageSurface(uint64_t screenId, sptr return ERR_DH_SCREEN_SA_SET_IMAGESURFACE_FAIL; } DHLOGI("SetImageSurface for virtualscreen, screenId: %" PRIu64, screenId); - Rosen::RSInterfaces::GetInstance().SetVirtualScreenUsingStatus(false); + Rosen::RSInterfaces::GetInstance().SetVirtualScreenUsingStatus(true); Rosen::ScreenManager::GetInstance().SetVirtualScreenSurface(screenId, surface); return DH_SUCCESS; } -- Gitee From 58781ea5b7608441a7e4ed03ec5a4109e50e9f8e Mon Sep 17 00:00:00 2001 From: yangli Date: Mon, 20 Nov 2023 15:55:11 +0800 Subject: [PATCH 08/11] 1118 Signed-off-by: yangli --- .../screenservice/sourceservice/dscreenmgr/1.0/include/dscreen.h | 1 + .../screenservice/sourceservice/dscreenmgr/1.0/src/dscreen.cpp | 1 + .../screenservice/sourceservice/dscreenmgr/2.0/include/dscreen.h | 1 + .../screenservice/sourceservice/dscreenmgr/2.0/src/dscreen.cpp | 1 + 4 files changed, 4 insertions(+) diff --git a/services/screenservice/sourceservice/dscreenmgr/1.0/include/dscreen.h b/services/screenservice/sourceservice/dscreenmgr/1.0/include/dscreen.h index 2266d35e..fda3b09c 100644 --- a/services/screenservice/sourceservice/dscreenmgr/1.0/include/dscreen.h +++ b/services/screenservice/sourceservice/dscreenmgr/1.0/include/dscreen.h @@ -25,6 +25,7 @@ #include "iscreen_source_trans.h" #include "iscreen_source_trans_callback.h" #include "video_param.h" +#include "transaction/rs_interfaces.h" namespace OHOS { namespace DistributedHardware { diff --git a/services/screenservice/sourceservice/dscreenmgr/1.0/src/dscreen.cpp b/services/screenservice/sourceservice/dscreenmgr/1.0/src/dscreen.cpp index 631b584f..e0f64719 100644 --- a/services/screenservice/sourceservice/dscreenmgr/1.0/src/dscreen.cpp +++ b/services/screenservice/sourceservice/dscreenmgr/1.0/src/dscreen.cpp @@ -389,6 +389,7 @@ void DScreen::HandleDisconnect() return; } SetState(ENABLED); + Rosen::RSInterfaces::GetInstance().SetVirtualScreenUsingStatus(false); ReportScreenMirrorEvent(DSCREEN_PROJECT_END, GetAnonyString(devId_).c_str(), GetAnonyString(dhId_).c_str(), "dscreen disconnect success"); } diff --git a/services/screenservice/sourceservice/dscreenmgr/2.0/include/dscreen.h b/services/screenservice/sourceservice/dscreenmgr/2.0/include/dscreen.h index b1d65692..eb09e2ba 100644 --- a/services/screenservice/sourceservice/dscreenmgr/2.0/include/dscreen.h +++ b/services/screenservice/sourceservice/dscreenmgr/2.0/include/dscreen.h @@ -33,6 +33,7 @@ #include "histreamer_ability_parser.h" #include "video_param.h" #include "av_sender_engine_adapter.h" +#include "transaction/rs_interfaces.h" namespace OHOS { namespace DistributedHardware { diff --git a/services/screenservice/sourceservice/dscreenmgr/2.0/src/dscreen.cpp b/services/screenservice/sourceservice/dscreenmgr/2.0/src/dscreen.cpp index 85937238..c93f59dc 100644 --- a/services/screenservice/sourceservice/dscreenmgr/2.0/src/dscreen.cpp +++ b/services/screenservice/sourceservice/dscreenmgr/2.0/src/dscreen.cpp @@ -242,6 +242,7 @@ void DScreen::HandleDisconnect() } SetState(ENABLED); RemoveSurface(); + Rosen::RSInterfaces::GetInstance().SetVirtualScreenUsingStatus(false); ReportScreenMirrorEvent(DSCREEN_PROJECT_END, GetAnonyString(devId_).c_str(), GetAnonyString(dhId_).c_str(), "dscreen disconnect success"); } -- Gitee From 8fad7a3a3ce535f8b471c427e9239ac3b121e50a Mon Sep 17 00:00:00 2001 From: yangli Date: Mon, 20 Nov 2023 17:00:27 +0800 Subject: [PATCH 09/11] 1118 Signed-off-by: yangli --- .../fuzztest/sourceservice/dscreenmgr/onchange_fuzzer/BUILD.gn | 1 + 1 file changed, 1 insertion(+) diff --git a/services/screenservice/test/fuzztest/sourceservice/dscreenmgr/onchange_fuzzer/BUILD.gn b/services/screenservice/test/fuzztest/sourceservice/dscreenmgr/onchange_fuzzer/BUILD.gn index ca522c3e..8020d095 100644 --- a/services/screenservice/test/fuzztest/sourceservice/dscreenmgr/onchange_fuzzer/BUILD.gn +++ b/services/screenservice/test/fuzztest/sourceservice/dscreenmgr/onchange_fuzzer/BUILD.gn @@ -62,6 +62,7 @@ ohos_fuzztest("OnChangeFuzzTest") { external_deps = [ "c_utils:utils", "distributed_hardware_fwk:distributed_av_sender", + "graphic_2d:librender_service_client", "graphic_2d:surface", "window_manager:libdm", ] -- Gitee From 70b2e374919597c7f9d8e38153eab17d7fe835b7 Mon Sep 17 00:00:00 2001 From: yangli Date: Mon, 20 Nov 2023 17:48:30 +0800 Subject: [PATCH 10/11] 1118 Signed-off-by: yangli --- .../test/unittest/sinkservice/screenregionmgr/BUILD.gn | 1 + 1 file changed, 1 insertion(+) diff --git a/services/screenservice/test/unittest/sinkservice/screenregionmgr/BUILD.gn b/services/screenservice/test/unittest/sinkservice/screenregionmgr/BUILD.gn index 9b55ff11..94487ea9 100644 --- a/services/screenservice/test/unittest/sinkservice/screenregionmgr/BUILD.gn +++ b/services/screenservice/test/unittest/sinkservice/screenregionmgr/BUILD.gn @@ -75,6 +75,7 @@ ohos_unittest("DscreenRegionMgrTest") { "distributed_hardware_fwk:distributedhardwareutils", "graphic_2d:libcomposer", "graphic_2d:libgraphic_utils", + "graphic_2d:librender_service_client", "graphic_2d:surface", "hisysevent:libhisysevent", "window_manager:libdm", -- Gitee From 0003b38f4a5a2f028cabf6eeccafe011ea6f4582 Mon Sep 17 00:00:00 2001 From: yangli Date: Mon, 20 Nov 2023 17:50:55 +0800 Subject: [PATCH 11/11] 1118 Signed-off-by: yangli --- services/screenservice/sinkservice/BUILD.gn | 1 + 1 file changed, 1 insertion(+) diff --git a/services/screenservice/sinkservice/BUILD.gn b/services/screenservice/sinkservice/BUILD.gn index d3255df9..184f3d63 100644 --- a/services/screenservice/sinkservice/BUILD.gn +++ b/services/screenservice/sinkservice/BUILD.gn @@ -87,6 +87,7 @@ ohos_shared_library("distributed_screen_sink") { "distributed_hardware_fwk:distributed_av_receiver", "distributed_hardware_fwk:libdhfwk_sdk", "graphic_2d:libgraphic_utils", + "graphic_2d:librender_service_client", "graphic_2d:surface", "hisysevent:libhisysevent", "hitrace:hitrace_meter", -- Gitee