split renderSync and transition nudging to allow client view syncing

This commit is contained in:
Justin R. Miller
2015-07-01 10:42:38 -04:00
parent fb230dda51
commit b8388168dd
3 changed files with 12 additions and 4 deletions

View File

@@ -48,7 +48,7 @@ void Map::renderStill(StillImageCallback callback) {
FrameData{ view.getFramebufferSize() }, callback);
}
void Map::renderSync() {
bool Map::renderSync() {
if (renderState == RenderState::never) {
view.notifyMapChange(MapChangeWillStartRenderingMap);
}
@@ -69,9 +69,13 @@ void Map::renderSync() {
view.notifyMapChange(MapChangeDidFinishRenderingMapFullyRendered);
}
return result.needsRerender;
}
void Map::nudgeTransitions(bool forceRerender) {
if (transform->needsTransition()) {
update(Update(transform->updateTransitions(Clock::now())));
} else if (result.needsRerender) {
} else if (forceRerender) {
update();
}
}