Package: xfprint4
Version: 4.4.2-1~bpo40+2+fco
Severity: normal
Tags: patch
xfprint only uses settings of its start time to print, not the ones set in the
print dialog.
If one wants to take new settings into account, one must start it, set
settings, save them, close, restart it and at last print. If one wants to
change settings for a single print, it's not directly possible without
double-save operations.
Reading the source confirmed the observed behaviour. Correction is simple,
attaching a patch file...
NB: I'm running a BPO version, but the bug exists in both Debian's stable
(4.3.99) and upstream (also SVN) versions.
-- System Information:
Debian Release: 4.0
APT prefers stable
APT policy: (500, 'stable')
Architecture: i386 (i686)
Shell: /bin/sh linked to /bin/bash
Kernel: Linux 2.6.18-6-686
Locale: [EMAIL PROTECTED], [EMAIL PROTECTED] (charmap=ISO-8859-15)
Versions of packages xfprint4 depends on:
ii libatk1.0-0 1.12.4-3 The ATK accessibility toolkit
ii libc6 2.3.6.ds1-13etch5 GNU C Library: Shared libraries
ii libcairo2 1.2.4-4.1+etch1 The Cairo 2D vector graphics libra
ii libcupsys2 1.2.7-4etch3 Common UNIX Printing System(tm) -
ii libfontconfig1 2.4.2-1.2 generic font configuration library
ii libfreetype6 2.2.1-5+etch2 FreeType 2 font engine, shared lib
ii libglib2.0-0 2.12.4-2 The GLib library of C routines
ii libgnutls13 1.4.4-3 the GNU TLS library - runtime libr
ii libgtk2.0-0 2.8.20-7 The GTK+ graphical user interface
ii libpango1.0-0 1.14.8-5 Layout and rendering of internatio
ii libpng12-0 1.2.15~beta5-1 PNG library - runtime
ii libx11-6 2:1.0.3-7 X11 client-side library
ii libxcursor1 1.1.7-4 X cursor management library
ii libxext6 1:1.0.1-2 X11 miscellaneous extension librar
ii libxfce4mcs-client3 4.4.2-1~bpo40+1 Client library for Xfce4 configure
ii libxfce4mcs-manager3 4.4.2-1~bpo40+1 Manager library for Xfce4 configur
ii libxfce4util4 4.4.2-1~bpo40+1 Utility functions library for Xfce
ii libxfcegui4-4 4.4.2-1~bpo40+1 Basic GUI C functions for Xfce4
ii libxfixes3 1:4.0.1-5 X11 miscellaneous 'fixes' extensio
ii libxi6 1:1.0.1-4 X11 Input extension library
ii libxinerama1 1:1.0.1-4.1 X11 Xinerama extension library
ii libxrandr2 2:1.1.0.2-5 X11 RandR extension library
ii libxrender1 1:0.9.1-3 X Rendering Extension client libra
ii zlib1g 1:1.2.3-13 compression library - runtime
xfprint4 recommends no packages.
Ce message est à l'attention exclusive des destinataires désignés. Il peut
contenir des informations confidentielles. Si vous n'êtes pas destinataire du
message, merci d'en avertir immédiatement l'expéditeur et de détruire ce
message. Le contenu de ce message ne pourrait engager la responsabilité de
Steria que s'il a été émis par une personne dûment habilitée agissant dans le
strict cadre de ses fonctions et à des fins non étrangères à ses attributions.
Bien que les meilleurs efforts soient faits pour maintenir cette transmission
exempte de tout virus, l'expéditeur ne donne aucune garantie à cet égard et sa
responsabilité ne saurait être engagée pour tout dommage résultant d'un virus
transmis.
This message is intended exclusively for the designated addressee. It may
contain confidential material. If you are not the correct addressee, please
notify the sender immediately and destroy the message. The content of this
message will engage the responsibility of Steria only if it has been sent by an
authorized person acting in the strict scope of his functions and for purposes
that are related to his competence. Although reasonable efforts have been made
to keep this transmission free from viruses, the sender will not be liable for
damages caused by a transmitted virus.
--- xfprint-4.4.2.orig/xfprint/print_dialog.c 2007-11-17 20:31:59.000000000 +0100
+++ xfprint-4.4.2+fco/xfprint/print_dialog.c 2008-04-21 13:19:57.000000000 +0200
@@ -422,6 +422,19 @@
printers_free (printers);
}
+static void
+print_dialog_get_settings (XfprintSettings *settings, PrintDialog * dlg)
+{
+ PrintDialogPrivate *priv = PRINT_DIALOG_GET_PRIVATE (dlg);
+
+ sheets_page_get_settings (SHEETS_PAGE (priv->sheets), &settings->sheets);
+ vpages_page_get_settings (VPAGES_PAGE (priv->vpages), &settings->vpages);
+ pprint_page_get_settings (PPRINT_PAGE (priv->pprint), &settings->pprint);
+ input_page_get_settings (INPUT_PAGE (priv->input), &settings->input);
+ head_page_get_settings (HEAD_PAGE (priv->head), &settings->headings);
+ settings->copies = gtk_spin_button_get_value_as_int (GTK_SPIN_BUTTON (priv->copies));
+}
+
/*************/
/* callbacks */
/*************/
@@ -437,6 +450,7 @@
XfprintFilter *filter;
filters = xfprint_filterlist_new ();
+ print_dialog_get_settings (priv->settings, dlg);
if (GTK_WIDGET_IS_SENSITIVE (priv->entry_file)) {
ofile = g_strdup (gtk_entry_get_text (GTK_ENTRY (priv->entry_file)));
@@ -495,17 +509,11 @@
static void
button_save_clicked_cb (GtkWidget * widget, PrintDialog *dlg)
{
- PrintDialogPrivate *priv = PRINT_DIALOG_GET_PRIVATE (dlg);
XfprintSettings *settings;
settings = xfprintsettings_defaults ();
- sheets_page_get_settings (SHEETS_PAGE (priv->sheets), &settings->sheets);
- vpages_page_get_settings (VPAGES_PAGE (priv->vpages), &settings->vpages);
- pprint_page_get_settings (PPRINT_PAGE (priv->pprint), &settings->pprint);
- input_page_get_settings (INPUT_PAGE (priv->input), &settings->input);
- head_page_get_settings (HEAD_PAGE (priv->head), &settings->headings);
- settings->copies = gtk_spin_button_get_value_as_int (GTK_SPIN_BUTTON (priv->copies));
+ print_dialog_get_settings (settings, dlg);
xfprintsettings_save (settings);
xfprintsettings_free (settings);