From 3da11c8f1a1e329c30a5aa8d4090ada90c07ff6b Mon Sep 17 00:00:00 2001 From: chaos Date: Tue, 2 Sep 2025 19:33:40 +0800 Subject: [PATCH 1/3] AvailableAreaChangedByDisplayId Signed-off-by: chaos --- dm/src/display_manager.cpp | 1 + dm/src/oh_display_manager.cpp | 3 +-- interfaces/innerkits/dm/display_manager.h | 8 ++++++++ 3 files changed, 10 insertions(+), 2 deletions(-) diff --git a/dm/src/display_manager.cpp b/dm/src/display_manager.cpp index bd65da5f9d..7ddd60546b 100644 --- a/dm/src/display_manager.cpp +++ b/dm/src/display_manager.cpp @@ -1837,6 +1837,7 @@ void DisplayManager::Impl::NotifyAvailableAreaChanged(DMRect rect, DisplayId dis } for (auto& listener : availableAreaListeners) { listener->OnAvailableAreaChanged(rect); + listener->OnAvailableAreaChangedByDisplayId(rect, displayId); } std::map>> availableAreaListenersMap; { diff --git a/dm/src/oh_display_manager.cpp b/dm/src/oh_display_manager.cpp index 4f3816a70b..9db296035b 100644 --- a/dm/src/oh_display_manager.cpp +++ b/dm/src/oh_display_manager.cpp @@ -38,13 +38,12 @@ public: innerAvailableAreaChangeFunc_ = availableAreaChangeFunc; } - void OnAvailableAreaChanged(DMRect area) + void OnAvailableAreaChangedByDisplayId(DMRect area, DisplayId displayId) { if (innerAvailableAreaChangeFunc_ == nullptr) { TLOGE(WmsLogTag::DMS, "[DMNDK] callback is nullptr"); return; } - DisplayId displayId = DisplayManager::GetInstance().GetDefaultDisplayId(); innerAvailableAreaChangeFunc_(displayId); } diff --git a/interfaces/innerkits/dm/display_manager.h b/interfaces/innerkits/dm/display_manager.h index 23e1a728b1..cdc699481b 100644 --- a/interfaces/innerkits/dm/display_manager.h +++ b/interfaces/innerkits/dm/display_manager.h @@ -173,6 +173,14 @@ public: * @param DMRect area. */ virtual void OnAvailableAreaChanged(DMRect area) {} + + /** + * @brief Notify listeners when available area changed by displayId. + * + * @param DMRect area. + * @param DisplayId displayId. + */ + virtual void OnAvailableAreaChanged(DMRect area, DisplayId displayId) {} }; /** -- Gitee From 30fbc7fe22c07306c24b11895b82fa8fdab45e74 Mon Sep 17 00:00:00 2001 From: chaos Date: Tue, 2 Sep 2025 19:39:15 +0800 Subject: [PATCH 2/3] fix Signed-off-by: chaos --- interfaces/innerkits/dm/display_manager.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/interfaces/innerkits/dm/display_manager.h b/interfaces/innerkits/dm/display_manager.h index cdc699481b..d4cf4eb388 100644 --- a/interfaces/innerkits/dm/display_manager.h +++ b/interfaces/innerkits/dm/display_manager.h @@ -180,7 +180,7 @@ public: * @param DMRect area. * @param DisplayId displayId. */ - virtual void OnAvailableAreaChanged(DMRect area, DisplayId displayId) {} + virtual void OnAvailableAreaChangedByDisplayId(DMRect area, DisplayId displayId) {} }; /** -- Gitee From 48a36771e9b9bfa845a90043ce9ea6fd228c0aeb Mon Sep 17 00:00:00 2001 From: chaos Date: Wed, 3 Sep 2025 14:35:48 +0800 Subject: [PATCH 3/3] fix2 Signed-off-by: chaos --- dm/src/oh_display_manager.cpp | 2 +- interfaces/innerkits/dm/display_manager.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/dm/src/oh_display_manager.cpp b/dm/src/oh_display_manager.cpp index 9db296035b..759885824c 100644 --- a/dm/src/oh_display_manager.cpp +++ b/dm/src/oh_display_manager.cpp @@ -38,7 +38,7 @@ public: innerAvailableAreaChangeFunc_ = availableAreaChangeFunc; } - void OnAvailableAreaChangedByDisplayId(DMRect area, DisplayId displayId) + void OnAvailableAreaChangedByDisplayId(const DMRect& area, DisplayId displayId) { if (innerAvailableAreaChangeFunc_ == nullptr) { TLOGE(WmsLogTag::DMS, "[DMNDK] callback is nullptr"); diff --git a/interfaces/innerkits/dm/display_manager.h b/interfaces/innerkits/dm/display_manager.h index d4cf4eb388..d4e1470555 100644 --- a/interfaces/innerkits/dm/display_manager.h +++ b/interfaces/innerkits/dm/display_manager.h @@ -180,7 +180,7 @@ public: * @param DMRect area. * @param DisplayId displayId. */ - virtual void OnAvailableAreaChangedByDisplayId(DMRect area, DisplayId displayId) {} + virtual void OnAvailableAreaChangedByDisplayId(const DMRect& area, DisplayId displayId) {} }; /** -- Gitee