summaryrefslogtreecommitdiffstats
path: root/src/plugins/printsupport
diff options
context:
space:
mode:
authorLu YaNing <luyaning@uniontech.com>2022-03-31 13:53:52 +0800
committerLu YaNing <luyaning@uniontech.com>2022-04-26 01:15:49 +0000
commit2f5f276b4a2a19b9f2669b84f28ce8e970aaa39f (patch)
treedf5a0edabb0c2e271abd6662ef24e8d32cc9ebbd /src/plugins/printsupport
parentd7d6f46324c7dbcfb02ddea3ab1b8db433c9b0d0 (diff)
CUPS: Add support for accessible IPP printers
CUPS 2.2 adds accessible IPP printers to the list of destinations that can be used. The "printer-uri-supported" option will be present for those IPP printers that have been recently used. https://github.com/OpenPrinting/cups/blob/master/cups/dest.c#L1611 Pick-to: 5.15 6.2 6.3 Change-Id: I49b4d2f1ee6d96e9bcc04ed1cc2ed48d7a6e7563 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
Diffstat (limited to 'src/plugins/printsupport')
-rw-r--r--src/plugins/printsupport/cups/qcupsprintersupport.cpp7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/plugins/printsupport/cups/qcupsprintersupport.cpp b/src/plugins/printsupport/cups/qcupsprintersupport.cpp
index a13804b2b6..66a2678249 100644
--- a/src/plugins/printsupport/cups/qcupsprintersupport.cpp
+++ b/src/plugins/printsupport/cups/qcupsprintersupport.cpp
@@ -165,9 +165,12 @@ QStringList QCupsPrinterSupport::availablePrintDeviceIds() const
list.reserve(count);
for (int i = 0; i < count; ++i) {
QString printerId = QString::fromLocal8Bit(dests[i].name);
- if (dests[i].instance)
+ if (dests[i].instance) {
printerId += u'/' + QString::fromLocal8Bit(dests[i].instance);
- list.append(printerId);
+ list.append(printerId);
+ } else if (cupsGetOption("printer-uri-supported", dests[i].num_options, dests[i].options)) {
+ list.append(printerId);
+ }
}
cupsFreeDests(count, dests);
return list;