Search for samba printers on local network or on specified
host. The new printer dialog asks for password for a samba
server if it is needed for listing printers on it. User is
asked for selection of driver from local database during
addition of new samba printer.
https://bugzilla.gnome.org/show_bug.cgi?id=683229
This commit implements design changes from
https://live.gnome.org/Design/SystemSettings/Printers.
The new printer dialog gets informations about connected devices
from CUPS server asynchronously and separately for each backend now.
Entering an address into the entry and pressing the icon inside
the entry or enter starts to detect printers on the entered host.
Entering a text which is a substring of a name of a device or its location
filters the list to contain just devicess with the string in it (e.g. Canon
will keep devices with "Canon" in their name).
The PpNewPrinterDialog is regular object now. It emits signal "pre-response"
when dialog is closed and a printer is being added and signal "response" when
the new printer was added, addition of the new printer failed or the dialog was
cancelled.
This commit removes FirewallD support from new printer dialog. (#683229)
CUPS 1.6 makes various structures private and
introduces these ippGet and ippSet functions
for all of the fields in these structures.
http://www.cups.org/str.php?L3928
We define our own accessors when
building against CUPS < 1.6. (#679759)
(modified by Marek Kasik)
Use new cups-pk-helper's method PrinterAddOption for setting
default media size for new printers. This fixes problem with
setting default media size (#672694).
Don't hide address entry when there is not firewalld available.
It is still possible that firewall is set up correctly and user
should be able to enter address of his network printer and
install it (rhbz #743694).
The lower-cased string needs to be checked against a lower-case
string, or it's never going to match (found by Bastien Nocera in
gnome-settings-daemon).
If available, use DBus method MissingExecutables which finds executables
needed by new printer. This method is available in system-config-printer
since version 1.3.5 (#654742). User is offered installation of packages
containing those missing executables then.
If available, use DBus method GroupPhysicalDevices which removes duplicates
from list of found devices. This method is available in system-config-printer
since version 1.3.5 (#654742).
If available, use DBus method GetBestDriver which determines the best PPD file
for the given printer. This method is available in system-config-printer
since version 1.3.5 (#654742).
This commit enables services mdns, ipp, ipp-client and samba-client on
firewall for 5 minutes for detection of network printers (#648784).
It enables required services permanently for printers selected by user
for addition then. It shows a notification for the permanent enable.
It uses firewalld, so if it is not installed or running it shows a warning
message to the user in the place where discovered printers will be shown
(both local and network). The warning disappears after the finish of
printers discovery (but not from network part if no printer was found).
Search for printers on address given by user using CUPS's SNMP backend.
This modification typically finds network printers publishing themselves
on port 9100.
Check successful installation of new printer by search
in list of destinations given by CUPS. Add index to the end
of name of new printer if the name is already used.
Pass a GCancellable object to g_dbus_proxy_call() for DevicesGet
method. This assures that g-c-c won't crash when user cancels addition
of new printer before the call is finished (rhbz#691931).
This patch makes PpNewPrinterDialog to call DevicesGet method
asynchronously now.
It also adds spinner to the lower left corner with label showing
status of this operation (#644212).
The dialog is able to add printers discovered by cupsGetDevices().
It can also add printers from a remote CUPS server by typing
its address and selecting printer we want to add (#640734).