Snapshot/SnapWidget.py

changeset 6911
8f4a050c6895
parent 6910
5b938c17bc0a
child 6913
be170600edcd
child 6914
5ae038f273c4
diff -r 5b938c17bc0a -r 8f4a050c6895 Snapshot/SnapWidget.py
--- a/Snapshot/SnapWidget.py	Sun Mar 31 12:38:25 2019 +0200
+++ b/Snapshot/SnapWidget.py	Sun Mar 31 14:38:46 2019 +0200
@@ -57,9 +57,14 @@
         
         self.modeCombo.addItem(self.tr("Fullscreen"),
                                SnapWidget.ModeFullscreen)
-        if QApplication.desktop().screenCount() > 1:
-            self.modeCombo.addItem(self.tr("Current Screen"),
-                                   SnapWidget.ModeScreen)
+        if qVersionTuple() >= (5, 10, 0):
+            if len(QApplication.screens()) > 1:
+                self.modeCombo.addItem(self.tr("Current Screen"),
+                                       SnapWidget.ModeScreen)
+        else:
+            if QApplication.desktop().screenCount() > 1:
+                self.modeCombo.addItem(self.tr("Current Screen"),
+                                       SnapWidget.ModeScreen)
         self.modeCombo.addItem(self.tr("Rectangular Selection"),
                                SnapWidget.ModeRectangle)
         self.modeCombo.addItem(self.tr("Elliptical Selection"),
@@ -382,9 +387,13 @@
                     desktop.winId(), desktop.x(), desktop.y(),
                     desktop.width(), desktop.height())
         elif self.__mode == SnapWidget.ModeScreen:
-            desktop = QApplication.desktop()
-            screenId = desktop.screenNumber(QCursor.pos())
-            geom = desktop.screenGeometry(screenId)
+            if qVersionTuple() >= (5, 10, 0):
+                screen = QApplication.screenAt(QCursor.pos())
+                geom = screen.geometry()
+            else:
+                desktop = QApplication.desktop()
+                screenId = desktop.screenNumber(QCursor.pos())
+                geom = desktop.screenGeometry(screenId)
             x = geom.x()
             y = geom.y()
             if qVersionTuple() >= (5, 0, 0):

eric ide

mercurial