Qt5 deprications (#2076)

* working on removing deprecated warnings for Qt6 migration

* tewsting 18.04 fix
This commit is contained in:
borgmanJeremy
2021-11-21 14:40:56 -06:00
committed by GitHub
parent 8ab1ac0eaa
commit b8c0b74ea2
4 changed files with 23 additions and 24 deletions

View File

@@ -226,8 +226,6 @@ void Controller::requestCapture(const CaptureRequest& request)
this->startFullscreenCapture(id); this->startFullscreenCapture(id);
}); });
break; break;
// TODO: Figure out the code path that gets here so the deprated
// warning can be fixed
case CaptureRequest::SCREEN_MODE: { case CaptureRequest::SCREEN_MODE: {
int&& number = request.data().toInt(); int&& number = request.data().toInt();
doLater(request.delay(), this, [this, id, number]() { doLater(request.delay(), this, [this, id, number]() {
@@ -320,20 +318,25 @@ void Controller::startVisualCapture(const uint id,
void Controller::startScreenGrab(const uint id, const int screenNumber) void Controller::startScreenGrab(const uint id, const int screenNumber)
{ {
bool ok = true; bool ok = true;
int n = screenNumber; auto screen = qApp->screens()[screenNumber];
if (n < 0) { if (screenNumber < 0) {
QPoint globalCursorPos = QCursor::pos(); QPoint globalCursorPos = QCursor::pos();
n = qApp->desktop()->screenNumber(globalCursorPos); #if QT_VERSION > QT_VERSION_CHECK(5, 10, 0)
screen = qApp->screenAt(globalCursorPos);
#else
screen =
qApp->screens()[qApp->desktop()->screenNumber(globalCursorPos)];
#endif
} }
QPixmap p(ScreenGrabber().grabScreen(n, ok)); QPixmap p(ScreenGrabber().grabScreen(screen, ok));
if (ok) { if (ok) {
CaptureRequest& req = *requests().find(id); CaptureRequest& req = *requests().find(id);
QRect region = req.initialSelection(); QRect region = req.initialSelection();
if (region.isNull()) { if (region.isNull()) {
region = ScreenGrabber().screenGeometry(n); region = ScreenGrabber().screenGeometry(screen);
} else { } else {
QRect screenGeom = ScreenGrabber().screenGeometry(n); QRect screenGeom = ScreenGrabber().screenGeometry(screen);
screenGeom.moveTopLeft({ 0, 0 }); screenGeom.moveTopLeft({ 0, 0 });
region = region.intersected(screenGeom); region = region.intersected(screenGeom);
p = p.copy(region); p = p.copy(region);

View File

@@ -144,12 +144,11 @@ QPixmap ScreenGrabber::grabEntireDesktop(bool& ok)
#endif #endif
} }
QRect ScreenGrabber::screenGeometry(int screenNumber) QRect ScreenGrabber::screenGeometry(QScreen* screen)
{ {
QPixmap p; QPixmap p;
QRect geometry; QRect geometry;
bool isVirtual = QApplication::desktop()->isVirtualDesktop(); if (m_info.waylandDetected()) {
if (isVirtual || m_info.waylandDetected()) {
QPoint topLeft(0, 0); QPoint topLeft(0, 0);
#ifdef Q_OS_WIN #ifdef Q_OS_WIN
for (QScreen* const screen : QGuiApplication::screens()) { for (QScreen* const screen : QGuiApplication::screens()) {
@@ -160,7 +159,7 @@ QRect ScreenGrabber::screenGeometry(int screenNumber)
} }
} }
#endif #endif
geometry = QApplication::desktop()->screenGeometry(screenNumber); geometry = screen->geometry();
geometry.moveTo(geometry.topLeft() - topLeft); geometry.moveTo(geometry.topLeft() - topLeft);
} else { } else {
QScreen* currentScreen = QGuiAppCurrentScreen().currentScreen(); QScreen* currentScreen = QGuiAppCurrentScreen().currentScreen();
@@ -169,12 +168,11 @@ QRect ScreenGrabber::screenGeometry(int screenNumber)
return geometry; return geometry;
} }
QPixmap ScreenGrabber::grabScreen(int screenNumber, bool& ok) QPixmap ScreenGrabber::grabScreen(QScreen* screen, bool& ok)
{ {
QPixmap p; QPixmap p;
bool isVirtual = QApplication::desktop()->isVirtualDesktop(); QRect geometry = screenGeometry(screen);
QRect geometry = screenGeometry(screenNumber); if (m_info.waylandDetected()) {
if (isVirtual || m_info.waylandDetected()) {
p = grabEntireDesktop(ok); p = grabEntireDesktop(ok);
if (ok) { if (ok) {
return p.copy(geometry); return p.copy(geometry);
@@ -182,11 +180,8 @@ QPixmap ScreenGrabber::grabScreen(int screenNumber, bool& ok)
} else { } else {
ok = true; ok = true;
QScreen* currentScreen = QGuiAppCurrentScreen().currentScreen(); QScreen* currentScreen = QGuiAppCurrentScreen().currentScreen();
return currentScreen->grabWindow(screenNumber, return currentScreen->grabWindow(
geometry.x(), geometry.x(), geometry.y(), geometry.width(), geometry.height());
geometry.y(),
geometry.width(),
geometry.height());
} }
return p; return p;
} }

View File

@@ -5,6 +5,7 @@
#include "src/utils/desktopinfo.h" #include "src/utils/desktopinfo.h"
#include <QObject> #include <QObject>
#include <QScreen>
class ScreenGrabber : public QObject class ScreenGrabber : public QObject
{ {
@@ -12,8 +13,8 @@ class ScreenGrabber : public QObject
public: public:
explicit ScreenGrabber(QObject* parent = nullptr); explicit ScreenGrabber(QObject* parent = nullptr);
QPixmap grabEntireDesktop(bool& ok); QPixmap grabEntireDesktop(bool& ok);
QRect screenGeometry(int screenNumber); QRect screenGeometry(QScreen* screen);
QPixmap grabScreen(int screenNumber, bool& ok); QPixmap grabScreen(QScreen* screenNumber, bool& ok);
void freeDesktopPortal(bool& ok, QPixmap& res); void freeDesktopPortal(bool& ok, QPixmap& res);
QRect desktopGeometry(); QRect desktopGeometry();

View File

@@ -499,7 +499,7 @@ QVariant Region::process(const QVariant& val)
if (!ok || number < 0) { if (!ok || number < 0) {
return {}; return {};
} }
return ScreenGrabber().screenGeometry(number); return ScreenGrabber().screenGeometry(qApp->screens()[number]);
} }
QRegExp regex("(-{,1}\\d+)" // number (any sign) QRegExp regex("(-{,1}\\d+)" // number (any sign)