diff --git a/src/mbgl/map/map.cpp b/src/mbgl/map/map.cpp index f357c05e8..d2cd7a53b 100644 --- a/src/mbgl/map/map.cpp +++ b/src/mbgl/map/map.cpp @@ -73,11 +73,11 @@ bool Map::renderSync() { } void Map::nudgeTransitions(bool forceRerender) { - if (transform->needsTransition()) { - update(Update(transform->updateTransitions(Clock::now()))); - } else if (forceRerender) { - update(); + UpdateType update_ = transform->updateTransitions(Clock::now()); + if (forceRerender) { + update_ |= static_cast(Update::Repaint); } + update(Update(update_)); } void Map::update(Update update_) { diff --git a/src/mbgl/map/transform.cpp b/src/mbgl/map/transform.cpp index 08cca3db2..29ca54d78 100644 --- a/src/mbgl/map/transform.cpp +++ b/src/mbgl/map/transform.cpp @@ -377,10 +377,6 @@ void Transform::startTransition(std::function frame, transitionFinishFn = finish; } -bool Transform::needsTransition() const { - return !!transitionFrameFn; -} - UpdateType Transform::updateTransitions(const TimePoint& now) { return static_cast(transitionFrameFn ? transitionFrameFn(now) : Update::Nothing); } diff --git a/src/mbgl/map/transform.hpp b/src/mbgl/map/transform.hpp index badb811af..f4a78bbcb 100644 --- a/src/mbgl/map/transform.hpp +++ b/src/mbgl/map/transform.hpp @@ -42,7 +42,6 @@ public: double getAngle() const; // Transitions - bool needsTransition() const; UpdateType updateTransitions(const TimePoint& now); void cancelTransitions();