From 3a3e0f1cae91a474c4275f5277a222d038e83a1d Mon Sep 17 00:00:00 2001 From: Peng fafu Date: Thu, 6 Feb 2025 16:18:52 +0800 Subject: [PATCH 01/28] cross axis Signed-off-by: Peng fafu --- .../extension/extension_business_info.h | 3 + interfaces/innerkits/wm/window.h | 14 ++++ wm/include/window_extension_session_impl.h | 4 ++ wm/src/window_extension_session_impl.cpp | 40 +++++++++++ wm/src/window_session_impl.cpp | 28 ++++++++ .../window_extension_session_impl_test.cpp | 29 ++++++++ wm/test/unittest/window_session_impl_test.cpp | 67 ++++++++++++++++++- 7 files changed, 183 insertions(+), 2 deletions(-) diff --git a/interfaces/innerkits/extension/extension_business_info.h b/interfaces/innerkits/extension/extension_business_info.h index efc0c4b577..58742622c1 100644 --- a/interfaces/innerkits/extension/extension_business_info.h +++ b/interfaces/innerkits/extension/extension_business_info.h @@ -20,9 +20,12 @@ namespace OHOS::Rosen::Extension { constexpr const char* const WINDOW_MODE_FIELD = "windowMode"; +constexpr const char* const CROSS_AXIS_FIELD = "crossAxis"; +constexpr const char* const UIEXTENSION_CONFIG_FIELD = "ohos.system.window.uiextension.param"; enum class Businesscode : uint8_t { SYNC_HOST_WINDOW_MODE = 0, // Synchronize the host's window mode + SYNC_CROSS_AXIS_STATE, }; } // namespace OHOS::Rosen::Extension diff --git a/interfaces/innerkits/wm/window.h b/interfaces/innerkits/wm/window.h index d81b362e2a..ee9f0612e2 100644 --- a/interfaces/innerkits/wm/window.h +++ b/interfaces/innerkits/wm/window.h @@ -3140,6 +3140,20 @@ public: { return WMError::WM_OK; } + + /** + * @brief Get custom extension param. + * + * @param want the want to store param. + */ + virtual void GetExtensionConfig(AAFwk::WantParams& want) {} + + /** + * @brief Get custom extension param. + * + * @param want the want to update param. + */ + virtual void UpdateExtensionConfig(std::shared_ptr want) {} }; } } diff --git a/wm/include/window_extension_session_impl.h b/wm/include/window_extension_session_impl.h index c3df463b28..e5e3c16d06 100644 --- a/wm/include/window_extension_session_impl.h +++ b/wm/include/window_extension_session_impl.h @@ -131,6 +131,7 @@ public: */ static void UpdateConfigurationSyncForAll(const std::shared_ptr& configuration); void UpdateConfigurationSync(const std::shared_ptr& configuration) override; + CrossAxisState GetCrossAxisState() override; protected: NotifyTransferComponentDataFunc notifyTransferComponentDataFunc_; @@ -159,6 +160,9 @@ private: WMError SetUIContentInner(const std::string& contentInfo, napi_env env, napi_value storage, sptr token, AppExecFwk::Ability* ability, bool initByName = false); void RegisterDataConsumer(); + void RegisterConsumer(Extension::Businesscode code, + const std::function& reply)>& func); + WMError OnCrossAxisStateChange(AAFwk::Want&& data, std::optional& reply); std::shared_ptr dataHandler_; std::unordered_map dataConsumers_; // Read only after init diff --git a/wm/src/window_extension_session_impl.cpp b/wm/src/window_extension_session_impl.cpp index ad7a56bc45..0690c90992 100644 --- a/wm/src/window_extension_session_impl.cpp +++ b/wm/src/window_extension_session_impl.cpp @@ -1386,6 +1386,43 @@ WMError WindowExtensionSessionImpl::SetWindowMode(WindowMode mode) return WMError::WM_OK; } +WMError WindowExtensionSessionImpl::OnCrossAxisStateChange(AAFwk::Want&& data, std::optional& reply) +{ + auto state = data.GetIntParam(Extension::CROSS_AXIS_FIELD, 0); + if (state == static_cast(crossAxisState_)) + { + return; + } + if (state < static_cast(CrossAxisState::STATE_INVALID) || + state > static_cast(CrossAxisState::STATE_END)) { + TLOGE(WmsLogTag::WMS_UIEXT, "invalid CrossAxisState:%{public}d", state); + return WMError::WM_ERROR_INVALID_PARAM; + } + auto crossAxisState = static_cast(state); + crossAxisState_ = crossAxisState; + if (auto uiContent = GetUIContentSharedPtr()) { + uiContent->SendUIExtProprty(static_cast(Businesscode::SYNC_CROSS_AXIS_STATE), + data, SubSystemId::WM_UIEXT); + } + TLOGI(WmsLogTag::WMS_UIEXT, "CrossAxisState:%{public}d", state); + return WMError::WM_OK; +} + +CrossAxisState WindowExtensionSessionImpl::GetCrossAxisState() +{ + return crossAxisState_; +} + +void WindowExtensionSessionImpl::RegisterConsumer(Extension::Businesscode code, + const std::function& reply)>& func) +{ + auto consumer = [this, func](SubSystemId id, uint32_t customId, AAFwk::Want&& data, + std::optional& reply) -> int32_t { + return static_cast(func(std::move(data), reply)); + } + dataConsumers_.emplace(static_cast(code), std::move(windowModeConsumer)); +} + void WindowExtensionSessionImpl::RegisterDataConsumer() { auto windowModeConsumer = [this](SubSystemId id, uint32_t customId, AAFwk::Want&& data, @@ -1402,6 +1439,9 @@ void WindowExtensionSessionImpl::RegisterDataConsumer() }; dataConsumers_.emplace(static_cast(Extension::Businesscode::SYNC_HOST_WINDOW_MODE), std::move(windowModeConsumer)); + RegisterConsumer(Extension::Businesscode::SYNC_CROSS_AXIS_STATE, + std::bind(&WindowExtensionSessionImpl::OnCrossAxisStateChange, + this, std::placeholders::_1, std::placeholders::_2)) auto consumersEntry = [weakThis = wptr(this)](SubSystemId id, uint32_t customId, AAFwk::Want&& data, std::optional& reply) -> int32_t { diff --git a/wm/src/window_session_impl.cpp b/wm/src/window_session_impl.cpp index 46d74504ae..c3e3eb064e 100644 --- a/wm/src/window_session_impl.cpp +++ b/wm/src/window_session_impl.cpp @@ -2863,6 +2863,12 @@ void WindowSessionImpl::NotifyWindowCrossAxisChange(CrossAxisState state) TLOGI(WmsLogTag::WMS_LAYOUT, "id: %{public}d, cross axis state %{public}d", GetPersistentId(), static_cast(state)); crossAxisState_ = state; + AAFwk::Want want; + want.setParam(Extension::CROSS_AXIS_FIELD, static_cast(state)); + if (auto uiContent = GetUIContentSharedPtr()) { + uiContent->SendUIExtProprty(static_cast(Extension::Businesscode::SYNC_CROSS_AXIS_STATE), + want, SubSystemId::WM_UIEXT); + } std::lock_guard lockListener(windowTitleButtonRectChangeListenerMutex_); auto windowCrossAxisListeners = GetListeners(); for (const auto& listener : windowCrossAxisListeners) { @@ -5022,5 +5028,27 @@ void WindowSessionImpl::RegisterWindowInspectorCallback() }; WindowInspector::GetInstance().RegisterGetWMSWindowListCallback(GetWindowId(), std::move(getWMSWindowListCallback)); } + +void WindowSessionImpl::GetExtensionConfig(AAFwk::WantParams& want) +{ + want.setParam(Extension::CROSS_AXIS_FIELD, AAFwk::Integer::Box(static_cast(crossAxisState_))); +} + +void WindowSessionImpl::UpdateExtensionConfig(std::shared_ptr want) +{ + if (want == nullptr) + { + TLOGE(WmsLogTag::WMS_UIEXT, "null want ptr"); + return; + } + auto wantParam = want->GetParam(); + auto configParam = wantParam.GetWantParams(Extension::UIEXTENSION_CONFIG_FIELD); + auto state = configParam.GetIntParam(Extension::CROSS_AXIS_FIELD, 0); + if (state < static_cast(CrossAxisState::STATE_INVALID) || + state > static_cast(CrossAxisState::STATE_END)) { + crossAxisState_ = static_cast(state); + } + want->RemoveParam(Extension::UIEXTENSION_CONFIG_FIELD); +} } // namespace Rosen } // namespace OHOS diff --git a/wm/test/unittest/ui_extension/window_extension_session_impl_test.cpp b/wm/test/unittest/ui_extension/window_extension_session_impl_test.cpp index 8cd6ba149f..effa84fbd5 100644 --- a/wm/test/unittest/ui_extension/window_extension_session_impl_test.cpp +++ b/wm/test/unittest/ui_extension/window_extension_session_impl_test.cpp @@ -2252,6 +2252,35 @@ HWTEST_F(WindowExtensionSessionImplTest, NotifyExtensionDataConsumer01, Function // Verify window mode was updated ASSERT_EQ(WindowMode::WINDOW_MODE_FLOATING, window_->GetWindowMode()); } + +/** + * @tc.name: RegisterConsumer + * @tc.desc: RegisterConsumer Test + * @tc.type: FUNC + */ +HWTEST_F(WindowExtensionSessionImplTest, RegisterConsumer, Function | SmallTest | Level3) +{ + window->RegisterConsumer(Extension::Businesscode::SYNC_CROSS_AXIS_STATE, + std::bind(&WindowExtensionSessionImpl::OnCrossAxisStateChange, + window, std::placeholders::_1,, std::placeholders::_2)) + ASSERT_NE(nullptr, + window_->dataConsumers_[static_cast(Extension::Businesscode::SYNC_CROSS_AXIS_STATE)]); +} + +/** + * @tc.name: OnCrossAxisStateChange + * @tc.desc: OnCrossAxisStateChange Test + * @tc.type: FUNC + */ +HWTEST_F(WindowExtensionSessionImplTest, OnCrossAxisStateChange, Function | SmallTest | Level3) +{ + AAFwk::Want wamt; + AAFwk::Want reply; + want.SetParam(Extension::CROSS_AXIS_FIELD, static_cast(CrossAxisState::STATE_END)); + ASSERT_EQ(WMError::WM_OK, window->OnCrossAxisStateChange(std::move(wamt), reply)); + ASSERT_EQ(CrossAxisState::STATE_END, window->crossAxisState_); + +} } } // namespace Rosen } // namespace OHOS \ No newline at end of file diff --git a/wm/test/unittest/window_session_impl_test.cpp b/wm/test/unittest/window_session_impl_test.cpp index c78b398af5..c4b9e4c84c 100644 --- a/wm/test/unittest/window_session_impl_test.cpp +++ b/wm/test/unittest/window_session_impl_test.cpp @@ -1482,8 +1482,8 @@ HWTEST_F(WindowSessionImplTest, SetAPPWindowIcon, Function | SmallTest | Level2) ASSERT_EQ(res, WMError::WM_ERROR_NULLPTR); Media::InitializationOptions opts; - opts.size.width = 200; // 200: test width - opts.size.height = 300; // 300: test height + opts.size.width = 200; // 200ï¼? test width + opts.size.height = 300; // 300ï¼? test height opts.pixelFormat = Media::PixelFormat::ARGB_8888; opts.alphaType = Media::AlphaType::IMAGE_ALPHA_TYPE_OPAQUE; std::unique_ptr pixelMapPtr = Media::PixelMap::Create(opts); @@ -2041,6 +2041,69 @@ HWTEST_F(WindowSessionImplTest, GetBackgroundColor03, Function | SmallTest | Lev sptr window = sptr::MakeSptr(option); EXPECT_EQ(0xffffffff, window->GetBackgroundColor()); } + +/** + * @tc.name: GetExtensionConfig + * @tc.desc: GetExtensionConfig test + * @tc.type: FUNC + */ +HWTEST_F(WindowSessionImplTest, GetExtensionConfig, Function | SmallTest | Level3) +{ + sptr option = sptr::MakeSptr(); + option->SetWindowName("GetExtensionConfig"); + sptr window = sptr::MakeSptr(option); + window->crossAxisState_ = CrossAxisState::STATE_CROSS; + AAFwk::Want want; + window->GetExtensionConfig(want); + EXPECT_EQ(want.getIntParam(Extension::CROSS_AXIS_FIELD, 0), static_cast(CrossAxisState::STATE_CROSS)); + window->crossAxisState_ = CrossAxisState::STATE_INVALID; + window->GetExtensionConfig(want); + EXPECT_EQ(want.getIntParam(Extension::CROSS_AXIS_FIELD, 0), static_cast(CrossAxisState::STATE_INVALID)); + window->crossAxisState_ = CrossAxisState::STATE_NO_CROSS; + window->GetExtensionConfig(want); + EXPECT_EQ(want.getIntParam(Extension::CROSS_AXIS_FIELD, 0), static_cast(CrossAxisState::STATE_NO_CROSS)); + window->crossAxisState_ = CrossAxisState::STATE_END; + window->GetExtensionConfig(want); + EXPECT_EQ(want.getIntParam(Extension::CROSS_AXIS_FIELD, 0), static_cast(CrossAxisState::STATE_END)); +} + +/** + * @tc.name: UpdateExtensionConfig + * @tc.desc: UpdateExtensionConfig test + * @tc.type: FUNC + */ +HWTEST_F(WindowSessionImplTest, UpdateExtensionConfig, Function | SmallTest | Level3) +{ + sptr option = sptr::MakeSptr(); + option->SetWindowName("UpdateExtensionConfig"); + sptr window = sptr::MakeSptr(option); + window->crossAxisState_ = CrossAxisState::STATE_INVALID; + auto want = std::make_shared(); + window->UpdateExtensionConfig(want); + EXPECT_EQ(window->crossAxisState_, CrossAxisState::STATE_INVALID); + + AAFwk::WantParams wantParam; + wantParam.setParam(Extension::CROSS_AXIS_FIELD, + AAFwk::Integer::Box(static_cast(CrossAxisState::STATE_CROSS))); + want->GetParams().SetParam(Extension::UIEXTENSION_CONFIG_FIELD, AAFwk::WantParamsWrapper::Box(wantParam)) + window->UpdateExtensionConfig(want); + EXPECT_EQ(window->crossAxisState_, CrossAxisState::STATE_CROSS); + wantParam.setParam(Extension::CROSS_AXIS_FIELD, + AAFwk::Integer::Box(static_cast(CrossAxisState::STATE_INVALID))); + want->GetParams().SetParam(Extension::UIEXTENSION_CONFIG_FIELD, AAFwk::WantParamsWrapper::Box(wantParam)) + window->UpdateExtensionConfig(want); + EXPECT_EQ(window->crossAxisState_, CrossAxisState::STATE_INVALID); + wantParam.setParam(Extension::CROSS_AXIS_FIELD, + AAFwk::Integer::Box(static_cast(CrossAxisState::STATE_NO_CROSS))); + want->GetParams().SetParam(Extension::UIEXTENSION_CONFIG_FIELD, AAFwk::WantParamsWrapper::Box(wantParam)) + window->UpdateExtensionConfig(want); + EXPECT_EQ(window->crossAxisState_, CrossAxisState::STATE_NO_CROSS); + wantParam.setParam(Extension::CROSS_AXIS_FIELD, + AAFwk::Integer::Box(static_cast(CrossAxisState::STATE_END))); + want->GetParams().SetParam(Extension::UIEXTENSION_CONFIG_FIELD, AAFwk::WantParamsWrapper::Box(wantParam)) + window->UpdateExtensionConfig(want); + EXPECT_EQ(window->crossAxisState_, CrossAxisState::STATE_END); +} } // namespace } // namespace Rosen } // namespace OHOS -- Gitee From d858ffb053d2161ec95d1bcca8aa45f4a133e2d4 Mon Sep 17 00:00:00 2001 From: Peng fafu Date: Thu, 6 Feb 2025 16:38:39 +0800 Subject: [PATCH 02/28] cross axis Signed-off-by: Peng fafu --- wm/src/window_session_impl.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/wm/src/window_session_impl.cpp b/wm/src/window_session_impl.cpp index c3e3eb064e..2821f2540d 100644 --- a/wm/src/window_session_impl.cpp +++ b/wm/src/window_session_impl.cpp @@ -5049,6 +5049,7 @@ void WindowSessionImpl::UpdateExtensionConfig(std::shared_ptr want) crossAxisState_ = static_cast(state); } want->RemoveParam(Extension::UIEXTENSION_CONFIG_FIELD); + TLOGI(WmsLogTag::WMS_UIEXT, "CrossAxisState:%{public}d", state); } } // namespace Rosen } // namespace OHOS -- Gitee From 4f52e5fcaec00f604cb49378608da6d3ad0efddc Mon Sep 17 00:00:00 2001 From: wellplay Date: Thu, 6 Feb 2025 08:42:21 +0000 Subject: [PATCH 03/28] update wm/test/unittest/window_session_impl_test.cpp. Signed-off-by: wellplay --- wm/test/unittest/window_session_impl_test.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/wm/test/unittest/window_session_impl_test.cpp b/wm/test/unittest/window_session_impl_test.cpp index c4b9e4c84c..632c4ecf2e 100644 --- a/wm/test/unittest/window_session_impl_test.cpp +++ b/wm/test/unittest/window_session_impl_test.cpp @@ -1482,8 +1482,8 @@ HWTEST_F(WindowSessionImplTest, SetAPPWindowIcon, Function | SmallTest | Level2) ASSERT_EQ(res, WMError::WM_ERROR_NULLPTR); Media::InitializationOptions opts; - opts.size.width = 200; // 200ï¼? test width - opts.size.height = 300; // 300ï¼? test height + opts.size.width = 200; // 200: test width + opts.size.height = 300; // 300: test height opts.pixelFormat = Media::PixelFormat::ARGB_8888; opts.alphaType = Media::AlphaType::IMAGE_ALPHA_TYPE_OPAQUE; std::unique_ptr pixelMapPtr = Media::PixelMap::Create(opts); -- Gitee From c5a93a5b43269a6978f1b87013c8bc557d7971fe Mon Sep 17 00:00:00 2001 From: Peng fafu Date: Thu, 6 Feb 2025 17:00:31 +0800 Subject: [PATCH 04/28] cross axis Signed-off-by: Peng fafu --- wm/src/window_extension_session_impl.cpp | 2 +- wm/src/window_session_impl.cpp | 4 ++-- wm/test/unittest/window_session_impl_test.cpp | 4 ++-- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/wm/src/window_extension_session_impl.cpp b/wm/src/window_extension_session_impl.cpp index 0690c90992..7d97ba65d0 100644 --- a/wm/src/window_extension_session_impl.cpp +++ b/wm/src/window_extension_session_impl.cpp @@ -1401,7 +1401,7 @@ WMError WindowExtensionSessionImpl::OnCrossAxisStateChange(AAFwk::Want&& data, s auto crossAxisState = static_cast(state); crossAxisState_ = crossAxisState; if (auto uiContent = GetUIContentSharedPtr()) { - uiContent->SendUIExtProprty(static_cast(Businesscode::SYNC_CROSS_AXIS_STATE), + uiContent->SendUIExtProprty(static_cast(Extension::Businesscode::SYNC_CROSS_AXIS_STATE), data, SubSystemId::WM_UIEXT); } TLOGI(WmsLogTag::WMS_UIEXT, "CrossAxisState:%{public}d", state); diff --git a/wm/src/window_session_impl.cpp b/wm/src/window_session_impl.cpp index 2821f2540d..d25e25ee9e 100644 --- a/wm/src/window_session_impl.cpp +++ b/wm/src/window_session_impl.cpp @@ -5044,8 +5044,8 @@ void WindowSessionImpl::UpdateExtensionConfig(std::shared_ptr want) auto wantParam = want->GetParam(); auto configParam = wantParam.GetWantParams(Extension::UIEXTENSION_CONFIG_FIELD); auto state = configParam.GetIntParam(Extension::CROSS_AXIS_FIELD, 0); - if (state < static_cast(CrossAxisState::STATE_INVALID) || - state > static_cast(CrossAxisState::STATE_END)) { + if (state >= static_cast(CrossAxisState::STATE_INVALID) || + state <= static_cast(CrossAxisState::STATE_END)) { crossAxisState_ = static_cast(state); } want->RemoveParam(Extension::UIEXTENSION_CONFIG_FIELD); diff --git a/wm/test/unittest/window_session_impl_test.cpp b/wm/test/unittest/window_session_impl_test.cpp index c4b9e4c84c..5a2a117da9 100644 --- a/wm/test/unittest/window_session_impl_test.cpp +++ b/wm/test/unittest/window_session_impl_test.cpp @@ -1482,8 +1482,8 @@ HWTEST_F(WindowSessionImplTest, SetAPPWindowIcon, Function | SmallTest | Level2) ASSERT_EQ(res, WMError::WM_ERROR_NULLPTR); Media::InitializationOptions opts; - opts.size.width = 200; // 200ï¼? test width - opts.size.height = 300; // 300ï¼? test height + opts.size.width = 200; // 200£º test width + opts.size.height = 300; // 300£º test height opts.pixelFormat = Media::PixelFormat::ARGB_8888; opts.alphaType = Media::AlphaType::IMAGE_ALPHA_TYPE_OPAQUE; std::unique_ptr pixelMapPtr = Media::PixelMap::Create(opts); -- Gitee From 82120b77890faffbc7b421c04df163c7e8e29f77 Mon Sep 17 00:00:00 2001 From: Peng fafu Date: Thu, 6 Feb 2025 19:00:14 +0800 Subject: [PATCH 05/28] cross axis Signed-off-by: Peng fafu --- wm/include/window_extension_session_impl.h | 1 + wm/include/window_session_impl.h | 2 +- wm/src/window_extension_session_impl.cpp | 5 ++--- wm/src/window_session_impl.cpp | 4 +++- wm/test/unittest/window_session_impl_test.cpp | 2 ++ 5 files changed, 9 insertions(+), 5 deletions(-) diff --git a/wm/include/window_extension_session_impl.h b/wm/include/window_extension_session_impl.h index e5e3c16d06..982079173a 100644 --- a/wm/include/window_extension_session_impl.h +++ b/wm/include/window_extension_session_impl.h @@ -22,6 +22,7 @@ #include "accessibility_element_info.h" #include "extension_data_handler.h" +#include "extension/extension_business_info.h" namespace OHOS { namespace Rosen { diff --git a/wm/include/window_session_impl.h b/wm/include/window_session_impl.h index d4612cd088..497e21f521 100644 --- a/wm/include/window_session_impl.h +++ b/wm/include/window_session_impl.h @@ -509,6 +509,7 @@ protected: void UpdateVirtualPixelRatio(const sptr& display); WMError GetVirtualPixelRatio(float& vpr); mutable std::recursive_mutex transformMutex_; + std::atomic crossAxisState_; /* * Window Immersive @@ -693,7 +694,6 @@ private: int16_t rotationAnimationCount_ { 0 }; Transform layoutTransform_; SingleHandTransform singleHandTransform_; - std::atomic crossAxisState_; /* * Window Decor diff --git a/wm/src/window_extension_session_impl.cpp b/wm/src/window_extension_session_impl.cpp index 7d97ba65d0..ff9a60d547 100644 --- a/wm/src/window_extension_session_impl.cpp +++ b/wm/src/window_extension_session_impl.cpp @@ -25,7 +25,6 @@ #endif #include "display_info.h" -#include "extension/extension_business_info.h" #include "input_transfer_station.h" #include "perform_reporter.h" #include "session_permission.h" @@ -1389,7 +1388,7 @@ WMError WindowExtensionSessionImpl::SetWindowMode(WindowMode mode) WMError WindowExtensionSessionImpl::OnCrossAxisStateChange(AAFwk::Want&& data, std::optional& reply) { auto state = data.GetIntParam(Extension::CROSS_AXIS_FIELD, 0); - if (state == static_cast(crossAxisState_)) + if (state == static_cast(crossAxisState_.load())) { return; } @@ -1410,7 +1409,7 @@ WMError WindowExtensionSessionImpl::OnCrossAxisStateChange(AAFwk::Want&& data, s CrossAxisState WindowExtensionSessionImpl::GetCrossAxisState() { - return crossAxisState_; + return crossAxisState_.load(); } void WindowExtensionSessionImpl::RegisterConsumer(Extension::Businesscode code, diff --git a/wm/src/window_session_impl.cpp b/wm/src/window_session_impl.cpp index d25e25ee9e..a172c8eeee 100644 --- a/wm/src/window_session_impl.cpp +++ b/wm/src/window_session_impl.cpp @@ -23,6 +23,7 @@ #include #include #include +#include #ifdef IMF_ENABLE #include #endif // IMF_ENABLE @@ -31,6 +32,7 @@ #include "color_parser.h" #include "common/include/fold_screen_state_internel.h" +#include "extension/extension_business_info.h" #include "display_info.h" #include "display_manager.h" #include "hitrace_meter.h" @@ -5031,7 +5033,7 @@ void WindowSessionImpl::RegisterWindowInspectorCallback() void WindowSessionImpl::GetExtensionConfig(AAFwk::WantParams& want) { - want.setParam(Extension::CROSS_AXIS_FIELD, AAFwk::Integer::Box(static_cast(crossAxisState_))); + want.setParam(Extension::CROSS_AXIS_FIELD, AAFwk::Integer::Box(static_cast(crossAxisState_.load()))); } void WindowSessionImpl::UpdateExtensionConfig(std::shared_ptr want) diff --git a/wm/test/unittest/window_session_impl_test.cpp b/wm/test/unittest/window_session_impl_test.cpp index 5a2a117da9..bfc221751e 100644 --- a/wm/test/unittest/window_session_impl_test.cpp +++ b/wm/test/unittest/window_session_impl_test.cpp @@ -16,6 +16,8 @@ #include #include #include +#include +#include #include "ability_context_impl.h" #include "accessibility_event_info.h" -- Gitee From 656d0529d17de8523df0bfaede087b25c82fa5e2 Mon Sep 17 00:00:00 2001 From: Peng fafu Date: Thu, 6 Feb 2025 19:14:48 +0800 Subject: [PATCH 06/28] cross axis Signed-off-by: Peng fafu --- wm/src/window_session_impl.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/wm/src/window_session_impl.cpp b/wm/src/window_session_impl.cpp index a172c8eeee..165d6fda26 100644 --- a/wm/src/window_session_impl.cpp +++ b/wm/src/window_session_impl.cpp @@ -32,9 +32,9 @@ #include "color_parser.h" #include "common/include/fold_screen_state_internel.h" -#include "extension/extension_business_info.h" #include "display_info.h" #include "display_manager.h" +#include "extension/extension_business_info.h" #include "hitrace_meter.h" #include "session_permission.h" #include "key_event.h" -- Gitee From a06dbb89c0813d976fb9fecdbd3df7365009f5d1 Mon Sep 17 00:00:00 2001 From: Peng fafu Date: Fri, 7 Feb 2025 10:41:14 +0800 Subject: [PATCH 07/28] cross axis Signed-off-by: Peng fafu --- wm/test/unittest/window_session_impl_test.cpp | 33 +++++++++++-------- 1 file changed, 19 insertions(+), 14 deletions(-) diff --git a/wm/test/unittest/window_session_impl_test.cpp b/wm/test/unittest/window_session_impl_test.cpp index bfc221751e..f6155dc598 100644 --- a/wm/test/unittest/window_session_impl_test.cpp +++ b/wm/test/unittest/window_session_impl_test.cpp @@ -2055,18 +2055,18 @@ HWTEST_F(WindowSessionImplTest, GetExtensionConfig, Function | SmallTest | Level option->SetWindowName("GetExtensionConfig"); sptr window = sptr::MakeSptr(option); window->crossAxisState_ = CrossAxisState::STATE_CROSS; - AAFwk::Want want; + AAFwk::WantParams want; window->GetExtensionConfig(want); - EXPECT_EQ(want.getIntParam(Extension::CROSS_AXIS_FIELD, 0), static_cast(CrossAxisState::STATE_CROSS)); + EXPECT_EQ(want.GetIntParam(Extension::CROSS_AXIS_FIELD, 0), static_cast(CrossAxisState::STATE_CROSS)); window->crossAxisState_ = CrossAxisState::STATE_INVALID; window->GetExtensionConfig(want); - EXPECT_EQ(want.getIntParam(Extension::CROSS_AXIS_FIELD, 0), static_cast(CrossAxisState::STATE_INVALID)); + EXPECT_EQ(want.GetIntParam(Extension::CROSS_AXIS_FIELD, 0), static_cast(CrossAxisState::STATE_INVALID)); window->crossAxisState_ = CrossAxisState::STATE_NO_CROSS; window->GetExtensionConfig(want); - EXPECT_EQ(want.getIntParam(Extension::CROSS_AXIS_FIELD, 0), static_cast(CrossAxisState::STATE_NO_CROSS)); + EXPECT_EQ(want.GetIntParam(Extension::CROSS_AXIS_FIELD, 0), static_cast(CrossAxisState::STATE_NO_CROSS)); window->crossAxisState_ = CrossAxisState::STATE_END; window->GetExtensionConfig(want); - EXPECT_EQ(want.getIntParam(Extension::CROSS_AXIS_FIELD, 0), static_cast(CrossAxisState::STATE_END)); + EXPECT_EQ(want.GetIntParam(Extension::CROSS_AXIS_FIELD, 0), static_cast(CrossAxisState::STATE_END)); } /** @@ -2084,25 +2084,30 @@ HWTEST_F(WindowSessionImplTest, UpdateExtensionConfig, Function | SmallTest | Le window->UpdateExtensionConfig(want); EXPECT_EQ(window->crossAxisState_, CrossAxisState::STATE_INVALID); - AAFwk::WantParams wantParam; - wantParam.setParam(Extension::CROSS_AXIS_FIELD, + AAFwk::WantParams configParam; + AAFwk::WantParams wantParam(want->GetParams()); + configParam.SetParam(Extension::CROSS_AXIS_FIELD, AAFwk::Integer::Box(static_cast(CrossAxisState::STATE_CROSS))); - want->GetParams().SetParam(Extension::UIEXTENSION_CONFIG_FIELD, AAFwk::WantParamsWrapper::Box(wantParam)) + wantParam.SetParam(Extension::UIEXTENSION_CONFIG_FIELD, AAFwk::WantParamWrapper::Box(configParam)) + want->SetParams(wantParam); window->UpdateExtensionConfig(want); EXPECT_EQ(window->crossAxisState_, CrossAxisState::STATE_CROSS); - wantParam.setParam(Extension::CROSS_AXIS_FIELD, + configParam.SetParam(Extension::CROSS_AXIS_FIELD, AAFwk::Integer::Box(static_cast(CrossAxisState::STATE_INVALID))); - want->GetParams().SetParam(Extension::UIEXTENSION_CONFIG_FIELD, AAFwk::WantParamsWrapper::Box(wantParam)) + wantParam.SetParam(Extension::UIEXTENSION_CONFIG_FIELD, AAFwk::WantParamWrapper::Box(configParam)) + want->SetParams(wantParam); window->UpdateExtensionConfig(want); EXPECT_EQ(window->crossAxisState_, CrossAxisState::STATE_INVALID); - wantParam.setParam(Extension::CROSS_AXIS_FIELD, + configParam.SetParam(Extension::CROSS_AXIS_FIELD, AAFwk::Integer::Box(static_cast(CrossAxisState::STATE_NO_CROSS))); - want->GetParams().SetParam(Extension::UIEXTENSION_CONFIG_FIELD, AAFwk::WantParamsWrapper::Box(wantParam)) + wantParam.SetParam(Extension::UIEXTENSION_CONFIG_FIELD, AAFwk::WantParamWrapper::Box(configParam)) + want->SetParams(wantParam); window->UpdateExtensionConfig(want); EXPECT_EQ(window->crossAxisState_, CrossAxisState::STATE_NO_CROSS); - wantParam.setParam(Extension::CROSS_AXIS_FIELD, + configParam.SetParam(Extension::CROSS_AXIS_FIELD, AAFwk::Integer::Box(static_cast(CrossAxisState::STATE_END))); - want->GetParams().SetParam(Extension::UIEXTENSION_CONFIG_FIELD, AAFwk::WantParamsWrapper::Box(wantParam)) + wantParam.SetParam(Extension::UIEXTENSION_CONFIG_FIELD, AAFwk::WantParamWrapper::Box(configParam)) + want->SetParams(wantParam); window->UpdateExtensionConfig(want); EXPECT_EQ(window->crossAxisState_, CrossAxisState::STATE_END); } -- Gitee From d35a25ec5976453f094486e079ca9ef61de9aec9 Mon Sep 17 00:00:00 2001 From: Peng fafu Date: Fri, 7 Feb 2025 14:56:39 +0800 Subject: [PATCH 08/28] cross axis Signed-off-by: Peng fafu --- wm/src/window_extension_session_impl.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/wm/src/window_extension_session_impl.cpp b/wm/src/window_extension_session_impl.cpp index ff9a60d547..3e576d2f0c 100644 --- a/wm/src/window_extension_session_impl.cpp +++ b/wm/src/window_extension_session_impl.cpp @@ -1390,7 +1390,7 @@ WMError WindowExtensionSessionImpl::OnCrossAxisStateChange(AAFwk::Want&& data, s auto state = data.GetIntParam(Extension::CROSS_AXIS_FIELD, 0); if (state == static_cast(crossAxisState_.load())) { - return; + return WMError::WM_OK; } if (state < static_cast(CrossAxisState::STATE_INVALID) || state > static_cast(CrossAxisState::STATE_END)) { -- Gitee From a512d6a10761efb43b101c9d815086cea318dbef Mon Sep 17 00:00:00 2001 From: Peng fafu Date: Fri, 7 Feb 2025 18:03:11 +0800 Subject: [PATCH 09/28] cross axis Signed-off-by: Peng fafu --- wm/include/window_session_impl.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/wm/include/window_session_impl.h b/wm/include/window_session_impl.h index 497e21f521..6a260db1d3 100644 --- a/wm/include/window_session_impl.h +++ b/wm/include/window_session_impl.h @@ -206,6 +206,8 @@ public: WMError UnregisterScreenshotListener(const sptr& listener) override; void SetAceAbilityHandler(const sptr& handler) override; void SetInputEventConsumer(const std::shared_ptr& inputEventConsumer) override; + void GetExtensionConfig(AAFwk::WantParams& want) override; + void UpdateExtensionConfig(std::shared_ptr want) override; WMError SetBackgroundColor(const std::string& color) override; virtual Orientation GetRequestedOrientation() override; -- Gitee From 7d4c2a25c15a13f7178f198248b86d4fe514b586 Mon Sep 17 00:00:00 2001 From: Peng fafu Date: Fri, 7 Feb 2025 18:46:04 +0800 Subject: [PATCH 10/28] cross axis Signed-off-by: Peng fafu --- wm/src/window_extension_session_impl.cpp | 2 +- wm/src/window_session_impl.cpp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/wm/src/window_extension_session_impl.cpp b/wm/src/window_extension_session_impl.cpp index 3e576d2f0c..86c8781295 100644 --- a/wm/src/window_extension_session_impl.cpp +++ b/wm/src/window_extension_session_impl.cpp @@ -1401,7 +1401,7 @@ WMError WindowExtensionSessionImpl::OnCrossAxisStateChange(AAFwk::Want&& data, s crossAxisState_ = crossAxisState; if (auto uiContent = GetUIContentSharedPtr()) { uiContent->SendUIExtProprty(static_cast(Extension::Businesscode::SYNC_CROSS_AXIS_STATE), - data, SubSystemId::WM_UIEXT); + data, static_cast(SubSystemId::WM_UIEXT)); } TLOGI(WmsLogTag::WMS_UIEXT, "CrossAxisState:%{public}d", state); return WMError::WM_OK; diff --git a/wm/src/window_session_impl.cpp b/wm/src/window_session_impl.cpp index 165d6fda26..ddef1d76a1 100644 --- a/wm/src/window_session_impl.cpp +++ b/wm/src/window_session_impl.cpp @@ -2869,7 +2869,7 @@ void WindowSessionImpl::NotifyWindowCrossAxisChange(CrossAxisState state) want.setParam(Extension::CROSS_AXIS_FIELD, static_cast(state)); if (auto uiContent = GetUIContentSharedPtr()) { uiContent->SendUIExtProprty(static_cast(Extension::Businesscode::SYNC_CROSS_AXIS_STATE), - want, SubSystemId::WM_UIEXT); + want, static_cast(SubSystemId::WM_UIEXT)); } std::lock_guard lockListener(windowTitleButtonRectChangeListenerMutex_); auto windowCrossAxisListeners = GetListeners(); -- Gitee From 2179f0e781af9e4f1402ecf6477014723f35b71a Mon Sep 17 00:00:00 2001 From: Peng fafu Date: Sat, 8 Feb 2025 09:07:49 +0800 Subject: [PATCH 11/28] cross axis Signed-off-by: Peng fafu --- wm/src/window_extension_session_impl.cpp | 3 +-- wm/src/window_session_impl.cpp | 3 +-- .../ui_extension/window_extension_session_impl_test.cpp | 3 +-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/wm/src/window_extension_session_impl.cpp b/wm/src/window_extension_session_impl.cpp index 86c8781295..104b617f96 100644 --- a/wm/src/window_extension_session_impl.cpp +++ b/wm/src/window_extension_session_impl.cpp @@ -1388,8 +1388,7 @@ WMError WindowExtensionSessionImpl::SetWindowMode(WindowMode mode) WMError WindowExtensionSessionImpl::OnCrossAxisStateChange(AAFwk::Want&& data, std::optional& reply) { auto state = data.GetIntParam(Extension::CROSS_AXIS_FIELD, 0); - if (state == static_cast(crossAxisState_.load())) - { + if (state == static_cast(crossAxisState_.load())) { return WMError::WM_OK; } if (state < static_cast(CrossAxisState::STATE_INVALID) || diff --git a/wm/src/window_session_impl.cpp b/wm/src/window_session_impl.cpp index ddef1d76a1..ed2acb6cbf 100644 --- a/wm/src/window_session_impl.cpp +++ b/wm/src/window_session_impl.cpp @@ -5038,8 +5038,7 @@ void WindowSessionImpl::GetExtensionConfig(AAFwk::WantParams& want) void WindowSessionImpl::UpdateExtensionConfig(std::shared_ptr want) { - if (want == nullptr) - { + if (want == nullptr) { TLOGE(WmsLogTag::WMS_UIEXT, "null want ptr"); return; } diff --git a/wm/test/unittest/ui_extension/window_extension_session_impl_test.cpp b/wm/test/unittest/ui_extension/window_extension_session_impl_test.cpp index effa84fbd5..4a4b40a52e 100644 --- a/wm/test/unittest/ui_extension/window_extension_session_impl_test.cpp +++ b/wm/test/unittest/ui_extension/window_extension_session_impl_test.cpp @@ -2262,7 +2262,7 @@ HWTEST_F(WindowExtensionSessionImplTest, RegisterConsumer, Function | SmallTest { window->RegisterConsumer(Extension::Businesscode::SYNC_CROSS_AXIS_STATE, std::bind(&WindowExtensionSessionImpl::OnCrossAxisStateChange, - window, std::placeholders::_1,, std::placeholders::_2)) + window, std::placeholders::_1, std::placeholders::_2)) ASSERT_NE(nullptr, window_->dataConsumers_[static_cast(Extension::Businesscode::SYNC_CROSS_AXIS_STATE)]); } @@ -2279,7 +2279,6 @@ HWTEST_F(WindowExtensionSessionImplTest, OnCrossAxisStateChange, Function | Smal want.SetParam(Extension::CROSS_AXIS_FIELD, static_cast(CrossAxisState::STATE_END)); ASSERT_EQ(WMError::WM_OK, window->OnCrossAxisStateChange(std::move(wamt), reply)); ASSERT_EQ(CrossAxisState::STATE_END, window->crossAxisState_); - } } } // namespace Rosen -- Gitee From 924c276c3e12f6d0b076bc4f8997a57f62b39fc4 Mon Sep 17 00:00:00 2001 From: Peng fafu Date: Sat, 8 Feb 2025 09:21:16 +0800 Subject: [PATCH 12/28] cross axis Signed-off-by: Peng fafu --- wm/test/unittest/window_session_impl_test.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/wm/test/unittest/window_session_impl_test.cpp b/wm/test/unittest/window_session_impl_test.cpp index f6155dc598..2ac86a93ae 100644 --- a/wm/test/unittest/window_session_impl_test.cpp +++ b/wm/test/unittest/window_session_impl_test.cpp @@ -1484,8 +1484,8 @@ HWTEST_F(WindowSessionImplTest, SetAPPWindowIcon, Function | SmallTest | Level2) ASSERT_EQ(res, WMError::WM_ERROR_NULLPTR); Media::InitializationOptions opts; - opts.size.width = 200; // 200£º test width - opts.size.height = 300; // 300£º test height + opts.size.width = 200; // 200: test width + opts.size.height = 300; // 300: test height opts.pixelFormat = Media::PixelFormat::ARGB_8888; opts.alphaType = Media::AlphaType::IMAGE_ALPHA_TYPE_OPAQUE; std::unique_ptr pixelMapPtr = Media::PixelMap::Create(opts); -- Gitee From 8cd9970645702559bcb57827b240d33bdc32c664 Mon Sep 17 00:00:00 2001 From: Peng fafu Date: Sat, 8 Feb 2025 14:56:31 +0800 Subject: [PATCH 13/28] cross axis Signed-off-by: Peng fafu --- .../innerkits/extension/extension_business_info.h | 2 +- wm/src/window_session_impl.cpp | 4 ++-- wm/test/unittest/window_session_impl_test.cpp | 11 ++++++----- 3 files changed, 9 insertions(+), 8 deletions(-) diff --git a/interfaces/innerkits/extension/extension_business_info.h b/interfaces/innerkits/extension/extension_business_info.h index 58742622c1..ea304e1ea9 100644 --- a/interfaces/innerkits/extension/extension_business_info.h +++ b/interfaces/innerkits/extension/extension_business_info.h @@ -21,7 +21,7 @@ namespace OHOS::Rosen::Extension { constexpr const char* const WINDOW_MODE_FIELD = "windowMode"; constexpr const char* const CROSS_AXIS_FIELD = "crossAxis"; -constexpr const char* const UIEXTENSION_CONFIG_FIELD = "ohos.system.window.uiextension.param"; +constexpr const char* const UIEXTENSION_CONFIG_FIELD = "ohos.system.window.uiextension.params"; enum class Businesscode : uint8_t { SYNC_HOST_WINDOW_MODE = 0, // Synchronize the host's window mode diff --git a/wm/src/window_session_impl.cpp b/wm/src/window_session_impl.cpp index ed2acb6cbf..78441eeefe 100644 --- a/wm/src/window_session_impl.cpp +++ b/wm/src/window_session_impl.cpp @@ -5042,10 +5042,10 @@ void WindowSessionImpl::UpdateExtensionConfig(std::shared_ptr want) TLOGE(WmsLogTag::WMS_UIEXT, "null want ptr"); return; } - auto wantParam = want->GetParam(); + auto wantParam = want->GetParams(); auto configParam = wantParam.GetWantParams(Extension::UIEXTENSION_CONFIG_FIELD); auto state = configParam.GetIntParam(Extension::CROSS_AXIS_FIELD, 0); - if (state >= static_cast(CrossAxisState::STATE_INVALID) || + if (state >= static_cast(CrossAxisState::STATE_INVALID) && state <= static_cast(CrossAxisState::STATE_END)) { crossAxisState_ = static_cast(state); } diff --git a/wm/test/unittest/window_session_impl_test.cpp b/wm/test/unittest/window_session_impl_test.cpp index 2ac86a93ae..5aa496e86a 100644 --- a/wm/test/unittest/window_session_impl_test.cpp +++ b/wm/test/unittest/window_session_impl_test.cpp @@ -22,6 +22,7 @@ #include "ability_context_impl.h" #include "accessibility_event_info.h" #include "color_parser.h" +#include "extension/extension_business_info.h" #include "mock_session.h" #include "mock_uicontent.h" #include "mock_window.h" @@ -2082,7 +2083,7 @@ HWTEST_F(WindowSessionImplTest, UpdateExtensionConfig, Function | SmallTest | Le window->crossAxisState_ = CrossAxisState::STATE_INVALID; auto want = std::make_shared(); window->UpdateExtensionConfig(want); - EXPECT_EQ(window->crossAxisState_, CrossAxisState::STATE_INVALID); + EXPECT_EQ(window->crossAxisState_.load(), CrossAxisState::STATE_INVALID); AAFwk::WantParams configParam; AAFwk::WantParams wantParam(want->GetParams()); @@ -2091,25 +2092,25 @@ HWTEST_F(WindowSessionImplTest, UpdateExtensionConfig, Function | SmallTest | Le wantParam.SetParam(Extension::UIEXTENSION_CONFIG_FIELD, AAFwk::WantParamWrapper::Box(configParam)) want->SetParams(wantParam); window->UpdateExtensionConfig(want); - EXPECT_EQ(window->crossAxisState_, CrossAxisState::STATE_CROSS); + EXPECT_EQ(window->crossAxisState_.load(), CrossAxisState::STATE_CROSS); configParam.SetParam(Extension::CROSS_AXIS_FIELD, AAFwk::Integer::Box(static_cast(CrossAxisState::STATE_INVALID))); wantParam.SetParam(Extension::UIEXTENSION_CONFIG_FIELD, AAFwk::WantParamWrapper::Box(configParam)) want->SetParams(wantParam); window->UpdateExtensionConfig(want); - EXPECT_EQ(window->crossAxisState_, CrossAxisState::STATE_INVALID); + EXPECT_EQ(window->crossAxisState_.load(), CrossAxisState::STATE_INVALID); configParam.SetParam(Extension::CROSS_AXIS_FIELD, AAFwk::Integer::Box(static_cast(CrossAxisState::STATE_NO_CROSS))); wantParam.SetParam(Extension::UIEXTENSION_CONFIG_FIELD, AAFwk::WantParamWrapper::Box(configParam)) want->SetParams(wantParam); window->UpdateExtensionConfig(want); - EXPECT_EQ(window->crossAxisState_, CrossAxisState::STATE_NO_CROSS); + EXPECT_EQ(window->crossAxisState_.load(), CrossAxisState::STATE_NO_CROSS); configParam.SetParam(Extension::CROSS_AXIS_FIELD, AAFwk::Integer::Box(static_cast(CrossAxisState::STATE_END))); wantParam.SetParam(Extension::UIEXTENSION_CONFIG_FIELD, AAFwk::WantParamWrapper::Box(configParam)) want->SetParams(wantParam); window->UpdateExtensionConfig(want); - EXPECT_EQ(window->crossAxisState_, CrossAxisState::STATE_END); + EXPECT_EQ(window->crossAxisState_.load(), CrossAxisState::STATE_END); } } // namespace } // namespace Rosen -- Gitee From 7d604d825517b266e968b2660bb83fc0542a9b8f Mon Sep 17 00:00:00 2001 From: Peng fafu Date: Sat, 8 Feb 2025 15:28:21 +0800 Subject: [PATCH 14/28] cross axis Signed-off-by: Peng fafu --- wm/src/window_extension_session_impl.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/wm/src/window_extension_session_impl.cpp b/wm/src/window_extension_session_impl.cpp index 104b617f96..95ea307eb3 100644 --- a/wm/src/window_extension_session_impl.cpp +++ b/wm/src/window_extension_session_impl.cpp @@ -1415,7 +1415,7 @@ void WindowExtensionSessionImpl::RegisterConsumer(Extension::Businesscode code, const std::function& reply)>& func) { auto consumer = [this, func](SubSystemId id, uint32_t customId, AAFwk::Want&& data, - std::optional& reply) -> int32_t { + std::optional& reply) { return static_cast(func(std::move(data), reply)); } dataConsumers_.emplace(static_cast(code), std::move(windowModeConsumer)); -- Gitee From fe063e229c110e5f9ecc9ca2583f988b36f4403c Mon Sep 17 00:00:00 2001 From: Peng fafu Date: Sat, 8 Feb 2025 15:35:36 +0800 Subject: [PATCH 15/28] cross axis Signed-off-by: Peng fafu --- wm/src/window_extension_session_impl.cpp | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/wm/src/window_extension_session_impl.cpp b/wm/src/window_extension_session_impl.cpp index 95ea307eb3..cf2110c040 100644 --- a/wm/src/window_extension_session_impl.cpp +++ b/wm/src/window_extension_session_impl.cpp @@ -1396,8 +1396,7 @@ WMError WindowExtensionSessionImpl::OnCrossAxisStateChange(AAFwk::Want&& data, s TLOGE(WmsLogTag::WMS_UIEXT, "invalid CrossAxisState:%{public}d", state); return WMError::WM_ERROR_INVALID_PARAM; } - auto crossAxisState = static_cast(state); - crossAxisState_ = crossAxisState; + crossAxisState_ = static_cast(state);; if (auto uiContent = GetUIContentSharedPtr()) { uiContent->SendUIExtProprty(static_cast(Extension::Businesscode::SYNC_CROSS_AXIS_STATE), data, static_cast(SubSystemId::WM_UIEXT)); -- Gitee From ccf0a7cb8e97d034f4ef9f17f2b60ee208631424 Mon Sep 17 00:00:00 2001 From: Peng fafu Date: Sat, 8 Feb 2025 16:30:59 +0800 Subject: [PATCH 16/28] cross axis Signed-off-by: Peng fafu --- interfaces/innerkits/wm/window.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/interfaces/innerkits/wm/window.h b/interfaces/innerkits/wm/window.h index ee9f0612e2..c7784f2775 100644 --- a/interfaces/innerkits/wm/window.h +++ b/interfaces/innerkits/wm/window.h @@ -3149,7 +3149,7 @@ public: virtual void GetExtensionConfig(AAFwk::WantParams& want) {} /** - * @brief Get custom extension param. + * @brief Update custom extension param. * * @param want the want to update param. */ -- Gitee From 5da8b16895141cebdbe0bae787360a9cc5290477 Mon Sep 17 00:00:00 2001 From: Peng fafu Date: Sat, 8 Feb 2025 16:51:26 +0800 Subject: [PATCH 17/28] cross axis Signed-off-by: Peng fafu --- wm/src/window_extension_session_impl.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/wm/src/window_extension_session_impl.cpp b/wm/src/window_extension_session_impl.cpp index cf2110c040..0d48e5267d 100644 --- a/wm/src/window_extension_session_impl.cpp +++ b/wm/src/window_extension_session_impl.cpp @@ -1396,7 +1396,7 @@ WMError WindowExtensionSessionImpl::OnCrossAxisStateChange(AAFwk::Want&& data, s TLOGE(WmsLogTag::WMS_UIEXT, "invalid CrossAxisState:%{public}d", state); return WMError::WM_ERROR_INVALID_PARAM; } - crossAxisState_ = static_cast(state);; + crossAxisState_ = static_cast(state); if (auto uiContent = GetUIContentSharedPtr()) { uiContent->SendUIExtProprty(static_cast(Extension::Businesscode::SYNC_CROSS_AXIS_STATE), data, static_cast(SubSystemId::WM_UIEXT)); -- Gitee From 731d9cab437ef5dd35b2d93719cc5ef2807f77a4 Mon Sep 17 00:00:00 2001 From: Peng fafu Date: Sat, 8 Feb 2025 17:20:33 +0800 Subject: [PATCH 18/28] cross axis Signed-off-by: Peng fafu --- wm/include/window_session_impl.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/wm/include/window_session_impl.h b/wm/include/window_session_impl.h index 6a260db1d3..2bdfb0a387 100644 --- a/wm/include/window_session_impl.h +++ b/wm/include/window_session_impl.h @@ -511,7 +511,7 @@ protected: void UpdateVirtualPixelRatio(const sptr& display); WMError GetVirtualPixelRatio(float& vpr); mutable std::recursive_mutex transformMutex_; - std::atomic crossAxisState_; + std::atomic crossAxisState_ = CrossAxisState::STATE_INVALID; /* * Window Immersive -- Gitee From 7cb12e447fbe81b482852ddec834a3423d65ac77 Mon Sep 17 00:00:00 2001 From: Peng fafu Date: Sat, 8 Feb 2025 18:13:26 +0800 Subject: [PATCH 19/28] cross axis Signed-off-by: Peng fafu --- wm/src/window_extension_session_impl.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/wm/src/window_extension_session_impl.cpp b/wm/src/window_extension_session_impl.cpp index 0d48e5267d..06e119f1bf 100644 --- a/wm/src/window_extension_session_impl.cpp +++ b/wm/src/window_extension_session_impl.cpp @@ -1417,7 +1417,7 @@ void WindowExtensionSessionImpl::RegisterConsumer(Extension::Businesscode code, std::optional& reply) { return static_cast(func(std::move(data), reply)); } - dataConsumers_.emplace(static_cast(code), std::move(windowModeConsumer)); + dataConsumers_.emplace(static_cast(code), std::move(consumer)); } void WindowExtensionSessionImpl::RegisterDataConsumer() -- Gitee From 0ec77bab2ddb2be55ea09c4fc5834dd3b811f924 Mon Sep 17 00:00:00 2001 From: Peng fafu Date: Sat, 8 Feb 2025 19:00:01 +0800 Subject: [PATCH 20/28] cross axis Signed-off-by: Peng fafu --- wm/src/window_extension_session_impl.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/wm/src/window_extension_session_impl.cpp b/wm/src/window_extension_session_impl.cpp index 06e119f1bf..8d55cb72f3 100644 --- a/wm/src/window_extension_session_impl.cpp +++ b/wm/src/window_extension_session_impl.cpp @@ -1438,7 +1438,7 @@ void WindowExtensionSessionImpl::RegisterDataConsumer() std::move(windowModeConsumer)); RegisterConsumer(Extension::Businesscode::SYNC_CROSS_AXIS_STATE, std::bind(&WindowExtensionSessionImpl::OnCrossAxisStateChange, - this, std::placeholders::_1, std::placeholders::_2)) + this, std::placeholders::_1, std::placeholders::_2)); auto consumersEntry = [weakThis = wptr(this)](SubSystemId id, uint32_t customId, AAFwk::Want&& data, std::optional& reply) -> int32_t { -- Gitee From bf4fe830999dd9baa4998bb9412cb58c814d8531 Mon Sep 17 00:00:00 2001 From: Peng fafu Date: Sat, 8 Feb 2025 19:03:14 +0800 Subject: [PATCH 21/28] cross axis Signed-off-by: Peng fafu --- .../ui_extension/window_extension_session_impl_test.cpp | 2 +- wm/test/unittest/window_session_impl_test.cpp | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/wm/test/unittest/ui_extension/window_extension_session_impl_test.cpp b/wm/test/unittest/ui_extension/window_extension_session_impl_test.cpp index 4a4b40a52e..80fb9b02fb 100644 --- a/wm/test/unittest/ui_extension/window_extension_session_impl_test.cpp +++ b/wm/test/unittest/ui_extension/window_extension_session_impl_test.cpp @@ -2262,7 +2262,7 @@ HWTEST_F(WindowExtensionSessionImplTest, RegisterConsumer, Function | SmallTest { window->RegisterConsumer(Extension::Businesscode::SYNC_CROSS_AXIS_STATE, std::bind(&WindowExtensionSessionImpl::OnCrossAxisStateChange, - window, std::placeholders::_1, std::placeholders::_2)) + window, std::placeholders::_1, std::placeholders::_2)); ASSERT_NE(nullptr, window_->dataConsumers_[static_cast(Extension::Businesscode::SYNC_CROSS_AXIS_STATE)]); } diff --git a/wm/test/unittest/window_session_impl_test.cpp b/wm/test/unittest/window_session_impl_test.cpp index 5aa496e86a..71cc0dc191 100644 --- a/wm/test/unittest/window_session_impl_test.cpp +++ b/wm/test/unittest/window_session_impl_test.cpp @@ -2089,25 +2089,25 @@ HWTEST_F(WindowSessionImplTest, UpdateExtensionConfig, Function | SmallTest | Le AAFwk::WantParams wantParam(want->GetParams()); configParam.SetParam(Extension::CROSS_AXIS_FIELD, AAFwk::Integer::Box(static_cast(CrossAxisState::STATE_CROSS))); - wantParam.SetParam(Extension::UIEXTENSION_CONFIG_FIELD, AAFwk::WantParamWrapper::Box(configParam)) + wantParam.SetParam(Extension::UIEXTENSION_CONFIG_FIELD, AAFwk::WantParamWrapper::Box(configParam)); want->SetParams(wantParam); window->UpdateExtensionConfig(want); EXPECT_EQ(window->crossAxisState_.load(), CrossAxisState::STATE_CROSS); configParam.SetParam(Extension::CROSS_AXIS_FIELD, AAFwk::Integer::Box(static_cast(CrossAxisState::STATE_INVALID))); - wantParam.SetParam(Extension::UIEXTENSION_CONFIG_FIELD, AAFwk::WantParamWrapper::Box(configParam)) + wantParam.SetParam(Extension::UIEXTENSION_CONFIG_FIELD, AAFwk::WantParamWrapper::Box(configParam)); want->SetParams(wantParam); window->UpdateExtensionConfig(want); EXPECT_EQ(window->crossAxisState_.load(), CrossAxisState::STATE_INVALID); configParam.SetParam(Extension::CROSS_AXIS_FIELD, AAFwk::Integer::Box(static_cast(CrossAxisState::STATE_NO_CROSS))); - wantParam.SetParam(Extension::UIEXTENSION_CONFIG_FIELD, AAFwk::WantParamWrapper::Box(configParam)) + wantParam.SetParam(Extension::UIEXTENSION_CONFIG_FIELD, AAFwk::WantParamWrapper::Box(configParam)); want->SetParams(wantParam); window->UpdateExtensionConfig(want); EXPECT_EQ(window->crossAxisState_.load(), CrossAxisState::STATE_NO_CROSS); configParam.SetParam(Extension::CROSS_AXIS_FIELD, AAFwk::Integer::Box(static_cast(CrossAxisState::STATE_END))); - wantParam.SetParam(Extension::UIEXTENSION_CONFIG_FIELD, AAFwk::WantParamWrapper::Box(configParam)) + wantParam.SetParam(Extension::UIEXTENSION_CONFIG_FIELD, AAFwk::WantParamWrapper::Box(configParam)); want->SetParams(wantParam); window->UpdateExtensionConfig(want); EXPECT_EQ(window->crossAxisState_.load(), CrossAxisState::STATE_END); -- Gitee From ed06372348a47ea5343234bb9f34f9745e8dd247 Mon Sep 17 00:00:00 2001 From: Peng fafu Date: Sat, 8 Feb 2025 19:35:26 +0800 Subject: [PATCH 22/28] cross axis Signed-off-by: Peng fafu --- wm/src/window_extension_session_impl.cpp | 2 +- wm/src/window_session_impl.cpp | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/wm/src/window_extension_session_impl.cpp b/wm/src/window_extension_session_impl.cpp index 8d55cb72f3..b2db8a9608 100644 --- a/wm/src/window_extension_session_impl.cpp +++ b/wm/src/window_extension_session_impl.cpp @@ -1416,7 +1416,7 @@ void WindowExtensionSessionImpl::RegisterConsumer(Extension::Businesscode code, auto consumer = [this, func](SubSystemId id, uint32_t customId, AAFwk::Want&& data, std::optional& reply) { return static_cast(func(std::move(data), reply)); - } + }; dataConsumers_.emplace(static_cast(code), std::move(consumer)); } diff --git a/wm/src/window_session_impl.cpp b/wm/src/window_session_impl.cpp index 78441eeefe..7a75b8ff4b 100644 --- a/wm/src/window_session_impl.cpp +++ b/wm/src/window_session_impl.cpp @@ -2866,7 +2866,7 @@ void WindowSessionImpl::NotifyWindowCrossAxisChange(CrossAxisState state) static_cast(state)); crossAxisState_ = state; AAFwk::Want want; - want.setParam(Extension::CROSS_AXIS_FIELD, static_cast(state)); + want.SetParam(Extension::CROSS_AXIS_FIELD, static_cast(state)); if (auto uiContent = GetUIContentSharedPtr()) { uiContent->SendUIExtProprty(static_cast(Extension::Businesscode::SYNC_CROSS_AXIS_STATE), want, static_cast(SubSystemId::WM_UIEXT)); @@ -5033,7 +5033,7 @@ void WindowSessionImpl::RegisterWindowInspectorCallback() void WindowSessionImpl::GetExtensionConfig(AAFwk::WantParams& want) { - want.setParam(Extension::CROSS_AXIS_FIELD, AAFwk::Integer::Box(static_cast(crossAxisState_.load()))); + want.SetParam(Extension::CROSS_AXIS_FIELD, AAFwk::Integer::Box(static_cast(crossAxisState_.load()))); } void WindowSessionImpl::UpdateExtensionConfig(std::shared_ptr want) -- Gitee From ed39381d7ddb8043b73bbb44a1562d1d392dc7bd Mon Sep 17 00:00:00 2001 From: Peng fafu Date: Sat, 8 Feb 2025 20:49:29 +0800 Subject: [PATCH 23/28] cross axis Signed-off-by: Peng fafu --- wm/src/window_session_impl.cpp | 4 ++-- wm/test/unittest/window_session_impl_test.cpp | 12 ++++++------ 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/wm/src/window_session_impl.cpp b/wm/src/window_session_impl.cpp index 7a75b8ff4b..1897ef36ad 100644 --- a/wm/src/window_session_impl.cpp +++ b/wm/src/window_session_impl.cpp @@ -2866,7 +2866,7 @@ void WindowSessionImpl::NotifyWindowCrossAxisChange(CrossAxisState state) static_cast(state)); crossAxisState_ = state; AAFwk::Want want; - want.SetParam(Extension::CROSS_AXIS_FIELD, static_cast(state)); + want.SetParam(Extension::CROSS_AXIS_FIELD, static_cast(state)); if (auto uiContent = GetUIContentSharedPtr()) { uiContent->SendUIExtProprty(static_cast(Extension::Businesscode::SYNC_CROSS_AXIS_STATE), want, static_cast(SubSystemId::WM_UIEXT)); @@ -5033,7 +5033,7 @@ void WindowSessionImpl::RegisterWindowInspectorCallback() void WindowSessionImpl::GetExtensionConfig(AAFwk::WantParams& want) { - want.SetParam(Extension::CROSS_AXIS_FIELD, AAFwk::Integer::Box(static_cast(crossAxisState_.load()))); + want.SetParam(Extension::CROSS_AXIS_FIELD, AAFwk::Integer::Box(static_cast(crossAxisState_.load()))); } void WindowSessionImpl::UpdateExtensionConfig(std::shared_ptr want) diff --git a/wm/test/unittest/window_session_impl_test.cpp b/wm/test/unittest/window_session_impl_test.cpp index 71cc0dc191..20b9e1a29d 100644 --- a/wm/test/unittest/window_session_impl_test.cpp +++ b/wm/test/unittest/window_session_impl_test.cpp @@ -1485,8 +1485,8 @@ HWTEST_F(WindowSessionImplTest, SetAPPWindowIcon, Function | SmallTest | Level2) ASSERT_EQ(res, WMError::WM_ERROR_NULLPTR); Media::InitializationOptions opts; - opts.size.width = 200; // 200: test width - opts.size.height = 300; // 300: test height + opts.size.width = 200; // 200锛� test width + opts.size.height = 300; // 300锛� test height opts.pixelFormat = Media::PixelFormat::ARGB_8888; opts.alphaType = Media::AlphaType::IMAGE_ALPHA_TYPE_OPAQUE; std::unique_ptr pixelMapPtr = Media::PixelMap::Create(opts); @@ -2088,25 +2088,25 @@ HWTEST_F(WindowSessionImplTest, UpdateExtensionConfig, Function | SmallTest | Le AAFwk::WantParams configParam; AAFwk::WantParams wantParam(want->GetParams()); configParam.SetParam(Extension::CROSS_AXIS_FIELD, - AAFwk::Integer::Box(static_cast(CrossAxisState::STATE_CROSS))); + AAFwk::Integer::Box(static_cast(CrossAxisState::STATE_CROSS))); wantParam.SetParam(Extension::UIEXTENSION_CONFIG_FIELD, AAFwk::WantParamWrapper::Box(configParam)); want->SetParams(wantParam); window->UpdateExtensionConfig(want); EXPECT_EQ(window->crossAxisState_.load(), CrossAxisState::STATE_CROSS); configParam.SetParam(Extension::CROSS_AXIS_FIELD, - AAFwk::Integer::Box(static_cast(CrossAxisState::STATE_INVALID))); + AAFwk::Integer::Box(static_cast(CrossAxisState::STATE_INVALID))); wantParam.SetParam(Extension::UIEXTENSION_CONFIG_FIELD, AAFwk::WantParamWrapper::Box(configParam)); want->SetParams(wantParam); window->UpdateExtensionConfig(want); EXPECT_EQ(window->crossAxisState_.load(), CrossAxisState::STATE_INVALID); configParam.SetParam(Extension::CROSS_AXIS_FIELD, - AAFwk::Integer::Box(static_cast(CrossAxisState::STATE_NO_CROSS))); + AAFwk::Integer::Box(static_cast(CrossAxisState::STATE_NO_CROSS))); wantParam.SetParam(Extension::UIEXTENSION_CONFIG_FIELD, AAFwk::WantParamWrapper::Box(configParam)); want->SetParams(wantParam); window->UpdateExtensionConfig(want); EXPECT_EQ(window->crossAxisState_.load(), CrossAxisState::STATE_NO_CROSS); configParam.SetParam(Extension::CROSS_AXIS_FIELD, - AAFwk::Integer::Box(static_cast(CrossAxisState::STATE_END))); + AAFwk::Integer::Box(static_cast(CrossAxisState::STATE_END))); wantParam.SetParam(Extension::UIEXTENSION_CONFIG_FIELD, AAFwk::WantParamWrapper::Box(configParam)); want->SetParams(wantParam); window->UpdateExtensionConfig(want); -- Gitee From 0422704faada2fb5760e2c12de5c8824d2b9f269 Mon Sep 17 00:00:00 2001 From: Peng fafu Date: Sat, 8 Feb 2025 21:05:24 +0800 Subject: [PATCH 24/28] cross axis Signed-off-by: Peng fafu --- .../ui_extension/window_extension_session_impl_test.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/wm/test/unittest/ui_extension/window_extension_session_impl_test.cpp b/wm/test/unittest/ui_extension/window_extension_session_impl_test.cpp index 80fb9b02fb..a5bc8f1484 100644 --- a/wm/test/unittest/ui_extension/window_extension_session_impl_test.cpp +++ b/wm/test/unittest/ui_extension/window_extension_session_impl_test.cpp @@ -2278,7 +2278,7 @@ HWTEST_F(WindowExtensionSessionImplTest, OnCrossAxisStateChange, Function | Smal AAFwk::Want reply; want.SetParam(Extension::CROSS_AXIS_FIELD, static_cast(CrossAxisState::STATE_END)); ASSERT_EQ(WMError::WM_OK, window->OnCrossAxisStateChange(std::move(wamt), reply)); - ASSERT_EQ(CrossAxisState::STATE_END, window->crossAxisState_); + ASSERT_EQ(CrossAxisState::STATE_END, window->crossAxisState_.load()); } } } // namespace Rosen -- Gitee From e769d055b50375850218e99c9dc22179d97937bc Mon Sep 17 00:00:00 2001 From: Peng fafu Date: Sat, 8 Feb 2025 21:06:51 +0800 Subject: [PATCH 25/28] cross axis Signed-off-by: Peng fafu --- wm/test/unittest/window_session_impl_test.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/wm/test/unittest/window_session_impl_test.cpp b/wm/test/unittest/window_session_impl_test.cpp index 20b9e1a29d..4af3f2b2e9 100644 --- a/wm/test/unittest/window_session_impl_test.cpp +++ b/wm/test/unittest/window_session_impl_test.cpp @@ -1485,8 +1485,8 @@ HWTEST_F(WindowSessionImplTest, SetAPPWindowIcon, Function | SmallTest | Level2) ASSERT_EQ(res, WMError::WM_ERROR_NULLPTR); Media::InitializationOptions opts; - opts.size.width = 200; // 200锛� test width - opts.size.height = 300; // 300锛� test height + opts.size.width = 200; // 200: test width + opts.size.height = 300; // 300: test height opts.pixelFormat = Media::PixelFormat::ARGB_8888; opts.alphaType = Media::AlphaType::IMAGE_ALPHA_TYPE_OPAQUE; std::unique_ptr pixelMapPtr = Media::PixelMap::Create(opts); -- Gitee From 000e6ebc564d41cd855c8b03e418595ce762bad9 Mon Sep 17 00:00:00 2001 From: Peng fafu Date: Sat, 8 Feb 2025 21:08:23 +0800 Subject: [PATCH 26/28] cross axis Signed-off-by: Peng fafu --- .../ui_extension/window_extension_session_impl_test.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/wm/test/unittest/ui_extension/window_extension_session_impl_test.cpp b/wm/test/unittest/ui_extension/window_extension_session_impl_test.cpp index a5bc8f1484..e87d58ad9f 100644 --- a/wm/test/unittest/ui_extension/window_extension_session_impl_test.cpp +++ b/wm/test/unittest/ui_extension/window_extension_session_impl_test.cpp @@ -2260,9 +2260,9 @@ HWTEST_F(WindowExtensionSessionImplTest, NotifyExtensionDataConsumer01, Function */ HWTEST_F(WindowExtensionSessionImplTest, RegisterConsumer, Function | SmallTest | Level3) { - window->RegisterConsumer(Extension::Businesscode::SYNC_CROSS_AXIS_STATE, + window_->RegisterConsumer(Extension::Businesscode::SYNC_CROSS_AXIS_STATE, std::bind(&WindowExtensionSessionImpl::OnCrossAxisStateChange, - window, std::placeholders::_1, std::placeholders::_2)); + window_, std::placeholders::_1, std::placeholders::_2)); ASSERT_NE(nullptr, window_->dataConsumers_[static_cast(Extension::Businesscode::SYNC_CROSS_AXIS_STATE)]); } @@ -2277,8 +2277,8 @@ HWTEST_F(WindowExtensionSessionImplTest, OnCrossAxisStateChange, Function | Smal AAFwk::Want wamt; AAFwk::Want reply; want.SetParam(Extension::CROSS_AXIS_FIELD, static_cast(CrossAxisState::STATE_END)); - ASSERT_EQ(WMError::WM_OK, window->OnCrossAxisStateChange(std::move(wamt), reply)); - ASSERT_EQ(CrossAxisState::STATE_END, window->crossAxisState_.load()); + ASSERT_EQ(WMError::WM_OK, window_->OnCrossAxisStateChange(std::move(wamt), reply)); + ASSERT_EQ(CrossAxisState::STATE_END, window_->crossAxisState_.load()); } } } // namespace Rosen -- Gitee From 147e532392eae81ed4ef90c193fb254c4d5c7e09 Mon Sep 17 00:00:00 2001 From: Peng fafu Date: Sat, 8 Feb 2025 21:10:02 +0800 Subject: [PATCH 27/28] cross axis Signed-off-by: Peng fafu --- .../ui_extension/window_extension_session_impl_test.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/wm/test/unittest/ui_extension/window_extension_session_impl_test.cpp b/wm/test/unittest/ui_extension/window_extension_session_impl_test.cpp index e87d58ad9f..e89da7352d 100644 --- a/wm/test/unittest/ui_extension/window_extension_session_impl_test.cpp +++ b/wm/test/unittest/ui_extension/window_extension_session_impl_test.cpp @@ -2274,7 +2274,7 @@ HWTEST_F(WindowExtensionSessionImplTest, RegisterConsumer, Function | SmallTest */ HWTEST_F(WindowExtensionSessionImplTest, OnCrossAxisStateChange, Function | SmallTest | Level3) { - AAFwk::Want wamt; + AAFwk::Want want; AAFwk::Want reply; want.SetParam(Extension::CROSS_AXIS_FIELD, static_cast(CrossAxisState::STATE_END)); ASSERT_EQ(WMError::WM_OK, window_->OnCrossAxisStateChange(std::move(wamt), reply)); -- Gitee From 09048d1585696fe1f5214b5cfdde3630bf61a209 Mon Sep 17 00:00:00 2001 From: Peng fafu Date: Sat, 8 Feb 2025 21:15:44 +0800 Subject: [PATCH 28/28] cross axis Signed-off-by: Peng fafu --- .../ui_extension/window_extension_session_impl_test.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/wm/test/unittest/ui_extension/window_extension_session_impl_test.cpp b/wm/test/unittest/ui_extension/window_extension_session_impl_test.cpp index e89da7352d..61a1cf824e 100644 --- a/wm/test/unittest/ui_extension/window_extension_session_impl_test.cpp +++ b/wm/test/unittest/ui_extension/window_extension_session_impl_test.cpp @@ -2275,9 +2275,9 @@ HWTEST_F(WindowExtensionSessionImplTest, RegisterConsumer, Function | SmallTest HWTEST_F(WindowExtensionSessionImplTest, OnCrossAxisStateChange, Function | SmallTest | Level3) { AAFwk::Want want; - AAFwk::Want reply; + std::optional reply = std::make_optional(); want.SetParam(Extension::CROSS_AXIS_FIELD, static_cast(CrossAxisState::STATE_END)); - ASSERT_EQ(WMError::WM_OK, window_->OnCrossAxisStateChange(std::move(wamt), reply)); + ASSERT_EQ(WMError::WM_OK, window_->OnCrossAxisStateChange(std::move(want), reply)); ASSERT_EQ(CrossAxisState::STATE_END, window_->crossAxisState_.load()); } } -- Gitee