@Override
    public void mouseMoved(MouseEvent e) {
        final MouseEvent mouseEvent = e;

        TimerTask task = new TimerTask() {

            @Override
            public void run() {
                Edge e = drawMapComponent.findClosestRoad(mouseEvent.getX(), mouseEvent.getY());
                closestRoadString = e.getRoadName();
                // this implementation is copied from http://stackoverflow.com/questions/4212675/wrap-the-string-after-a-number-of-character-word-wise-in-java
                StringBuilder sb = new StringBuilder(closestRoadString);

                int i = 0;
                while ((i = sb.indexOf(" ", i + 10)) != -1) {
                    sb.replace(i, i + 1, "<br>");
                }

                navigationBar.setClosestRoadEdge(e);
                navigationBar.getClosestRoad().setText("<html>" + sb.toString() + " </html>");
                navigationBar.repaint();
            }
        };
        mouseStillTimer.cancel();
        mouseStillTimer = new Timer();
        mouseStillTimer.schedule(task, 150);
    }