The dialog is now displayed by calling gtk_dialog_run and
gtk_window_set_transient_for in the window displaying the dialog.
Cleanup is handled using gtk_widget_destroy.
Destructors in the windows using the dialog no longer cleanup the dialog
as it is assumed it will be either cleaned up after the response
callback, or handled by the destroy_with_parent property set on the
dialog itself.
G_IS_OBJECT checks fail when calling g_signal_connect_object because
PpPPDSelectionDialog is a struct, not a type descending from G_OBJECT.
This makes the changes required for PpPPDSelectionDialog to be a
GObject, and defines PpPPDSelectionDialog as a GObject. It also updates
consumers of PpPPDSelectionDialog to destroy created PpPPDSelectionDialogs as GObjects.
https://gitlab.gnome.org/GNOME/gnome-control-center/-/issues/1126
When the search field in the "Add Printer" dialog is edited, no
authentication with a remote SMB server should be attempted. The server
should just be added to the list and marked with "Server requires
authentication". The user can then authenticate the server by clicking
on it.
The behavior described above is probably the intended one when the code
was written, since there is no closure registered for the
"authentication-required" signal in the function this commit modifies.
This commit should simply restore the intended behavior.
Resolves: https://gitlab.gnome.org/GNOME/gnome-control-center/issues/755
Add a scheme to the address which we test for correctness
by g_network_address_parse_uri(). It does not work without it.
Use "none" scheme if user did not entered one.
Use port number 0 if user did not specify any.
Fixes#679
The "Add Printer" dialog should be smart enough to know whether
an item listed in the dialog is a samba server or just a printer.
If it is a samba server, it should go for the authentication page
instead of emitting a GTK_RESPONSE_*.
https://bugzilla.gnome.org/show_bug.cgi?id=778277
List a printer in the "Add Printer" dialog as soon as it is
discovered. The header subtitle "Searching for Printers"
denotes that the Search is not done yet.
https://bugzilla.gnome.org/show_bug.cgi?id=760783
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
'device-class' property of PpPrintDevice can contain "network"
or "direct" values. This information can be stored in already
present property 'is-network-device' as well.
https://bugzilla.gnome.org/show_bug.cgi?id=749830