code: def drag_events(self):
          
          if not self.is_dragging:
              return None
  
          event = self
          events = []
          while True:
              # mouse_press events can only be the start of a trail
              if event is None or event.type == 'mouse_press':
                  break
              events.append(event)
              event = event.last_event
  
          return events[::-1]
docs: Return a list of all mouse events in the current drag operation.
  
          Returns None if there is no current drag operation.