--- mousepad-print.c 2013-07-24 18:37:39.030030908 +0200 +++ mousepad-print_fix_num_printing.c 2013-07-24 18:32:32.561880000 +0200 @@ -285,6 +285,12 @@ gtk_source_print_compositor_set_line_numbers_font_name (print->compositor, line_numbers_font); else gtk_source_print_compositor_set_line_numbers_font_name (print->compositor, body_font); + + /* setup line number printing */ + if (print->print_line_numbers) + gtk_source_print_compositor_set_print_line_numbers (print->compositor, print->line_number_increment); + else + gtk_source_print_compositor_set_print_line_numbers (print->compositor, 0); /* cleanup */ g_free (body_font); @@ -434,6 +440,7 @@ NULL, "Page %N of %Q"); } + /* paginate all of the pages at once */ while (!gtk_source_print_compositor_paginate (print->compositor, context)) @@ -502,6 +509,10 @@ { print->print_line_numbers = active; gtk_widget_set_sensitive (print->widget_line_numbers_hbox, active); + if ( active ) + gtk_source_print_compositor_set_print_line_numbers (print->compositor, print->line_number_increment); + else + gtk_source_print_compositor_set_print_line_numbers (print->compositor, 0); } else if (button == print->widget_text_wrapping) gtk_source_print_compositor_set_wrap_mode (print->compositor, active ? GTK_WRAP_WORD : GTK_WRAP_NONE); @@ -536,13 +547,8 @@ { print->line_number_increment = gtk_spin_button_get_value_as_int (button); - if (print->line_number_increment > 0 && print->print_line_numbers) - { - gtk_source_print_compositor_set_print_line_numbers (print->compositor, - print->line_number_increment); - } - else - gtk_source_print_compositor_set_print_line_numbers (print->compositor, 0); + gtk_source_print_compositor_set_print_line_numbers (print->compositor, + print->line_number_increment); }