Remove the GList holding printing devices and use already present
GtkListStore for this in the New printer dialog.
This avoids us to install wrong printer when there is more devices
with the same name since we have GtkTreeIter of the selected row.
Use GtkTreeModelFilter for filtering of current devices.
Update test for canonicalize_device_name() since I had to change one
of its parameters.
https://bugzilla.gnome.org/show_bug.cgi?id=749830
The GtkStack page which shows the label 'No printers detected' in the
'New printer dialog' misses border.
This commit places the GtkLabel into a GtkFrame to achieve that.
https://bugzilla.gnome.org/show_bug.cgi?id=749883
In order to automatically keep the selected row scrolled in view,
the treeview must be a direct child of the scrolled window. Make
it so by flipping the order of the stack and the scrolled window.
https://bugzilla.gnome.org/show_bug.cgi?id=739600
Move the text "No printers detected." to its own GtkLabel
which is vertically and horizontally centerd and show it
instead of GtkTreeView when no devices were found.
https://bugzilla.gnome.org/show_bug.cgi?id=706897
When a Samba server which needs authentication is discovered, add
it to the list of new devices and allow user to authenticate against it
by pressing new "Authenticate" button.
Show only printers available on such a server when authenticated and
remove the server from the list.
https://bugzilla.gnome.org/show_bug.cgi?id=698532
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)
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).
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).
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).