]> Pileus Git - ~andy/gtk/blobdiff - modules/printbackends/cups/gtkprintbackendcups.c
Added gtk_print_job_set/get_track_print_status
[~andy/gtk] / modules / printbackends / cups / gtkprintbackendcups.c
index 006e5d446f256fae60f5aa55b9d586922c688941..c1b018029b488f85b3416102afec1389c0676a0c 100644 (file)
@@ -321,15 +321,14 @@ cups_print_cb (GtkPrintBackendCups *print_backend,
       if ((attr = ippFindAttribute(response, "job-id", IPP_TAG_INTEGER)) != NULL)
        job_id = attr->values[0].integer;
 
-
-        if (job_id == 0)
-         gtk_print_job_set_status (ps->job, GTK_PRINT_STATUS_FINISHED);
-       else
-         {
-           gtk_print_job_set_status (ps->job, GTK_PRINT_STATUS_PENDING);
-           cups_begin_polling_info (print_backend, ps->job, job_id);
-         }
-    }
+      if (!gtk_print_job_get_track_print_status (ps->job) || job_id == 0)
+       gtk_print_job_set_status (ps->job, GTK_PRINT_STATUS_FINISHED);
+      else
+       {
+         gtk_print_job_set_status (ps->job, GTK_PRINT_STATUS_PENDING);
+         cups_begin_polling_info (print_backend, ps->job, job_id);
+       }
+    } 
   else
     gtk_print_job_set_status (ps->job, GTK_PRINT_STATUS_FINISHED_ABORTED);