mirror of
https://gitlab.gnome.org/GNOME/gtk.git
synced 2025-01-10 20:50:12 +00:00
printunixdialog: Update collate icon as entry changes
By relying on GtkSpinButton default activation behavior, the collate icon doesn't get updated when a new number is typed in the copies spin button. https://bugzilla.gnome.org/show_bug.cgi?id=759308
This commit is contained in:
parent
9d5c6aaabc
commit
d940388561
@ -2546,8 +2546,29 @@ dialog_set_page_set (GtkPrintUnixDialog *dialog,
|
||||
static gint
|
||||
dialog_get_n_copies (GtkPrintUnixDialog *dialog)
|
||||
{
|
||||
GtkPrintUnixDialogPrivate *priv = dialog->priv;
|
||||
GtkAdjustment *adjustment;
|
||||
const gchar *text;
|
||||
gchar *endptr = NULL;
|
||||
gint n_copies;
|
||||
|
||||
adjustment = gtk_spin_button_get_adjustment (GTK_SPIN_BUTTON (priv->copies_spin));
|
||||
|
||||
text = gtk_entry_get_text (GTK_ENTRY (priv->copies_spin));
|
||||
n_copies = g_ascii_strtoull (text, &endptr, 0);
|
||||
|
||||
if (gtk_widget_is_sensitive (dialog->priv->copies_spin))
|
||||
return gtk_spin_button_get_value_as_int (GTK_SPIN_BUTTON (dialog->priv->copies_spin));
|
||||
{
|
||||
if (n_copies != 0 && endptr != text && (endptr != NULL && endptr[0] == '\0') &&
|
||||
n_copies >= gtk_adjustment_get_lower (adjustment) &&
|
||||
n_copies <= gtk_adjustment_get_upper (adjustment))
|
||||
{
|
||||
return n_copies;
|
||||
}
|
||||
|
||||
return gtk_spin_button_get_value_as_int (GTK_SPIN_BUTTON (priv->copies_spin));
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user