From 801580c46fa03dd72f8f019239bd919e1740077d Mon Sep 17 00:00:00 2001 From: John Preston Date: Fri, 10 May 2019 12:04:41 +0300 Subject: [PATCH] QtLottie: Apply even inactive parent transforms. --- Telegram/ThirdParty/qtlottie | 2 +- .../qtlottie_helper/QtBodymovin/private/bmlayer_p.h | 6 +++--- .../qtlottie_helper/QtBodymovin/private/bmnulllayer_p.h | 3 +-- .../qtlottie_helper/QtBodymovin/private/bmprecomplayer_p.h | 2 +- .../qtlottie_helper/QtBodymovin/private/bmshapelayer_p.h | 2 +- 5 files changed, 7 insertions(+), 8 deletions(-) diff --git a/Telegram/ThirdParty/qtlottie b/Telegram/ThirdParty/qtlottie index 9162dace08..5630703850 160000 --- a/Telegram/ThirdParty/qtlottie +++ b/Telegram/ThirdParty/qtlottie @@ -1 +1 @@ -Subproject commit 9162dace0879b9190cefac0468c4dc4f92579488 +Subproject commit 5630703850784e58aad0a02394004e07b1cd3c8b diff --git a/Telegram/ThirdParty/qtlottie_helper/QtBodymovin/private/bmlayer_p.h b/Telegram/ThirdParty/qtlottie_helper/QtBodymovin/private/bmlayer_p.h index c8121287aa..3992b890d9 100644 --- a/Telegram/ThirdParty/qtlottie_helper/QtBodymovin/private/bmlayer_p.h +++ b/Telegram/ThirdParty/qtlottie_helper/QtBodymovin/private/bmlayer_p.h @@ -53,11 +53,9 @@ public: enum MatteClipMode {NoClip, Alpha, InvertedAlpha, Luminence, InvertedLuminence}; BMLayer() = default; - explicit BMLayer (const BMLayer &other); + explicit BMLayer (const BMLayer &other); ~BMLayer() override; - BMBase *clone() const override; - static BMLayer *construct(QJsonObject definition); bool active(int frame) const override; @@ -97,6 +95,8 @@ protected: int m_td = 0; MatteClipMode m_clipMode = NoClip; + bool m_updated = false; + private: void parseEffects(const QJsonArray &definition, BMBase *effectRoot = nullptr); diff --git a/Telegram/ThirdParty/qtlottie_helper/QtBodymovin/private/bmnulllayer_p.h b/Telegram/ThirdParty/qtlottie_helper/QtBodymovin/private/bmnulllayer_p.h index 932925032e..8d60430967 100644 --- a/Telegram/ThirdParty/qtlottie_helper/QtBodymovin/private/bmnulllayer_p.h +++ b/Telegram/ThirdParty/qtlottie_helper/QtBodymovin/private/bmnulllayer_p.h @@ -52,7 +52,7 @@ class BMShape; class BMTrimPath; class BMBasicTransform; -class BODYMOVIN_EXPORT BMNullLayer : public BMLayer +class BODYMOVIN_EXPORT BMNullLayer final : public BMLayer { public: BMNullLayer() = default; @@ -62,7 +62,6 @@ public: BMBase *clone() const override; - void updateProperties(int frame) override; void render(LottieRenderer &render, int frame) const override; }; diff --git a/Telegram/ThirdParty/qtlottie_helper/QtBodymovin/private/bmprecomplayer_p.h b/Telegram/ThirdParty/qtlottie_helper/QtBodymovin/private/bmprecomplayer_p.h index 41d28f45de..7880441790 100644 --- a/Telegram/ThirdParty/qtlottie_helper/QtBodymovin/private/bmprecomplayer_p.h +++ b/Telegram/ThirdParty/qtlottie_helper/QtBodymovin/private/bmprecomplayer_p.h @@ -52,7 +52,7 @@ class BMShape; class BMTrimPath; class BMBasicTransform; -class BODYMOVIN_EXPORT BMPreCompLayer : public BMLayer +class BODYMOVIN_EXPORT BMPreCompLayer final : public BMLayer { public: BMPreCompLayer() = default; diff --git a/Telegram/ThirdParty/qtlottie_helper/QtBodymovin/private/bmshapelayer_p.h b/Telegram/ThirdParty/qtlottie_helper/QtBodymovin/private/bmshapelayer_p.h index c69cc317a8..d8dbbd37b3 100644 --- a/Telegram/ThirdParty/qtlottie_helper/QtBodymovin/private/bmshapelayer_p.h +++ b/Telegram/ThirdParty/qtlottie_helper/QtBodymovin/private/bmshapelayer_p.h @@ -52,7 +52,7 @@ class BMShape; class BMTrimPath; class BMBasicTransform; -class BODYMOVIN_EXPORT BMShapeLayer : public BMLayer +class BODYMOVIN_EXPORT BMShapeLayer final : public BMLayer { public: BMShapeLayer() = default;