diff options
author | Adrian Johnson <ajohnson@redneon.com> | 2009-11-21 20:07:14 +1030 |
---|---|---|
committer | Carlos Garcia Campos <carlosgc@gnome.org> | 2009-12-05 13:45:55 +0100 |
commit | 48cf7d9e7e2677bb5687e2c9b600fda7b56e0056 (patch) | |
tree | 1abeed783437acd1dc55a93d11bcc492665cf24e | |
parent | be686e2badb5cdfdaed7df2cac9ff3b3fb793056 (diff) | |
download | gtk+-48cf7d9e7e2677bb5687e2c9b600fda7b56e0056.tar.gz |
Set unix printer hard margins on print context
-rw-r--r-- | gtk/gtkprintoperation-private.h | 5 | ||||
-rw-r--r-- | gtk/gtkprintoperation-unix.c | 4 |
2 files changed, 9 insertions, 0 deletions
diff --git a/gtk/gtkprintoperation-private.h b/gtk/gtkprintoperation-private.h index 5e28007bee..c1f047c2dd 100644 --- a/gtk/gtkprintoperation-private.h +++ b/gtk/gtkprintoperation-private.h @@ -140,6 +140,11 @@ void _gtk_print_context_set_page_setup (GtkPrintCon GtkPageSetup *page_setup); void _gtk_print_context_translate_into_margin (GtkPrintContext *context); void _gtk_print_context_rotate_according_to_orientation (GtkPrintContext *context); +void _gtk_print_context_set_hard_margins (GtkPrintContext *context, + gdouble top, + gdouble bottom, + gdouble left, + gdouble right); G_END_DECLS diff --git a/gtk/gtkprintoperation-unix.c b/gtk/gtkprintoperation-unix.c index a36eced955..5940600b76 100644 --- a/gtk/gtkprintoperation-unix.c +++ b/gtk/gtkprintoperation-unix.c @@ -538,12 +538,16 @@ finish_print (PrintResponseData *rdata, GtkPrintOperation *op = rdata->op; GtkPrintOperationPrivate *priv = op->priv; GtkPrintJob *job; + gdouble top, bottom, left, right; if (rdata->do_print) { gtk_print_operation_set_print_settings (op, settings); priv->print_context = _gtk_print_context_new (op); + if (gtk_printer_get_hard_margins (printer, &top, &bottom, &left, &right)) + _gtk_print_context_set_hard_margins (priv->print_context, top, bottom, left, right); + if (page_setup != NULL && (gtk_print_operation_get_default_page_setup (op) == NULL || page_setup_set)) |