              return True
  
      @staticmethod
      def get_display_data(**kwargs):
          """ Get the display data in a LongRunningTask """
          return Calculations(**kwargs)
  
 
</s> remove         else:
            logger.debug("Getting Popup from background Thread")
            self.display_data = self.thread.get_result()
            self.thread = None
            if not self.check_valid_data():
                logger.warning("No valid data to display. Not refreshing")
                self.vars["status"].set("")
                return False
            logger.debug("Compiled Display Data")
            self.vars["buildgraph"].set(True)
 </s> add  </s> remove         if self.complete.is_set():
            logger.debug("Getting result from thread")
            retval = self._queue.get()
 </s> add         if not self.complete.is_set():
            logger.warning("Aborting attempt to retrieve result from a LongRunningTask that is "
                           "still running")
            return None
        if self.err:
            logger.debug("Error caught in thread")
            self._config.set_cursor_default(widget=self.widget)
            raise self.err[1].with_traceback(self.err[2])

        logger.debug("Getting result from thread")
        retval = self._queue.get() </s> remove             return
 </s> add             return None
        logger.debug("Getting Popup from background Thread")
        self.display_data = self.thread.get_result()
        self.thread = None
        if not self.check_valid_data():
            logger.warning("No valid data to display. Not refreshing")
            self.vars["status"].set("")
            return False
        logger.debug("Compiled Display Data")
        self.vars["buildgraph"].set(True)
        return True

              return True
  
        logger.debug("Getting Popup from background Thread")
        self.display_data = self.thread.get_result()
        self.thread = None
        if not self.check_valid_data():
            logger.warning("No valid data to display. Not refreshing")
            self.vars["status"].set("")
            return False
        logger.debug("Compiled Display Data")
        self.vars["buildgraph"].set(True)
        return True

      @staticmethod
      def get_display_data(**kwargs):
          """ Get the display data in a LongRunningTask """
          return Calculations(**kwargs)
  
keep add keep keep keep keep keep
 GUI responsiveness and feature updates

- Add error handling to LongRunningTask
- Analysis: Fix timestats bug for missing session data
- Training: Update training graph inside LongRunningTask
- Training: Smoothing Amount Slider geometry fix
- Training: Auto update Analysis tab on training start and save interval
- Scripts: Keep control of the UI when terminating by terminating using LongRunningTask 
lib/gui/display_analysis.py