import pygame from typing import List class InputEvents: def __init__(self): self.quit_requested = False def poll_events(self) -> List[pygame.event.Event]: raw_events = pygame.event.get() filtered_events = [] for event in raw_events: if self._handle_quit(event): continue filtered_events.append(event) return filtered_events def _handle_quit(self, event: pygame.event.Event) -> bool: if event.type == pygame.QUIT: self.quit_requested = True return True elif event.type == pygame.KEYDOWN: if event.key == pygame.K_ESCAPE: self.quit_requested = True return True return False