code: def get_final_window_monitor(cls, settings, window):
          
  
          screen = window.get_screen()
  
          # fetch settings
          use_mouse = settings.general.get_boolean('mouse-display')
          dest_screen = settings.general.get_int('display-n')
  
          if use_mouse:
  
              # TODO PORT get_pointer is deprecated
              # https://developer.gnome.org/gtk3/stable/GtkWidget.html#gtk-widget-get-pointer
              win, x, y, _ = screen.get_root_window().get_pointer()
              dest_screen = screen.get_monitor_at_point(x, y)
  
          # If Guake is configured to use a screen that is not currently attached,
          # default to 'primary display' option.
          n_screens = screen.get_n_monitors()
          if dest_screen > n_screens - 1:
              settings.general.set_boolean('mouse-display', False)
              settings.general.set_int('display-n', dest_screen)
              dest_screen = screen.get_primary_monitor()
  
          # Use primary display if configured
          if dest_screen == ALWAYS_ON_PRIMARY:
              dest_screen = screen.get_primary_monitor()
  
          return dest_screen
docs: Gets the final screen number for the main window of guake.