Loading libs/hwui/RenderNode.cpp +6 −0 Original line number Diff line number Diff line Loading @@ -264,6 +264,12 @@ void RenderNode::syncProperties() { } void RenderNode::pushStagingPropertiesChanges(TreeInfo& info) { if (mPositionListenerDirty) { mPositionListener = std::move(mStagingPositionListener); mStagingPositionListener = nullptr; mPositionListenerDirty = false; } // Push the animators first so that setupStartValueIfNecessary() is called // before properties() is trampled by stagingProperties(), as they are // required by some animators. Loading libs/hwui/RenderNode.h +4 −4 Original line number Diff line number Diff line Loading @@ -188,11 +188,9 @@ public: virtual void onPositionLost(RenderNode& node, const TreeInfo* info) = 0; }; // Note this is not thread safe, this needs to be called // before the RenderNode is used for drawing. // RenderNode takes ownership of the pointer ANDROID_API void setPositionListener(PositionListener* listener) { mPositionListener = listener; mStagingPositionListener = listener; mPositionListenerDirty = true; } // This is only modified in MODE_FULL, so it can be safely accessed Loading Loading @@ -275,6 +273,8 @@ private: // mDisplayList, not mStagingDisplayList. uint32_t mParentCount; bool mPositionListenerDirty = false; sp<PositionListener> mStagingPositionListener; sp<PositionListener> mPositionListener; UsageHint mUsageHint = UsageHint::Unknown; Loading Loading
libs/hwui/RenderNode.cpp +6 −0 Original line number Diff line number Diff line Loading @@ -264,6 +264,12 @@ void RenderNode::syncProperties() { } void RenderNode::pushStagingPropertiesChanges(TreeInfo& info) { if (mPositionListenerDirty) { mPositionListener = std::move(mStagingPositionListener); mStagingPositionListener = nullptr; mPositionListenerDirty = false; } // Push the animators first so that setupStartValueIfNecessary() is called // before properties() is trampled by stagingProperties(), as they are // required by some animators. Loading
libs/hwui/RenderNode.h +4 −4 Original line number Diff line number Diff line Loading @@ -188,11 +188,9 @@ public: virtual void onPositionLost(RenderNode& node, const TreeInfo* info) = 0; }; // Note this is not thread safe, this needs to be called // before the RenderNode is used for drawing. // RenderNode takes ownership of the pointer ANDROID_API void setPositionListener(PositionListener* listener) { mPositionListener = listener; mStagingPositionListener = listener; mPositionListenerDirty = true; } // This is only modified in MODE_FULL, so it can be safely accessed Loading Loading @@ -275,6 +273,8 @@ private: // mDisplayList, not mStagingDisplayList. uint32_t mParentCount; bool mPositionListenerDirty = false; sp<PositionListener> mStagingPositionListener; sp<PositionListener> mPositionListener; UsageHint mUsageHint = UsageHint::Unknown; Loading