mirror of
https://github.com/qTox/qTox.git
synced 2024-03-22 14:00:36 +08:00
fix(x11grab): try and use the current display
Don't hard-code ":0" as the display and try and use the DISPLAY environment variable instead. This fixes screen grabbing under X11 when the user is not on screen 0. Fix #3500.
This commit is contained in:
parent
e97a870c0f
commit
294bdab77f
|
@ -317,7 +317,17 @@ QVector<QPair<QString, QString>> CameraDevice::getDeviceList()
|
|||
if (idesktopFormat)
|
||||
{
|
||||
if (idesktopFormat->name == QString("x11grab"))
|
||||
devices.push_back(QPair<QString,QString>{"x11grab#:0", QObject::tr("Desktop", "Desktop as a camera input for screen sharing")});
|
||||
{
|
||||
QString dev = "x11grab#";
|
||||
QByteArray display = qgetenv("DISPLAY");
|
||||
|
||||
if (display.isNull())
|
||||
dev += ":0";
|
||||
else
|
||||
dev += display.constData();
|
||||
|
||||
devices.push_back(QPair<QString,QString>{dev, QObject::tr("Desktop", "Desktop as a camera input for screen sharing")});
|
||||
}
|
||||
if (idesktopFormat->name == QString("gdigrab"))
|
||||
devices.push_back(QPair<QString,QString>{"gdigrab#desktop", QObject::tr("Desktop", "Desktop as a camera input for screen sharing")});
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue
Block a user