docs: protected void runOnGUIThreadIfExistsOtherwiseRunDirect(Runnable runnable) {
          if(getTextGUI() != null && getTextGUI().getGUIThread() != null) {
              getTextGUI().getGUIThread().invokeLater(runnable);
          }
          else {
              runnable.run();
          }
      }