docs: def _show_feedback_label(self, message, seconds=None):
          """Display a message in lbl_feedback, which then times out after
          some number of seconds. Use after() to schedule a callback to
          hide the feedback message. This works better than using threads,
          which can cause problems in Tk.
          """
          if seconds is None:
              seconds = CONFIG['MESSAGE_DURATION']
  
          # cancel any existing callback to clear the feedback
          # label. this prevents flickering and inconsistent
          # timing during rapid input.
          with contextlib.suppress(AttributeError):
              self.root.after_cancel(self.clear_feedback)
  
          logger.debug('Label feedback: "{}"'.format(message))
          self.feedback.set(message)
          self.clear_feedback = self.root.after(
              1000 * seconds, lambda: self.feedback.set("")
          )