forked from pool/libqt5-qtbase
Accepting request 656557 from KDE:Qt5
Qt 5.12.0 final OBS-URL: https://build.opensuse.org/request/show/656557 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/libqt5-qtbase?expand=0&rev=90
This commit is contained in:
parent
a9a0afee32
commit
96ba422bf3
@ -18,10 +18,10 @@ a Change-Id: Ib70715d331e8f380a3c9039011bb8521986652aa
|
|||||||
src/plugins/printsupport/cups/qppdprintdevice.cpp | 33 +++++++-
|
src/plugins/printsupport/cups/qppdprintdevice.cpp | 33 +++++++-
|
||||||
4 files changed, 160 insertions(+), 11 deletions(-)
|
4 files changed, 160 insertions(+), 11 deletions(-)
|
||||||
|
|
||||||
Index: qtbase-everywhere-src-5.11.0-beta1/src/plugins/printsupport/cups/qcupsprintengine.cpp
|
Index: qtbase-everywhere-src-5.12.0-alpha/src/plugins/printsupport/cups/qcupsprintengine.cpp
|
||||||
===================================================================
|
===================================================================
|
||||||
--- qtbase-everywhere-src-5.11.0-beta1.orig/src/plugins/printsupport/cups/qcupsprintengine.cpp
|
--- qtbase-everywhere-src-5.12.0-alpha.orig/src/plugins/printsupport/cups/qcupsprintengine.cpp
|
||||||
+++ qtbase-everywhere-src-5.11.0-beta1/src/plugins/printsupport/cups/qcupsprintengine.cpp
|
+++ qtbase-everywhere-src-5.12.0-alpha/src/plugins/printsupport/cups/qcupsprintengine.cpp
|
||||||
@@ -48,6 +48,7 @@
|
@@ -48,6 +48,7 @@
|
||||||
#include <qbuffer.h>
|
#include <qbuffer.h>
|
||||||
#include "private/qcups_p.h" // Only needed for PPK_CupsOptions
|
#include "private/qcups_p.h" // Only needed for PPK_CupsOptions
|
||||||
@ -30,7 +30,7 @@ Index: qtbase-everywhere-src-5.11.0-beta1/src/plugins/printsupport/cups/qcupspri
|
|||||||
|
|
||||||
#include <cups/cups.h>
|
#include <cups/cups.h>
|
||||||
|
|
||||||
@@ -243,8 +244,40 @@ void QCupsPrintEnginePrivate::closePrint
|
@@ -252,8 +253,40 @@ void QCupsPrintEnginePrivate::closePrint
|
||||||
const auto parts = printerName.splitRef(QLatin1Char('/'));
|
const auto parts = printerName.splitRef(QLatin1Char('/'));
|
||||||
const auto printerOriginalName = parts.at(0);
|
const auto printerOriginalName = parts.at(0);
|
||||||
cups_option_t* optPtr = cupsOptStruct.size() ? &cupsOptStruct.first() : 0;
|
cups_option_t* optPtr = cupsOptStruct.size() ? &cupsOptStruct.first() : 0;
|
||||||
@ -72,11 +72,11 @@ Index: qtbase-everywhere-src-5.11.0-beta1/src/plugins/printsupport/cups/qcupspri
|
|||||||
|
|
||||||
QFile::remove(tempFile);
|
QFile::remove(tempFile);
|
||||||
}
|
}
|
||||||
Index: qtbase-everywhere-src-5.11.0-beta1/src/plugins/printsupport/cups/qcupsprintersupport.cpp
|
Index: qtbase-everywhere-src-5.12.0-alpha/src/plugins/printsupport/cups/qcupsprintersupport.cpp
|
||||||
===================================================================
|
===================================================================
|
||||||
--- qtbase-everywhere-src-5.11.0-beta1.orig/src/plugins/printsupport/cups/qcupsprintersupport.cpp
|
--- qtbase-everywhere-src-5.12.0-alpha.orig/src/plugins/printsupport/cups/qcupsprintersupport.cpp
|
||||||
+++ qtbase-everywhere-src-5.11.0-beta1/src/plugins/printsupport/cups/qcupsprintersupport.cpp
|
+++ qtbase-everywhere-src-5.12.0-alpha/src/plugins/printsupport/cups/qcupsprintersupport.cpp
|
||||||
@@ -52,6 +52,35 @@
|
@@ -61,6 +61,35 @@
|
||||||
# include <cups/language.h>
|
# include <cups/language.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@ -111,8 +111,8 @@ Index: qtbase-everywhere-src-5.11.0-beta1/src/plugins/printsupport/cups/qcupspri
|
|||||||
+
|
+
|
||||||
QT_BEGIN_NAMESPACE
|
QT_BEGIN_NAMESPACE
|
||||||
|
|
||||||
QCupsPrinterSupport::QCupsPrinterSupport()
|
#if QT_CONFIG(dialogbuttonbox)
|
||||||
@@ -81,17 +110,35 @@ QPrintDevice QCupsPrinterSupport::create
|
@@ -159,17 +188,35 @@ QPrintDevice QCupsPrinterSupport::create
|
||||||
|
|
||||||
QStringList QCupsPrinterSupport::availablePrintDeviceIds() const
|
QStringList QCupsPrinterSupport::availablePrintDeviceIds() const
|
||||||
{
|
{
|
||||||
@ -153,7 +153,7 @@ Index: qtbase-everywhere-src-5.11.0-beta1/src/plugins/printsupport/cups/qcupspri
|
|||||||
return list;
|
return list;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -99,8 +146,18 @@ QString QCupsPrinterSupport::defaultPrin
|
@@ -177,8 +224,18 @@ QString QCupsPrinterSupport::defaultPrin
|
||||||
{
|
{
|
||||||
QString printerId;
|
QString printerId;
|
||||||
cups_dest_t *dests;
|
cups_dest_t *dests;
|
||||||
@ -174,7 +174,7 @@ Index: qtbase-everywhere-src-5.11.0-beta1/src/plugins/printsupport/cups/qcupspri
|
|||||||
if (dests[i].is_default) {
|
if (dests[i].is_default) {
|
||||||
printerId = QString::fromLocal8Bit(dests[i].name);
|
printerId = QString::fromLocal8Bit(dests[i].name);
|
||||||
if (dests[i].instance) {
|
if (dests[i].instance) {
|
||||||
@@ -109,8 +166,30 @@ QString QCupsPrinterSupport::defaultPrin
|
@@ -187,8 +244,30 @@ QString QCupsPrinterSupport::defaultPrin
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -206,10 +206,10 @@ Index: qtbase-everywhere-src-5.11.0-beta1/src/plugins/printsupport/cups/qcupspri
|
|||||||
+
|
+
|
||||||
+
|
+
|
||||||
QT_END_NAMESPACE
|
QT_END_NAMESPACE
|
||||||
Index: qtbase-everywhere-src-5.11.0-beta1/src/plugins/printsupport/cups/qcupsprintersupport_p.h
|
Index: qtbase-everywhere-src-5.12.0-alpha/src/plugins/printsupport/cups/qcupsprintersupport_p.h
|
||||||
===================================================================
|
===================================================================
|
||||||
--- qtbase-everywhere-src-5.11.0-beta1.orig/src/plugins/printsupport/cups/qcupsprintersupport_p.h
|
--- qtbase-everywhere-src-5.12.0-alpha.orig/src/plugins/printsupport/cups/qcupsprintersupport_p.h
|
||||||
+++ qtbase-everywhere-src-5.11.0-beta1/src/plugins/printsupport/cups/qcupsprintersupport_p.h
|
+++ qtbase-everywhere-src-5.12.0-alpha/src/plugins/printsupport/cups/qcupsprintersupport_p.h
|
||||||
@@ -56,6 +56,8 @@
|
@@ -56,6 +56,8 @@
|
||||||
|
|
||||||
#include <QtCore/qstringlist.h>
|
#include <QtCore/qstringlist.h>
|
||||||
@ -234,10 +234,10 @@ Index: qtbase-everywhere-src-5.11.0-beta1/src/plugins/printsupport/cups/qcupspri
|
|||||||
};
|
};
|
||||||
|
|
||||||
QT_END_NAMESPACE
|
QT_END_NAMESPACE
|
||||||
Index: qtbase-everywhere-src-5.11.0-beta1/src/plugins/printsupport/cups/qppdprintdevice.cpp
|
Index: qtbase-everywhere-src-5.12.0-alpha/src/plugins/printsupport/cups/qppdprintdevice.cpp
|
||||||
===================================================================
|
===================================================================
|
||||||
--- qtbase-everywhere-src-5.11.0-beta1.orig/src/plugins/printsupport/cups/qppdprintdevice.cpp
|
--- qtbase-everywhere-src-5.12.0-alpha.orig/src/plugins/printsupport/cups/qppdprintdevice.cpp
|
||||||
+++ qtbase-everywhere-src-5.11.0-beta1/src/plugins/printsupport/cups/qppdprintdevice.cpp
|
+++ qtbase-everywhere-src-5.12.0-alpha/src/plugins/printsupport/cups/qppdprintdevice.cpp
|
||||||
@@ -39,6 +39,7 @@
|
@@ -39,6 +39,7 @@
|
||||||
|
|
||||||
#include "qppdprintdevice.h"
|
#include "qppdprintdevice.h"
|
||||||
@ -246,44 +246,42 @@ Index: qtbase-everywhere-src-5.11.0-beta1/src/plugins/printsupport/cups/qppdprin
|
|||||||
#include <QtCore/QMimeDatabase>
|
#include <QtCore/QMimeDatabase>
|
||||||
#include <qdebug.h>
|
#include <qdebug.h>
|
||||||
|
|
||||||
@@ -493,10 +494,38 @@ void QPpdPrintDevice::loadPrinter()
|
@@ -63,10 +64,36 @@ QPpdPrintDevice::QPpdPrintDevice(const Q
|
||||||
m_cupsDest = 0;
|
if (parts.size() > 1)
|
||||||
}
|
m_cupsInstance = parts.at(1).toUtf8();
|
||||||
|
|
||||||
+ bool enablePrinterDiscovery = qEnvironmentVariableIsSet("QT_ENABLE_PRINTER_DISCOVERY");
|
+ bool enablePrinterDiscovery = qEnvironmentVariableIsSet("QT_ENABLE_PRINTER_DISCOVERY");
|
||||||
+
|
+
|
||||||
// Get the print instance and PPD file
|
// Get the print instance and PPD file
|
||||||
- m_cupsDest = cupsGetNamedDest(CUPS_HTTP_DEFAULT, m_cupsName, m_cupsInstance.isNull() ? nullptr : m_cupsInstance.constData());
|
- m_cupsDest = cupsGetNamedDest(CUPS_HTTP_DEFAULT, m_cupsName, m_cupsInstance.isNull() ? nullptr : m_cupsInstance.constData());
|
||||||
+
|
+ if (!enablePrinterDiscovery) {
|
||||||
+ if (!enablePrinterDiscovery) {
|
+ m_cupsDest = cupsGetNamedDest(CUPS_HTTP_DEFAULT, m_cupsName, m_cupsInstance.isNull() ? nullptr : m_cupsInstance.constData());
|
||||||
+ m_cupsDest = cupsGetNamedDest(CUPS_HTTP_DEFAULT, m_cupsName, m_cupsInstance.isNull() ? nullptr : m_cupsInstance.constData());
|
|
||||||
+ } else {
|
|
||||||
+ cups_dest_t *cupsDest = cupsGetDest( m_cupsName,
|
|
||||||
+ (m_cupsInstance.isEmpty() ? nullptr : m_cupsInstance.data()),
|
|
||||||
+ QCupsPrinterSupport::cupsPrintersCount(),
|
|
||||||
+ QCupsPrinterSupport::cupsPrinters() );
|
|
||||||
+ cupsCopyDest(cupsDest, 0, &m_cupsDest);
|
|
||||||
+ }
|
|
||||||
if (m_cupsDest) {
|
|
||||||
- const char *ppdFile = cupsGetPPD(m_cupsName);
|
|
||||||
+ char resource[HTTP_MAX_URI];
|
|
||||||
+ http_t *http = NULL;
|
|
||||||
+ const char *ppdFile = NULL;
|
|
||||||
+
|
|
||||||
+ if (enablePrinterDiscovery) {
|
|
||||||
+ http = cupsConnectDest (m_cupsDest, 0, -1, 0,
|
|
||||||
+ resource, sizeof (resource),
|
|
||||||
+ 0, 0);
|
|
||||||
+ }
|
|
||||||
+ if (http) {
|
|
||||||
+ char *name = strrchr (resource, '/');
|
|
||||||
+ if (name)
|
|
||||||
+ ppdFile = cupsGetPPD2 (http, ++name);
|
|
||||||
+ httpClose(http);
|
|
||||||
+ } else {
|
+ } else {
|
||||||
+ ppdFile = cupsGetPPD(m_cupsName);
|
+ cups_dest_t *cupsDest = cupsGetDest( m_cupsName,
|
||||||
|
+ (m_cupsInstance.isEmpty() ? nullptr : m_cupsInstance.data()),
|
||||||
|
+ QCupsPrinterSupport::cupsPrintersCount(),
|
||||||
|
+ QCupsPrinterSupport::cupsPrinters() );
|
||||||
|
+ cupsCopyDest(cupsDest, 0, &m_cupsDest);
|
||||||
+ }
|
+ }
|
||||||
|
if (m_cupsDest) {
|
||||||
|
- const char *ppdFile = cupsGetPPD(m_cupsName);
|
||||||
|
+ char resource[HTTP_MAX_URI];
|
||||||
|
+ http_t *http = NULL;
|
||||||
|
+ const char *ppdFile = NULL;
|
||||||
+
|
+
|
||||||
if (ppdFile) {
|
+ if (enablePrinterDiscovery) {
|
||||||
m_ppd = ppdOpenFile(ppdFile);
|
+ http = cupsConnectDest (m_cupsDest, 0, -1, 0,
|
||||||
unlink(ppdFile);
|
+ resource, sizeof (resource),
|
||||||
|
+ 0, 0);
|
||||||
|
+ }
|
||||||
|
+ if (http) {
|
||||||
|
+ char *name = strrchr (resource, '/');
|
||||||
|
+ if (name)
|
||||||
|
+ ppdFile = cupsGetPPD2 (http, ++name);
|
||||||
|
+ httpClose(http);
|
||||||
|
+ } else {
|
||||||
|
+ ppdFile = cupsGetPPD(m_cupsName);
|
||||||
|
+ }
|
||||||
|
if (ppdFile) {
|
||||||
|
m_ppd = ppdOpenFile(ppdFile);
|
||||||
|
unlink(ppdFile);
|
||||||
|
@ -1,77 +0,0 @@
|
|||||||
From 58426659165f3da4458ff370efe056ac17406422 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Fabian Vogt <fabian@ritter-vogt.de>
|
|
||||||
Date: Thu, 14 Jun 2018 10:02:38 +0200
|
|
||||||
Subject: [PATCH] Hack together a way to get fallback from xcb working
|
|
||||||
|
|
||||||
QTBUG-68859
|
|
||||||
---
|
|
||||||
src/plugins/platforms/xcb/qxcbintegration.cpp | 7 ++++++-
|
|
||||||
src/plugins/platforms/xcb/qxcbintegration.h | 1 +
|
|
||||||
src/plugins/platforms/xcb/qxcbmain.cpp | 13 ++++++++++---
|
|
||||||
3 files changed, 17 insertions(+), 4 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/src/plugins/platforms/xcb/qxcbintegration.cpp b/src/plugins/platforms/xcb/qxcbintegration.cpp
|
|
||||||
index 471287eb44..eb0607c6b6 100644
|
|
||||||
--- a/src/plugins/platforms/xcb/qxcbintegration.cpp
|
|
||||||
+++ b/src/plugins/platforms/xcb/qxcbintegration.cpp
|
|
||||||
@@ -206,7 +206,7 @@ QXcbIntegration::QXcbIntegration(const QStringList ¶meters, int &argc, char
|
|
||||||
|
|
||||||
if (m_connections.isEmpty()) {
|
|
||||||
qCritical("Could not connect to any X display.");
|
|
||||||
- exit(1);
|
|
||||||
+ return;
|
|
||||||
}
|
|
||||||
|
|
||||||
m_fontDatabase.reset(new QGenericUnixFontDatabase());
|
|
||||||
@@ -219,6 +219,11 @@ QXcbIntegration::QXcbIntegration(const QStringList ¶meters, int &argc, char
|
|
||||||
#endif
|
|
||||||
}
|
|
||||||
|
|
||||||
+bool QXcbIntegration::connected() const
|
|
||||||
+{
|
|
||||||
+ return !m_connections.isEmpty();
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
QXcbIntegration::~QXcbIntegration()
|
|
||||||
{
|
|
||||||
qDeleteAll(m_connections);
|
|
||||||
diff --git a/src/plugins/platforms/xcb/qxcbintegration.h b/src/plugins/platforms/xcb/qxcbintegration.h
|
|
||||||
index 186b6c5ddd..6fa2b1f25f 100644
|
|
||||||
--- a/src/plugins/platforms/xcb/qxcbintegration.h
|
|
||||||
+++ b/src/plugins/platforms/xcb/qxcbintegration.h
|
|
||||||
@@ -60,6 +60,7 @@ class Q_XCB_EXPORT QXcbIntegration : public QPlatformIntegration
|
|
||||||
public:
|
|
||||||
QXcbIntegration(const QStringList ¶meters, int &argc, char **argv);
|
|
||||||
~QXcbIntegration();
|
|
||||||
+ bool connected() const;
|
|
||||||
|
|
||||||
QPlatformPixmap *createPlatformPixmap(QPlatformPixmap::PixelType type) const override;
|
|
||||||
QPlatformWindow *createPlatformWindow(QWindow *window) const override;
|
|
||||||
diff --git a/src/plugins/platforms/xcb/qxcbmain.cpp b/src/plugins/platforms/xcb/qxcbmain.cpp
|
|
||||||
index f8cb9a9269..f48366655c 100644
|
|
||||||
--- a/src/plugins/platforms/xcb/qxcbmain.cpp
|
|
||||||
+++ b/src/plugins/platforms/xcb/qxcbmain.cpp
|
|
||||||
@@ -52,10 +52,17 @@ public:
|
|
||||||
|
|
||||||
QPlatformIntegration* QXcbIntegrationPlugin::create(const QString& system, const QStringList& parameters, int &argc, char **argv)
|
|
||||||
{
|
|
||||||
- if (!system.compare(QLatin1String("xcb"), Qt::CaseInsensitive))
|
|
||||||
- return new QXcbIntegration(parameters, argc, argv);
|
|
||||||
+ if (system.compare(QLatin1String("xcb"), Qt::CaseInsensitive))
|
|
||||||
+ return 0;
|
|
||||||
|
|
||||||
- return 0;
|
|
||||||
+ QXcbIntegration *p = new QXcbIntegration(parameters, argc, argv);
|
|
||||||
+
|
|
||||||
+ if(!p->connected()) {
|
|
||||||
+ delete p;
|
|
||||||
+ p = nullptr;
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
+ return p;
|
|
||||||
}
|
|
||||||
|
|
||||||
QT_END_NAMESPACE
|
|
||||||
--
|
|
||||||
2.17.1
|
|
||||||
|
|
@ -9,14 +9,14 @@ and fall back to 96dpi instead of returning unexpected values.
|
|||||||
src/plugins/platforms/xcb/qxcbscreen.cpp | 10 ++++++++++
|
src/plugins/platforms/xcb/qxcbscreen.cpp | 10 ++++++++++
|
||||||
1 file changed, 10 insertions(+)
|
1 file changed, 10 insertions(+)
|
||||||
|
|
||||||
diff --git a/src/plugins/platforms/xcb/qxcbscreen.cpp b/src/plugins/platforms/xcb/qxcbscreen.cpp
|
Index: qtbase-everywhere-src-5.12.0-beta3/src/plugins/platforms/xcb/qxcbscreen.cpp
|
||||||
index df458e85d7..7e898db17c 100644
|
===================================================================
|
||||||
--- a/src/plugins/platforms/xcb/qxcbscreen.cpp
|
--- qtbase-everywhere-src-5.12.0-beta3.orig/src/plugins/platforms/xcb/qxcbscreen.cpp
|
||||||
+++ b/src/plugins/platforms/xcb/qxcbscreen.cpp
|
+++ qtbase-everywhere-src-5.12.0-beta3/src/plugins/platforms/xcb/qxcbscreen.cpp
|
||||||
@@ -751,6 +751,16 @@ void QXcbScreen::updateGeometry(const QRect &geometry, uint8_t rotation)
|
@@ -752,6 +752,16 @@ void QXcbScreen::updateGeometry(const QR
|
||||||
|
qreal referenceDpi = physicalSize().width() <= 320 ? 128 : 96;
|
||||||
|
|
||||||
qreal dpi = geometry.width() / physicalSize().width() * qreal(25.4);
|
m_pixelDensity = qMax(1, qRound(dpi/referenceDpi));
|
||||||
m_pixelDensity = qMax(1, qRound(dpi/96));
|
|
||||||
+
|
+
|
||||||
+ if(m_pixelDensity > 1 && qEnvironmentVariableIsEmpty("QT_XCB_FORCE_ACCEPT_DPI")) {
|
+ if(m_pixelDensity > 1 && qEnvironmentVariableIsEmpty("QT_XCB_FORCE_ACCEPT_DPI")) {
|
||||||
+ // If we have no physical size or the resolution is untypical, fall back to 1x
|
+ // If we have no physical size or the resolution is untypical, fall back to 1x
|
||||||
@ -30,6 +30,3 @@ index df458e85d7..7e898db17c 100644
|
|||||||
m_geometry = geometry;
|
m_geometry = geometry;
|
||||||
m_availableGeometry = geometry & m_virtualDesktop->workArea();
|
m_availableGeometry = geometry & m_virtualDesktop->workArea();
|
||||||
QWindowSystemInterface::handleScreenGeometryChange(QPlatformScreen::screen(), m_geometry, m_availableGeometry);
|
QWindowSystemInterface::handleScreenGeometryChange(QPlatformScreen::screen(), m_geometry, m_availableGeometry);
|
||||||
--
|
|
||||||
2.17.1
|
|
||||||
|
|
||||||
|
@ -1,88 +0,0 @@
|
|||||||
From 82f21f3d47cf4bb3be71bf2eda3f971b43acc76d Mon Sep 17 00:00:00 2001
|
|
||||||
From: Mischa Salle <mischa.salle@gmail.com>
|
|
||||||
Date: Thu, 27 Sep 2018 13:22:47 +0200
|
|
||||||
Subject: [PATCH] Unix print dialog: Properly initialize duplex
|
|
||||||
|
|
||||||
This is a backport of https://codereview.qt-project.org/#/c/226881/ and fixes
|
|
||||||
https://bugzilla.suse.com/show_bug.cgi?id=1096328
|
|
||||||
---
|
|
||||||
src/printsupport/dialogs/qprintdialog_unix.cpp | 32 ++++++++++++++++++++++----
|
|
||||||
1 file changed, 27 insertions(+), 5 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/src/printsupport/dialogs/qprintdialog_unix.cpp b/src/printsupport/dialogs/qprintdialog_unix.cpp
|
|
||||||
index 86daea3b02..53d26bf9fc 100644
|
|
||||||
--- a/src/printsupport/dialogs/qprintdialog_unix.cpp
|
|
||||||
+++ b/src/printsupport/dialogs/qprintdialog_unix.cpp
|
|
||||||
@@ -240,6 +240,10 @@ public:
|
|
||||||
QDialogButtonBox *buttons;
|
|
||||||
QPushButton *collapseButton;
|
|
||||||
QPrinter::OutputFormat printerOutputFormat;
|
|
||||||
+private:
|
|
||||||
+ void setExplicitDuplexMode(QPrint::DuplexMode duplexMode);
|
|
||||||
+ // duplex mode explicitly set by user, QPrint::DuplexAuto otherwise
|
|
||||||
+ QPrint::DuplexMode explicitDuplexMode;
|
|
||||||
};
|
|
||||||
|
|
||||||
#if QT_CONFIG(cups)
|
|
||||||
@@ -479,7 +483,8 @@ void QPrintPropertiesDialog::accept()
|
|
||||||
|
|
||||||
*/
|
|
||||||
QPrintDialogPrivate::QPrintDialogPrivate()
|
|
||||||
- : top(nullptr), bottom(nullptr), buttons(nullptr), collapseButton(nullptr)
|
|
||||||
+ : top(nullptr), bottom(nullptr), buttons(nullptr), collapseButton(nullptr),
|
|
||||||
+ explicitDuplexMode(QPrint::DuplexAuto)
|
|
||||||
{
|
|
||||||
initResources();
|
|
||||||
}
|
|
||||||
@@ -540,6 +545,10 @@ void QPrintDialogPrivate::init()
|
|
||||||
q, SLOT(_q_togglePageSetCombo(bool)));
|
|
||||||
|
|
||||||
QObject::connect(collapseButton, SIGNAL(released()), q, SLOT(_q_collapseOrExpandDialog()));
|
|
||||||
+
|
|
||||||
+ QObject::connect(options.noDuplex, &QAbstractButton::clicked, q, [this] { setExplicitDuplexMode(QPrint::DuplexNone); });
|
|
||||||
+ QObject::connect(options.duplexLong, &QAbstractButton::clicked, q, [this] { setExplicitDuplexMode(QPrint::DuplexLongSide); });
|
|
||||||
+ QObject::connect(options.duplexShort, &QAbstractButton::clicked, q, [this] { setExplicitDuplexMode(QPrint::DuplexShortSide); });
|
|
||||||
}
|
|
||||||
|
|
||||||
// initialize printer options
|
|
||||||
@@ -559,13 +568,21 @@ void QPrintDialogPrivate::selectPrinter(const QPrinter::OutputFormat outputForma
|
|
||||||
else
|
|
||||||
options.grayscale->setChecked(true);
|
|
||||||
|
|
||||||
- switch (p->duplex()) {
|
|
||||||
- case QPrinter::DuplexNone:
|
|
||||||
+ // keep duplex value explicitly set by user, if any, and selected printer supports it;
|
|
||||||
+ // use device default otherwise
|
|
||||||
+ QPrint::DuplexMode duplex;
|
|
||||||
+ if (explicitDuplexMode != QPrint::DuplexAuto && supportedDuplexMode.contains(explicitDuplexMode))
|
|
||||||
+ duplex = explicitDuplexMode;
|
|
||||||
+ else
|
|
||||||
+ duplex = top->d->m_currentPrintDevice.defaultDuplexMode();
|
|
||||||
+
|
|
||||||
+ switch (duplex) {
|
|
||||||
+ case QPrint::DuplexNone:
|
|
||||||
options.noDuplex->setChecked(true); break;
|
|
||||||
- case QPrinter::DuplexLongSide:
|
|
||||||
+ case QPrint::DuplexLongSide:
|
|
||||||
case QPrinter::DuplexAuto:
|
|
||||||
options.duplexLong->setChecked(true); break;
|
|
||||||
- case QPrinter::DuplexShortSide:
|
|
||||||
+ case QPrint::DuplexShortSide:
|
|
||||||
options.duplexShort->setChecked(true); break;
|
|
||||||
}
|
|
||||||
options.copies->setValue(p->copyCount());
|
|
||||||
@@ -667,6 +684,11 @@ static bool isValidPagesString(const QString &pagesString) Q_DECL_NOTHROW
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
+void QPrintDialogPrivate::setExplicitDuplexMode(const QPrint::DuplexMode duplexMode)
|
|
||||||
+{
|
|
||||||
+ explicitDuplexMode = duplexMode;
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
void QPrintDialogPrivate::setupPrinter()
|
|
||||||
{
|
|
||||||
// First setup the requested OutputFormat, Printer and Page Size first
|
|
||||||
--
|
|
||||||
2.16.4
|
|
||||||
|
|
@ -1,53 +0,0 @@
|
|||||||
From 2283db90d8872df8cb3e1b2d6a3ba080b0bc687b Mon Sep 17 00:00:00 2001
|
|
||||||
From: =?UTF-8?q?B=C5=82a=C5=BCej=20Szczygie=C5=82?= <spaz16@wp.pl>
|
|
||||||
Date: Tue, 25 Sep 2018 18:45:10 +0200
|
|
||||||
Subject: [PATCH] xcb: Don't get initial screen rotation
|
|
||||||
|
|
||||||
"xcb_randr_get_screen_info" can be slow and in some configurations can
|
|
||||||
cause short mouse cursor freezes (which will happen on Qt application
|
|
||||||
startup).
|
|
||||||
|
|
||||||
Initial rotation state (if differs than 0 degrees) is used only for
|
|
||||||
filtering first screen change notify event if nothing has changed.
|
|
||||||
|
|
||||||
Also remove unused variable.
|
|
||||||
|
|
||||||
Change-Id: I9f01325a045d2c82c4dd2fce91a18a34e54a4bcd
|
|
||||||
---
|
|
||||||
src/plugins/platforms/xcb/qxcbscreen.cpp | 7 -------
|
|
||||||
src/plugins/platforms/xcb/qxcbscreen.h | 1 -
|
|
||||||
2 files changed, 8 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/src/plugins/platforms/xcb/qxcbscreen.cpp b/src/plugins/platforms/xcb/qxcbscreen.cpp
|
|
||||||
index 7f2793b2b7..a696e2a311 100644
|
|
||||||
--- a/src/plugins/platforms/xcb/qxcbscreen.cpp
|
|
||||||
+++ b/src/plugins/platforms/xcb/qxcbscreen.cpp
|
|
||||||
@@ -118,13 +118,6 @@ QXcbVirtualDesktop::QXcbVirtualDesktop(QXcbConnection *connection, xcb_screen_t
|
|
||||||
|
|
||||||
xcb_depth_next(&depth_iterator);
|
|
||||||
}
|
|
||||||
-
|
|
||||||
- if (connection->hasXRandr()) {
|
|
||||||
- xcb_connection_t *conn = connection->xcb_connection();
|
|
||||||
- auto screen_info = Q_XCB_REPLY(xcb_randr_get_screen_info, conn, screen->root);
|
|
||||||
- if (screen_info)
|
|
||||||
- m_rotation = screen_info->rotation;
|
|
||||||
- }
|
|
||||||
}
|
|
||||||
|
|
||||||
QXcbVirtualDesktop::~QXcbVirtualDesktop()
|
|
||||||
diff --git a/src/plugins/platforms/xcb/qxcbscreen.h b/src/plugins/platforms/xcb/qxcbscreen.h
|
|
||||||
index 6438669e7a..ae595dbda2 100644
|
|
||||||
--- a/src/plugins/platforms/xcb/qxcbscreen.h
|
|
||||||
+++ b/src/plugins/platforms/xcb/qxcbscreen.h
|
|
||||||
@@ -220,7 +220,6 @@ private:
|
|
||||||
xcb_randr_crtc_t m_crtc;
|
|
||||||
xcb_randr_mode_t m_mode = XCB_NONE;
|
|
||||||
bool m_primary = false;
|
|
||||||
- uint8_t m_rotation = XCB_RANDR_ROTATION_ROTATE_0;
|
|
||||||
|
|
||||||
QString m_outputName;
|
|
||||||
QSizeF m_outputSizeMillimeters;
|
|
||||||
--
|
|
||||||
2.18.0
|
|
||||||
|
|
@ -1,30 +0,0 @@
|
|||||||
From ba22a6731377c8604d13e3855204c03652c0a2e3 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Thiago Macieira <thiago.macieira@intel.com>
|
|
||||||
Date: Fri, 21 Sep 2018 09:04:24 -0700
|
|
||||||
Subject: [PATCH] Export qt_open64 from QtCore
|
|
||||||
|
|
||||||
Other libs use qcore_unix_p.h.
|
|
||||||
|
|
||||||
qopenglprogrambinarycache.cpp:function QOpenGLProgramBinaryCache::load(QByteArray const&, unsigned int): error: undefined reference to 'qt_open64(char const*, int, unsigned int)'
|
|
||||||
|
|
||||||
Change-Id: I44e7d800c68141bdaae0fffd155675d15eded2e4
|
|
||||||
---
|
|
||||||
src/corelib/kernel/qcore_unix_p.h | 2 +-
|
|
||||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
||||||
|
|
||||||
diff --git a/src/corelib/kernel/qcore_unix_p.h b/src/corelib/kernel/qcore_unix_p.h
|
|
||||||
index cb98bef3476..5a2a29a3273 100644
|
|
||||||
--- a/src/corelib/kernel/qcore_unix_p.h
|
|
||||||
+++ b/src/corelib/kernel/qcore_unix_p.h
|
|
||||||
@@ -178,7 +178,7 @@ inline void qt_ignore_sigpipe()
|
|
||||||
|
|
||||||
#if defined(Q_PROCESSOR_X86_32) && defined(__GLIBC__)
|
|
||||||
# if !__GLIBC_PREREQ(2, 22)
|
|
||||||
-int qt_open64(const char *pathname, int flags, mode_t);
|
|
||||||
+Q_CORE_EXPORT int qt_open64(const char *pathname, int flags, mode_t);
|
|
||||||
# undef QT_OPEN
|
|
||||||
# define QT_OPEN qt_open64
|
|
||||||
# endif
|
|
||||||
--
|
|
||||||
2.16.3
|
|
||||||
|
|
@ -1,3 +1,85 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Dec 6 13:35:10 UTC 2018 - fabian@ritter-vogt.de
|
||||||
|
|
||||||
|
- Update to 5.12.0:
|
||||||
|
* New feature release
|
||||||
|
* For more details please see:
|
||||||
|
* http://code.qt.io/cgit/qt/qtbase.git/plain/dist/changes-5.12.0/?h=v5.12.0
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Dec 3 08:16:17 UTC 2018 - fabian@ritter-vogt.de
|
||||||
|
|
||||||
|
- Update to 5.12.0-rc2:
|
||||||
|
* New bugfix release
|
||||||
|
* Only important bugfixes
|
||||||
|
- Changelog for Qt 5.12.0:
|
||||||
|
* http://code.qt.io/cgit/qt/qtbase.git/plain/dist/changes-5.12.0/?h=5.12.0
|
||||||
|
- Remove patches, now upstream:
|
||||||
|
* 0001-Fix-build-with-OpenSSL-1.1.0.patch
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Nov 27 08:12:10 UTC 2018 - Fabian Vogt <fabian@ritter-vogt.de>
|
||||||
|
|
||||||
|
- Remove uikit qmake spec to avoid automatic dep on python2
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Nov 22 13:38:47 UTC 2018 - fabian@ritter-vogt.de
|
||||||
|
|
||||||
|
- Update to 5.12.0-rc:
|
||||||
|
* New bugfix release
|
||||||
|
* No changelog available
|
||||||
|
- Add patch to fix build with OpenSSL 1.1.0:
|
||||||
|
* 0001-Fix-build-with-OpenSSL-1.1.0.patch
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Nov 8 15:24:22 UTC 2018 - fabian@ritter-vogt.de
|
||||||
|
|
||||||
|
- Update to 5.12.0-beta4:
|
||||||
|
* New bugfix release
|
||||||
|
* No changelog available
|
||||||
|
- Remove patches, now upstream:
|
||||||
|
* 0001-xcb-Don-t-get-initial-screen-rotation.patch
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Oct 26 07:20:17 UTC 2018 - fabian@ritter-vogt.de
|
||||||
|
|
||||||
|
- Update to 5.12.0-beta3:
|
||||||
|
* New bugfix release
|
||||||
|
* No changelog available
|
||||||
|
- Refresh 0001-Sanitize-QXcbScreen-s-pixelDensity-values.patch
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Oct 17 08:22:23 UTC 2018 - fabian@ritter-vogt.de
|
||||||
|
|
||||||
|
- Update to 5.12.0-beta2:
|
||||||
|
* New bugfix release
|
||||||
|
* No changelog available
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Oct 5 18:54:41 UTC 2018 - fabian@ritter-vogt.de
|
||||||
|
|
||||||
|
- Update to 5.12.0-beta1:
|
||||||
|
* New bugfix release
|
||||||
|
* No changelog available
|
||||||
|
- Remove patches, now upstream:
|
||||||
|
* Export-qt_open64-from-QtCore.patch
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Oct 2 07:33:10 UTC 2018 - fabian@ritter-vogt.de
|
||||||
|
|
||||||
|
- Update to 5.12.0-alpha:
|
||||||
|
* New feature release
|
||||||
|
* For more details please see:
|
||||||
|
* http://wiki.qt.io/New_Features_in_Qt_5.12
|
||||||
|
- Refresh patches:
|
||||||
|
* 0001-Add-remote-print-queue-support.patch
|
||||||
|
* 0001-xcb-Don-t-get-initial-screen-rotation.patch
|
||||||
|
- Remove patches, now upstream:
|
||||||
|
* 0001-Hack-together-a-way-to-get-fallback-from-xcb-working.patch
|
||||||
|
* 0001-Unix-print-dialog-Properly-initialize-duplex.patch
|
||||||
|
- Rename -platformtheme-flatpak to platformtheme-xdgdesktopportal
|
||||||
|
- Adjust libQt5PrintSupport-private-headers-devel Requires
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Thu Sep 27 11:34:31 UTC 2018 - mischa.salle@gmail.com
|
Thu Sep 27 11:34:31 UTC 2018 - mischa.salle@gmail.com
|
||||||
|
|
||||||
|
@ -36,17 +36,17 @@
|
|||||||
%endif
|
%endif
|
||||||
|
|
||||||
Name: libqt5-qtbase
|
Name: libqt5-qtbase
|
||||||
Version: 5.11.2
|
Version: 5.12.0
|
||||||
Release: 0
|
Release: 0
|
||||||
Summary: C++ Program Library, Core Components
|
Summary: C++ Program Library, Core Components
|
||||||
License: LGPL-2.1-with-Qt-Company-Qt-exception-1.1 or LGPL-3.0-only
|
License: LGPL-2.1-with-Qt-Company-Qt-exception-1.1 or LGPL-3.0-only
|
||||||
Group: System/Libraries
|
Group: System/Libraries
|
||||||
Url: https://www.qt.io
|
Url: https://www.qt.io
|
||||||
%define base_name libqt5
|
%define base_name libqt5
|
||||||
%define real_version 5.11.2
|
%define real_version 5.12.0
|
||||||
%define so_version 5.11.2
|
%define so_version 5.12.0
|
||||||
%define tar_version qtbase-everywhere-src-5.11.2
|
%define tar_version qtbase-everywhere-src-5.12.0
|
||||||
Source: https://download.qt.io/official_releases/qt/5.11/%{real_version}/submodules/%{tar_version}.tar.xz
|
Source: https://download.qt.io/official_releases/qt/5.12/%{real_version}/submodules/%{tar_version}.tar.xz
|
||||||
# to get mtime of file:
|
# to get mtime of file:
|
||||||
Source1: libqt5-qtbase.changes
|
Source1: libqt5-qtbase.changes
|
||||||
Source2: macros.qt5
|
Source2: macros.qt5
|
||||||
@ -65,16 +65,12 @@ Patch12: 0001-Add-remote-print-queue-support.patch
|
|||||||
# PATCH-FIX-OPENSUSE
|
# PATCH-FIX-OPENSUSE
|
||||||
Patch13: 0001-Revert-QWidgetWindow-Immediately-forward-close-event.patch
|
Patch13: 0001-Revert-QWidgetWindow-Immediately-forward-close-event.patch
|
||||||
# PATCH-FIX-OPENSUSE
|
# PATCH-FIX-OPENSUSE
|
||||||
Patch16: 0001-Hack-together-a-way-to-get-fallback-from-xcb-working.patch
|
|
||||||
Patch17: 0001-Sanitize-QXcbScreen-s-pixelDensity-values.patch
|
Patch17: 0001-Sanitize-QXcbScreen-s-pixelDensity-values.patch
|
||||||
Patch18: 0002-xcb-Use-the-screen-s-physical-DPI-as-logical-DPI-unl.patch
|
Patch18: 0002-xcb-Use-the-screen-s-physical-DPI-as-logical-DPI-unl.patch
|
||||||
# PATCH-FIX-UPSTREAM
|
# PATCH-FIX-UPSTREAM
|
||||||
Patch19: qapplication-emit-palettechanged.patch
|
Patch19: qapplication-emit-palettechanged.patch
|
||||||
# patches 1000- 2000 and above from upstream 5.11 branch #
|
# patches 1000-2000 and above from upstream 5.12 branch #
|
||||||
Patch1000: Export-qt_open64-from-QtCore.patch
|
# patches 2000-3000 and above from upstream 5.13/dev branch #
|
||||||
Patch1001: 0001-xcb-Don-t-get-initial-screen-rotation.patch
|
|
||||||
# patches 2000-3000 and above from upstream 5.12/dev branch #
|
|
||||||
Patch2000: 0001-Unix-print-dialog-Properly-initialize-duplex.patch
|
|
||||||
BuildRequires: alsa-devel
|
BuildRequires: alsa-devel
|
||||||
BuildRequires: cups-devel
|
BuildRequires: cups-devel
|
||||||
BuildRequires: double-conversion-devel
|
BuildRequires: double-conversion-devel
|
||||||
@ -420,6 +416,8 @@ Requires: libQt5Core-private-headers-devel = %{version}
|
|||||||
Requires: libQt5Gui-private-headers-devel = %{version}
|
Requires: libQt5Gui-private-headers-devel = %{version}
|
||||||
Requires: libQt5PrintSupport-devel = %{version}
|
Requires: libQt5PrintSupport-devel = %{version}
|
||||||
Requires: libQt5Widgets-private-headers-devel = %{version}
|
Requires: libQt5Widgets-private-headers-devel = %{version}
|
||||||
|
# Includes <cups/ppd.h> in qprint_p.h
|
||||||
|
Requires: cups-devel
|
||||||
|
|
||||||
%description -n libQt5PrintSupport-private-headers-devel
|
%description -n libQt5PrintSupport-private-headers-devel
|
||||||
This package provides private headers of libQt5PrintSupport that are
|
This package provides private headers of libQt5PrintSupport that are
|
||||||
@ -604,13 +602,15 @@ Requires: libQt5Gui5 = %{version}
|
|||||||
%description platformtheme-gtk3
|
%description platformtheme-gtk3
|
||||||
Qt 5 plugin for better integration with gtk3-based desktop enviroments.
|
Qt 5 plugin for better integration with gtk3-based desktop enviroments.
|
||||||
|
|
||||||
%package platformtheme-flatpak
|
%package platformtheme-xdgdesktopportal
|
||||||
Summary: Qt 5 Flatpak plugin
|
Summary: Qt 5 XDG Desktop Portal Plugin
|
||||||
Group: Development/Libraries/C and C++
|
Group: Development/Libraries/C and C++
|
||||||
Requires: libQt5Gui5 = %{version}
|
Requires: libQt5Gui5 = %{version}
|
||||||
|
Obsoletes: %{name}-platformtheme-flatpak < %{version}
|
||||||
|
Provides: %{name}-platformtheme-flatpak = %{version}
|
||||||
|
|
||||||
%description platformtheme-flatpak
|
%description platformtheme-xdgdesktopportal
|
||||||
Qt 5 plugin for integration with flatpak.
|
Qt 5 plugin for integration with flatpak and snap.
|
||||||
|
|
||||||
%package -n libQt5Gui-devel
|
%package -n libQt5Gui-devel
|
||||||
Summary: Development files for the Qt5 GUI library
|
Summary: Development files for the Qt5 GUI library
|
||||||
@ -943,6 +943,9 @@ rm -fv %{buildroot}%{libqt5_libdir}/*png.*
|
|||||||
#
|
#
|
||||||
rm -fv %{buildroot}%{libqt5_libdir}/cmake/Qt5*/Q*Plugin.cmake
|
rm -fv %{buildroot}%{libqt5_libdir}/cmake/Qt5*/Q*Plugin.cmake
|
||||||
|
|
||||||
|
# This is only for Apple platforms and has a python2 dep
|
||||||
|
rm -r %{buildroot}%{libqt5_archdatadir}/mkspecs/features/uikit
|
||||||
|
|
||||||
mkdir -p %{buildroot}%{libqt5_plugindir}/sqldrivers
|
mkdir -p %{buildroot}%{libqt5_plugindir}/sqldrivers
|
||||||
|
|
||||||
# put all the binaries to %{_bindir}, add -qt5 suffix, and symlink them back to %_qt5_bindir
|
# put all the binaries to %{_bindir}, add -qt5 suffix, and symlink them back to %_qt5_bindir
|
||||||
@ -1210,11 +1213,11 @@ popd
|
|||||||
%dir %{libqt5_plugindir}/platformthemes
|
%dir %{libqt5_plugindir}/platformthemes
|
||||||
%{libqt5_plugindir}/platformthemes/libqgtk3.so
|
%{libqt5_plugindir}/platformthemes/libqgtk3.so
|
||||||
|
|
||||||
%files platformtheme-flatpak
|
%files platformtheme-xdgdesktopportal
|
||||||
%defattr(-,root,root,755)
|
%defattr(-,root,root,755)
|
||||||
%doc *.txt LICENSE.*
|
%doc *.txt LICENSE.*
|
||||||
%dir %{libqt5_plugindir}/platformthemes
|
%dir %{libqt5_plugindir}/platformthemes
|
||||||
%{libqt5_plugindir}/platformthemes/libqflatpak.so
|
%{libqt5_plugindir}/platformthemes/libqxdgdesktopportal.so
|
||||||
|
|
||||||
%files -n libQt5Gui-devel
|
%files -n libQt5Gui-devel
|
||||||
%defattr(-,root,root,755)
|
%defattr(-,root,root,755)
|
||||||
|
@ -1,3 +0,0 @@
|
|||||||
version https://git-lfs.github.com/spec/v1
|
|
||||||
oid sha256:6381e7c3468d5a1dcfe3683b29eeced192faa0f8a32434fec071a59b8bcd0107
|
|
||||||
size 46954920
|
|
3
qtbase-everywhere-src-5.12.0.tar.xz
Normal file
3
qtbase-everywhere-src-5.12.0.tar.xz
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:5e03221d780e121aabd734896aab8f331e5d8c9d9b54f1eb04907d0818eaeecb
|
||||||
|
size 48288896
|
Loading…
Reference in New Issue
Block a user