docs: def getScreenDetails(self):
          """ Return list of attached monitors
  
          For each monitor (as dict), ``monitor["rect"]`` represents the screen as positioned
          in virtual screen. List is returned in device order, with the first element (0)
          representing the primary monitor.
          """
          primary_screen = None
          screens = []
          for monitor in AppKit.NSScreen.screens():
              # Convert screen rect to Lackey-style rect (x,y,w,h) as position in virtual screen
              screen = {
                  "rect": (
                      int(monitor.frame().origin.x),
                      int(monitor.frame().origin.y),
                      int(monitor.frame().size.width),
                      int(monitor.frame().size.height)
                  )
              }
              screens.append(screen)
          return screens