code: def findXScreens(self):
          qapp = QtCore.QCoreApplication.instance()
          if not qapp: # QApplication has not been started
              return
          
          screens = qapp.screens()
          
          virtual_screens = set()
          for screen in screens:
              # if screen has been deemed as "virtual", don't check its siblings
              if (screen not in virtual_screens):
                  siblings = screen.virtualSiblings()
                  # remove the current screen under scrutiny from the siblings
                  # list
                  virtual_screens.update(set(siblings).difference(set([screen])))
                  # .. the ones left over are virtual
  
          # print("GPUHandler: findXScreens: virtual screens",virtual_screens)
          true_screens = list(set(screens) - virtual_screens)
  
          # sort'em
          for screen in true_screens:
              self.true_screens.insert(screens.index(screen), screen)
  
          print("GPUHandler: findXScreens: true screens:", self.true_screens)
docs: let's find out which screens are virtual
  
          screen, siblings:
  
          One big virtual desktop:
  
          A [A, B, C]
          B [A, B, C]
          C [A, B, C]
  
          A & B in one xscreen, C in another:
  
          A [A, B]
          B [A, B]
          C [C]