2006-08-17 Matthias Clasen <mclasen@redhat.com>
+ * gtk/gtkprintunixdialog.c (gtk_print_unix_dialog_set_manual_capabilities):
+ Re-select the current printer to update per-printer ui.
+ (#348245, Don Scorgie)
+
* gtk/gtkfilechooserbutton.c (set_info_get_info_cb)
(model_add_special_get_info_cb): Handle the case where the
filechooser button is destroyed quickly.
2006-08-17 Matthias Clasen <mclasen@redhat.com>
+ * gtk/gtkprintunixdialog.c (gtk_print_unix_dialog_set_manual_capabilities):
+ Re-select the current printer to update per-printer ui.
+ (#348245, Don Scorgie)
+
* gtk/gtkfilechooserbutton.c (set_info_get_info_cb)
(model_add_special_get_info_cb): Handle the case where the
filechooser button is destroyed quickly.
gtk_print_unix_dialog_set_manual_capabilities (GtkPrintUnixDialog *dialog,
GtkPrintCapabilities capabilities)
{
- dialog->priv->manual_capabilities = capabilities;
+ GtkPrintUnixDialogPrivate *priv = dialog->priv;
+
+ g_print ("set caps %d\n", capabilities);
+ priv->manual_capabilities = capabilities;
update_dialog_from_capabilities (dialog);
+
+ if (priv->current_printer)
+ {
+ GtkTreeSelection *selection;
+
+ selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (priv->printer_treeview));
+
+ g_object_unref (priv->current_printer);
+ priv->current_printer = NULL;
+ priv->internal_printer_change = TRUE;
+ selected_printer_changed (selection, dialog);
+ priv->internal_printer_change = FALSE;
+ }
}
#define __GTK_PRINT_UNIX_DIALOG_C__