From 8ae64f30ec97b126d28a513daccc77e518a15880 Mon Sep 17 00:00:00 2001 From: zhirong <215782872@qq.com> Date: Fri, 5 Aug 2022 11:22:43 +0800 Subject: [PATCH] promotion for animation Signed-off-by: zhirong <215782872@qq.com> Change-Id: I02839825824a17c13e54b2853dd4bf5027ef99e3 Signed-off-by: zhirong <215782872@qq.com> --- interfaces/innerkits/wm/window.h | 2 +- utils/include/window_property.h | 2 +- utils/include/wm_math.h | 10 ++++------ utils/src/window_property.cpp | 2 +- utils/test/unittest/wm_math_test.cpp | 4 +++- wm/include/window_impl.h | 2 +- wm/src/window_impl.cpp | 2 +- 7 files changed, 12 insertions(+), 12 deletions(-) diff --git a/interfaces/innerkits/wm/window.h b/interfaces/innerkits/wm/window.h index 620a76b1..e30da311 100644 --- a/interfaces/innerkits/wm/window.h +++ b/interfaces/innerkits/wm/window.h @@ -255,7 +255,7 @@ public: virtual WMError SetWindowMode(WindowMode mode) = 0; virtual void SetAlpha(float alpha) = 0; virtual void SetTransform(const Transform& trans) = 0; - virtual Transform GetTransform() const = 0; + virtual const Transform& GetTransform() const = 0; virtual WMError AddWindowFlag(WindowFlag flag) = 0; virtual WMError RemoveWindowFlag(WindowFlag flag) = 0; virtual WMError SetWindowFlags(uint32_t flags) = 0; diff --git a/utils/include/window_property.h b/utils/include/window_property.h index 95f2e3bb..a8790aa4 100644 --- a/utils/include/window_property.h +++ b/utils/include/window_property.h @@ -113,7 +113,7 @@ public: const Rect& GetOriginRect() const; void GetTouchHotAreas(std::vector& rects) const; uint32_t GetAccessTokenId() const; - Transform GetTransform() const; + const Transform& GetTransform() const; WindowSizeLimits GetSizeLimits() const; WindowSizeLimits GetUpdatedSizeLimits() const; const TransformHelper::Matrix4& GetTransformMat() const; diff --git a/utils/include/wm_math.h b/utils/include/wm_math.h index e0eda530..53d1bb89 100644 --- a/utils/include/wm_math.h +++ b/utils/include/wm_math.h @@ -48,10 +48,9 @@ T Max(const T& a, const T& b) } template -T Max(const T& a, Ts... bs) +T Max(const T& a, const Ts&... bs) { - T b = Max(bs...); - return (a > b ? a : b); + return Max(a, Max(bs...)); } template @@ -61,10 +60,9 @@ T Min(const T& a, const T& b) } template -T Min(const T& a, Ts... bs) +T Min(const T& a, const Ts&... bs) { - T b = Min(bs...); - return (a < b ? a : b); + return Min(a, Min(bs...)); } template diff --git a/utils/src/window_property.cpp b/utils/src/window_property.cpp index 712a9fb0..20048d78 100644 --- a/utils/src/window_property.cpp +++ b/utils/src/window_property.cpp @@ -305,7 +305,7 @@ float WindowProperty::GetAlpha() const return alpha_; } -Transform WindowProperty::GetTransform() const +const Transform& WindowProperty::GetTransform() const { return trans_; } diff --git a/utils/test/unittest/wm_math_test.cpp b/utils/test/unittest/wm_math_test.cpp index 6482d32c..96707f5a 100644 --- a/utils/test/unittest/wm_math_test.cpp +++ b/utils/test/unittest/wm_math_test.cpp @@ -67,9 +67,11 @@ HWTEST_F(WmMathTest, MathHalper, Function | SmallTest | Level2) ASSERT_EQ(true, MathHelper::NearZero(MathHelper::ToRadians(degrees) - radians)); } { - int a = 1, b = 2, c = 3; + int a = 1, b = 2, c = 3, d = 4; ASSERT_EQ(true, MathHelper::Max(a, b, c) == c); ASSERT_EQ(true, MathHelper::Min(a, b, c) == a); + ASSERT_EQ(true, MathHelper::Max(a, b, c, d) == d); + ASSERT_EQ(true, MathHelper::Min(a, b, c, d) == a); ASSERT_EQ(true, MathHelper::Clamp(a, b, c) == b); ASSERT_EQ(true, MathHelper::Clamp(b, a, c) == b); ASSERT_EQ(true, MathHelper::Clamp(c, a, b) == b); diff --git a/wm/include/window_impl.h b/wm/include/window_impl.h index 605775d7..4b3eff75 100644 --- a/wm/include/window_impl.h +++ b/wm/include/window_impl.h @@ -134,7 +134,7 @@ public: virtual WMError SetSystemBarProperty(WindowType type, const SystemBarProperty& property) override; virtual WMError SetLayoutFullScreen(bool status) override; virtual WMError SetFullScreen(bool status) override; - virtual Transform GetTransform() const override; + virtual const Transform& GetTransform() const override; virtual WMError UpdateSurfaceNodeAfterCustomAnimation(bool isAdd) override; inline void SetWindowState(WindowState state) { diff --git a/wm/src/window_impl.cpp b/wm/src/window_impl.cpp index 4686465b..f45e55a6 100755 --- a/wm/src/window_impl.cpp +++ b/wm/src/window_impl.cpp @@ -393,7 +393,7 @@ void WindowImpl::SetTransform(const Transform& trans) UpdateProperty(PropertyChangeAction::ACTION_UPDATE_TRANSFORM_PROPERTY); } -Transform WindowImpl::GetTransform() const +const Transform& WindowImpl::GetTransform() const { return property_->GetTransform(); }