title: ProgressIndicator freezes when button is pressed. JavaFX
body: <p>I'm using a indicator progress set to -1.0 to show some loading while <code>loginprocess</code> is running.
  But when I press the Enter button and start my executor with the <code>loginProcess</code>, my interface stays <code>freezed</code> even if I use <code>Plataform.runLater</code> to set visible my <code>ProgressIndicator</code>.</p>
  
  <p>My button event:</p>
  
  <pre><code>public void initManager(final LoginManager loginManager) {
      btnEntrar.setOnAction(new EventHandler&lt;ActionEvent&gt;() {
          @Override
          public void handle(ActionEvent event) {
  
  
              String email = loginTxtField.getText().trim();
              String token = tokenTxtField.getText().trim();
  
              if (email.equals("")) {
                  Platform.runLater(new Runnable() {
                      public void run() {
                          Dialog.showError("Erro", "Digite o e-mail");
                      }
                  });
                  return;
              }
  
              try {
  
                  Future future = loginProcess(email, token);
  
                  showLoginLoading(future);
  
                  future.get();
  
                  if (!loginGatewayFailed &amp;&amp; !loginTargetAppFailed) {
  
                      Login loginTargetApp = new Login(email, null, null);
                      loginManager.autheticated(loginTargetApp, loginGateway, gateway, file);
  
                  } else {
  
                      if (loginTargetAppFailed) {
  
                          Platform.runLater(new Runnable() {
                              public void run() {
                                  Dialog.showError("Erro", loginTargetAppFailedCause);
                              }
                          });
  
                      } else {
  
                          if (loginGatewayFailed) {
  
                              Platform.runLater(new Runnable() {
                                  public void run() {
                                      Dialog.showError("Erro", loginGatewayFailedCause);
                                  }
                              });
                          }
                      }
                  }
  
              } catch (final Exception ex) {
  
                  Logger.getLogger(LoginController.class.getName()).log(Level.SEVERE, ex.getMessage());
  
                  Platform.runLater(new Runnable() {
                      public void run() {
                          Dialog.showError("Erro", ex.getMessage());
                      }
                  });
              }
          }
      });
  }
  </code></pre>
  
  <p>My loginProcess:</p>
  
  <pre><code>public Future&lt;?&gt; loginProcess(String email, String token) throws Exception {
  
  // MY PROCESS
  
              return Executors.newSingleThreadExecutor().submit(new LoginTask(this, email, token));
  
          } catch (Exception e) {
  
              Logger.getLogger(LoginController.class.getName()).log(Level.SEVERE, e.getMessage());
  
              throw e;
          }
      }
  </code></pre>
  
  <p>method showLoginLoading:</p>
  
  <pre><code>private void showLoginLoading(Future future) {
          while (!future.isDone()) {
  
              Platform.runLater(new Runnable() {
  
                  @Override
                  public void run() {
                      progressInd.setVisible(true);
                     // progressInd.setProgress(-1.0);
                  }
              });
  
          }
      }
  </code></pre>