diff options
author | Konstantin Käfer <mail@kkaefer.com> | 2014-02-21 12:05:27 +0100 |
---|---|---|
committer | Konstantin Käfer <mail@kkaefer.com> | 2014-02-21 12:05:27 +0100 |
commit | bd2d865fc474f752b48b88b4b8fd2c8eb307f301 (patch) | |
tree | ec0578b45305f72796b5557204ac6a37bfd6f371 | |
parent | 66a2c994ac66d937aa7e5f5674f772ca9db551a2 (diff) | |
download | qtlocation-mapboxgl-bd2d865fc474f752b48b88b4b8fd2c8eb307f301.tar.gz |
trigger a bogus mouse move event to interrupt glfwWaitEvents()
see https://github.com/glfw/glfw/issues/218
-rw-r--r-- | include/llmr/map/map.hpp | 2 | ||||
-rw-r--r-- | macosx/main.mm | 3 | ||||
-rw-r--r-- | src/map/map.cpp | 15 |
3 files changed, 5 insertions, 15 deletions
diff --git a/include/llmr/map/map.hpp b/include/llmr/map/map.hpp index 84cb4d12eb..c82fcae476 100644 --- a/include/llmr/map/map.hpp +++ b/include/llmr/map/map.hpp @@ -29,8 +29,6 @@ public: /* callback */ bool render(); void cancelAnimations(); - void tileLoaded(std::shared_ptr<Tile> tile); - void tileFailed(std::shared_ptr<Tile> tile); /* position */ void moveBy(double dx, double dy, double duration = 0); diff --git a/macosx/main.mm b/macosx/main.mm index 7c2f0cc1ec..18229f9f4f 100644 --- a/macosx/main.mm +++ b/macosx/main.mm @@ -227,6 +227,9 @@ namespace platform { void restart(void *) { mapView->dirty = true; + CGEventRef event = CGEventCreate(NULL); + CGEventSetType(event, kCGEventMouseMoved); + [[NSApplication sharedApplication] postEvent: [NSEvent eventWithCGEvent:event] atStart:NO]; } void request_http(std::string url, std::function<void(Response&)> background_function, std::function<void()> foreground_callback) { diff --git a/src/map/map.cpp b/src/map/map.cpp index e837ecffb6..5e31c97c1d 100644 --- a/src/map/map.cpp +++ b/src/map/map.cpp @@ -375,12 +375,12 @@ bool Map::updateTiles() { } bool Map::render() { - bool changed = false; if (transform.needsAnimation()) { transform.updateAnimations(); - changed = updateTiles(); } + bool changed = updateTiles(); + painter.clear(); for (Tile::Ptr& tile : tiles) { @@ -395,14 +395,3 @@ bool Map::render() { return changed || transform.needsAnimation(); } - -void Map::tileLoaded(Tile::Ptr tile) { - // std::cerr << "loaded " << tile->toString() << std::endl; - update(); -} - -void Map::tileFailed(Tile::Ptr tile) { - // fprintf(stderr, "[%8zx] tile failed to load %d/%d/%d\n", - // std::hash<std::thread::id>()(std::this_thread::get_id()), - // tile->z, tile->x, tile->y); -} |