to retreive paper size specific hard margins and use this
to set the hard margins in the print context.
(modified by Marek Kasik <mkasik@redhat.com>)
https://bugzilla.gnome.org/show_bug.cgi?id=686109
Remove all the old 2.x and 3.x version annotations.
GTK+ 4 is a new start, and from the perspective of a
GTK+ 4 developer all these APIs have been around since
the beginning.
GDK has a lock to mark critical sections inside the backends.
Additionally, code that would re-enter into the GTK main loop was
supposed to hold the lock.
Back in the Good Old Days™ this was guaranteed to kind of work only on
the X11 backend, and would cause a neat explosion on any other GDK
backend.
During GTK+ 3.x we deprecated the API to enter and leave the critical
sections, and now we can remove all the internal uses of the lock, since
external API that uses GTK+ 4.x won't be able to hold the GDK lock.
https://bugzilla.gnome.org/show_bug.cgi?id=793124
When GtkPrinterFunc always returns FALSE, for example when looking for
a non existent printer, if print list is done for all backends or print
backend status is UNAVAILABLE, gtk_enumerate_printers() finishes with an
empty backend list and destroy function is never called. We need to
check the backend list again after calling list_printers_init for all
backends and finish the enumeration if it's empty.
https://bugzilla.gnome.org/show_bug.cgi?id=672125
The Gtk-custom.c file in gir-repository contained a number of
introspection annotations. Merge those into the GTK source files.
Some documentation was moved from the tmpl/ files to accomodate
the addition of annotations.
2008-09-17 Matthias Clasen <mclasen@redhat.com>
Bug 346903 – gtk_enumerate_printers needs events to complete
* gtk/gtkprintbackend.h:
* gtk/gtkprintbackend.c: Add a GtkPrintBackend::status property.
* modules/printbackends/cups/gtkcupsutils.h:
* modules/printbackends/cups/gtkcupsutils.c: Turn the connection
test into a tristate available/unavailable/in progress.
* modules/printbackends/cups/gtkprintbackendcups.c: Use a single
connection test instance for getting the default printer and for
getting the printer list. Set the GtkPrintBackend::status property
according to the result of the connection test. Use the printer-type
attribute to find the default printer, if cups supports it.
* gtk/gtkprinter.c: When enumerating printers, give up when
the backend status is 'unavailable'.
* gtk/gtkprintunixdialog.c (printer_status_cb): Select the printer
when it is the default and nothing else has been selected yet.
svn path=/trunk/; revision=21417
2008-09-09 Marek Kasik <mkasik@redhat.com>
Bug 551386 – gtk_printer_set_is_default() always sets TRUE
* gtk/gtkprinter.c: sets the is_default parameter to the value
given by caller
svn path=/trunk/; revision=21325
2008-08-21 Marek Kasik <mkasik@redhat.com>
Bug 535158 – can't rearrange the order of multi pages per side
* gtk/gtkprinter.c
* gtk/gtkprinter.h
* gtk/gtkprintunixdialog.c
* gtk/gtkprintsettings.c
* gtk/gtkprintsettings.h
* gtk/gtkenums.h
* modules/printbackends/cups/gtkprintbackendcups.c: Allow user to
specify layout of pages per sheet in number-up mode
svn path=/trunk/; revision=21175
Patch by Marek Kasik, icons by Mike Langlie:
* gtk/gtk.symbols:
* gtk/gtkprintbackend.h:
* gtk/gtkprinter.[hc]: Add new paused and accepting-jobs properties
and getters/setters.
* gtk/gtkstock.h:
* gtk/gtkiconfactory.c:
* gtk/Makefile.am:
* gtk/stock-icons/{16,24}/gtk-print-paused.{png,svg}: New icon.
* modules/printbackends/cups/gtkprintbackendcups.c:
* gtk/gtkprintunixdialog.c: Handle paused and job-rejecting
printers.
svn path=/trunk/; revision=20838
was chosen
Patch by Marek Kasik.
* gtk/gtk.symbols:
* gtk/gtkprinter.[hc]: Add gtk_printer_get_default_page_size.
* gtk/gtkprintbackend.[hc]: Add fallback implementation.
* modules/printbackends/file/gtkprintbackendfile.c:
* modules/printbackends/cups/gtkprintbackendcups.c: Implement
get_default_page_size.
* gtk/gtkpagesetupunixdialog.c: When selecting a different printer,
select its default paper size.
* gtk/gtkprintunixdialog.c: If no explicit page setup has been set,
use the printer default.
* gtk/gtkprintoperation-unix.c: Don't create an empty page setup
if we don't have a default page setup.
svn path=/trunk/; revision=20120
2007-05-26 Richard Hult <richard@imendio.com>
* gtk/gtkprinter.c: (gtk_printer_set_location): Fix typo to get the
build working.
svn path=/trunk/; revision=17926
2006-06-21 Matthias Clasen <mclasen@redhat.com>
Apply a patch by John Palmieri to use buffered io using
GIOChannels, clean up error handling and support Cups 1.2
api in the printing code.
* acconfig.h:
* configure.in: Detect Cups 1.2
* gtk/gtkdebug.h:
* gtk/gtkmain.c: Add a printing debug key.
* gtk/gtkprintbackend.[hc]: Remove the GError parameter from
gtk_print_backend_print_stream, and take a GIOChannel instead
of an fd.
* gtk/gtkprinter-private.h:
* gtk/gtkprinter.c: Replace the fd parameter of
_gtk_printer_create_cairo_surface by a GIOChannel.
* gtk/gtkprintjob.[hc]: Remove the GError parameter from
gtk_print_job_send and make it return void.
* gtk/gtkprintoperation-unix.c:
* gtk/gtkprintjob.c: Adjust callers, add some debugging support.
* modules/printbackends/Makefile.am: Fix DIST_SUBDIRS.
* modules/printbackends/cups/Makefile.am:
* modules/printbackends/lpr/Makefile.am: Add debug CFLAGS.
* modules/printbackends/cups/gtkcupsutils.[hc]:
* modules/printbackends/cups/gtkprintbackendcups.c:
* modules/printbackends/file/gtkprintbackendfile.c:
* modules/printbackends/lpr/gtkprintbackendfile.c: Adapt to
the GIOChannel and GError changes, add debug output
2006-06-19 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkprinter-private.h:
* gtk/gtkprinter.c (_gtk_printer_get_options):
* gtk/gtkprintbackend.h: Add a capabilities argument to the
printer_get_options method and to the _gtk_printer_get_options
function
* modules/printbackends/lpr/gtkprintbackendlpr.c
(lpr_printer_get_options):
* modules/printbackends/pdf/gtkprintbackendpdf.c
(pdf_printer_get_options):
* modules/printbackends/cups/gtkprintbackendcups.c
(cups_printer_get_options):
* gtk/gtkprintunixdialog.c (selected_printer_changed): Adjust
callers and implementations.