2005-12-12  Kristian Høgsberg  <krh@redhat.com>

	* configure.ac: Bump release.

	* NEWS: Sum up changes.
	
2005-12-12  Kristian Høgsberg  <krh@redhat.com>

	* poppler/TextOutputDev.cc:
	* qt/poppler-qt.h: GCC-4.1 fixes (#5031).

	* qt/Makefile.am (noinst_PROGRAMS): Only build qt test program if
	splash is enabled.

	* poppler/CairoOutputDev.cc: Remove unused grid snapping code,
	sidestepping #4507.
	
	* glib/poppler-document.h: Fix glib-mkenums warning (#4600).

	* poppler/Makefile.am (libpoppler_la_LIBADD): Add $(FREETYPE_LIBS)
	(#4514).

	* poppler/TextOutputDev.cc (TextWord::visitSelection,
	TextWord::visitSelection): Fix selection crash (#4402).

	* poppler/CairoOutputDev.h: Fix wrong cairo-ft.h include (#4413).

	* poppler/JPXStream.cc:
	* poppler/Stream.cc:
	* poppler/Stream.h: CVE-2005-3191 security fix.

	* fofi/FoFiTrueType.cc:
	* poppler/SplashOutputDev.cc: CAN-2005-2097 security fix.

2005-10-16  Kristian Høgsberg  <krh@redhat.com>

	* poppler/poppler-config.h.in (GCC_PRINTF_FORMAT): Remove evil
	space character in macro definition.

2005-10-05  Kristian Høgsberg  <krh@redhat.com>

	* glib/poppler-page.cc (poppler_page_render_to_ps): Fix another
	off-by-one page number error (#4555).

2005-09-01  Kristian Høgsberg  <krh@redhat.com>

	* NEWS:
	* configure.ac: Release 0.4.2.

	* glib/poppler-page.cc (poppler_page_prepare_output_dev): Patch
	from Marco to fix more rotation special cases.

2005-08-29  Kristian Høgsberg  <krh@redhat.com>

	* configure.ac (HAVE_FREETYPE_H): Patch from Hiroyuki Ikezoe: Set
	HAVE_FREETYPE_217_OR_OLDER to 0 if we found freetype using
	pkg-config (#4223).

2005-08-24  Kristian Høgsberg  <krh@redhat.com>

	* configure.ac: Bump release to 0.4.1

	* NEWS: Sum up changes.

2005-08-24  Kristian Høgsberg  <krh@redhat.com>

	* poppler/TextOutputDev.cc: Push rotation argument down to
	GfxState constructor.  This is still not completely functional yet.

	* glib/poppler-page.cc (poppler_page_render_selection): Add
	rotation argument so API is useful.  Not yet implemented.
	(poppler_page_prepare_output_dev): Patch from Marco to fix
	rotation using the cairo backend.

Tue Aug 23 17:21:02 2005  Jonathan Blandford  <jrb@redhat.com>

	* test/Makefile.am (gtk_cairo_test_LDADD): add
	FREETYPE_{CFLAGS,LIBS} to the cairo deps

2005-08-22  Kristian Høgsberg  <krh@redhat.com>

	* glib/poppler-page.cc:
	* glib/poppler-page.h:
	* glib/poppler-private.h:
	* glib/test-poppler-glib.c: Patch from Marco to simplify the glib
	rotation API.

2005-08-21  Kristian Høgsberg  <krh@redhat.com>

	* poppler/Makefile.am (INCLUDES): Add FREETYPE_CFLAGS.

	* configure.ac: Make freetype check use pkg-config if possible.

2005-08-16  Kristian Høgsberg  <krh@redhat.com>

	* configure.ac: Bump version to 0.4.0.

	* NEWS: Sum up changes.

	* poppler/PDFDoc.cc: Add extended check for %%EOF.

2005-08-15  Kristian Høgsberg  <krh@redhat.com>

	* poppler/GfxFont.cc: Add fix discussed in #3131 to only use the
	MacRoman char map if the font has one or the font dicts specifies
	/MacRoman.

2005-08-06  Kristian Høgsberg  <krh@redhat.com>

	* glib/poppler-page.cc:
	* glib/poppler-page.h: Use GdkColor for specifying selection
	colors, we alreay depend on GDK anyway.

2005-08-05  Kristian Høgsberg  <krh@redhat.com>

	* poppler/TextOutputDev.cc (visitLine): Round selection
	coordinates in device space, so selection isn't fuzzy.

	* poppler/GfxState.cc: 
	* poppler/GfxState.h: Add simple Matrix class.

2005-08-05  Kristian Høgsberg  <krh@redhat.com>
	
	* glib/poppler-page.cc:
	* glib/poppler-page.h:
	* poppler/TextOutputDev.cc:
	* poppler/TextOutputDev.h: Propagate selection colors to the glib API.

2005-08-01  Kristian Høgsberg  <krh@redhat.com>

	Patch from Dan Winship <danw@novell.com>
	
	* glib/poppler-page.cc (poppler_page_copy_to_pixbuf): Set alpha to
	0xff (opaque), not 0x00.

2005-07-29  Kristian Høgsberg  <krh@redhat.com>

	* poppler/TextOutputDev.cc: Finish TextSelectionDumper class for
	extracting the text from a selection.  Add
	TextPage::getSelectionText() and TextOutputDev::getSelectionText()
	methods to expose the new functionality.

	* glib/poppler-page.cc (poppler_page_get_text): Use
	TextOutputDev::getSelectionText() to get the text from the
	selection.

	* glib/poppler-document.cc (poppler_document_new_from_file): 
	* glib/poppler-page.cc (_poppler_page_new): Add extra NULL to
	g_object_new() constructor to silence gcc warning about missing
	sentinel.

2005-07-28  Kristian Høgsberg  <krh@redhat.com>

	* poppler/poppler-config.h.in: Add GCC_PRINTF_FORMAT macro to
	annotate printf-like functions (#3638).
	
	* poppler/Error.h: Add GCC_PRINTF_FORMAT to error().

	* poppler/PSOutputDev.h: Add GCC_PRINTF_FORMAT to
	PSOutputDev::writePSFmt().

	* poppler/PSOutputDev.cc, poppler/GlobalParams.cc: Quiet new
 	printf warnings.

	* poppler/TextOutputDev.cc (TextBlock::visitSelection): Assign
	start and stop coordinates in one place so we don't assign the
	same point to both in some corner cases.
	(TextWord::visitSelection): Initialize begin to len, not len + 1
	to fix crash.

	(TextWord::visitSelection, TextLine::visitSelection): Change
	selection trigger; now midpoint of glyph must be included in
	selection area for glyph to be in selection.

2005-07-27  Martin Kretzschmar  <martink@gnome.org>

	* poppler/PSOutputDev.cc (PSOutputDev): change the constructor to
	take paper size and duplex setting parameters.
	(init): add paper size and duplex parameters.
	(writeDocSetup): add duplex parameter.

	* poppler/PSOutputDev.h: update declarations.

	* glib/poppler-private.h (struct _PopplerPSFile): store necessary
	information to eventually construct a PSOutputDev.

	* glib/poppler-page.cc (poppler_page_render_to_ps): initialize the
	output dev if it doesn't exist yet.

	* glib/poppler-document.cc (poppler_ps_file_new): don't create the
	PSOutputDev here, just store filename and page range.
	(poppler_ps_file_set_paper_size, poppler_ps_file_set_duplex): new
	functions.
	(poppler_ps_file_free): free the filename which we strdup now.

	* glib/poppler-document.h: add prototypes.

2005-07-26  Albert Astals Cid  <aacid@kde.org>

	 * qt/test-poppler-qt-cpp: Fix mem leak

2005-07-26  Kristian Høgsberg  <krh@redhat.com>

	* fofi/FoFiType1.cc: Make check for end of encoding array a bit
	more liberal so we don't crash on complex encoding arrays.

2005-07-25  Albert Astals Cid  <aacid@kde.org>

	* poppler/DCTStream.cc: Work on bad jpeg data that have garbage before
	the start marker. Fixes bug #3299

2005-07-22  Albert Astals Cid  <aacid@kde.org>

	* poppler/CairoFontEngine.cc: Fix mem leak. Reported in bug #3586 by
	Kjartan Maraas, initial patch by Martin Kretzschmar.

2005-07-22  Albert Astals Cid  <aacid@kde.org>

	* qt/test-poppler-qt.cpp: Make it possible to change the displayed
	page using Up and Down keys

2005-07-22  Albert Astals Cid  <aacid@kde.org>

	* splash/Splash.cc: Fix bugs #3728 and #3750

2005-07-20  Martin Kretzschmar  <martink@gnome.org>

	* glib/poppler-document.cc (poppler_fonts_iter_get_name): if the
	font is a subset, strip the ABCDEF+ tag.
	(poppler_fonts_iter_get_full_name): does what the old get_name did.
	(poppler_fonts_iter_get_font_type, poppler_fonts_iter_is_embedded)
	(poppler_fonts_iter_is_subset): new wrappers.

	* glib/poppler-document.h (PopplerFontType): new enum.
	Update prototypes.

2005-07-15  Martin Kretzschmar  <martink@gnome.org>

	* test/gtk-cairo-test.cc: update for 2005-06-27 change to actually
	display something again.

2005-07-10  Brad Hards  <bradh@frogmouth.net>

	* poppler/ArthurOutputDev.cc: General cleanup - removing
	dead code, and some minor tweaks. No new features.

2005-07-08  Kristian Høgsberg  <krh@redhat.com>

	* glib/poppler-page.cc (poppler_page_set_selection_alpha): Add
	this function to initialize the alpha channel when using the
	splash backend.

	* poppler/TextOutputDev.cc (visitLine): Add missing scaling of
	intra-line selection edges.

2005-07-07  Kristian Høgsberg  <krh@redhat.com>

	* glib/poppler-page.cc (poppler_page_prepare_output_dev): Account
	for page rotation when creating the cairo surface.

2005-07-06  Kristian Høgsberg  <krh@redhat.com>

	* glib/poppler-page.cc (poppler_page_copy_to_pixbuf): Add out of
	bounds checking (from Marco).

2005-07-07  Brad Hards  <bradh@frogmouth.net>

	* qt4/src/poppler-document.cc: 
	* qt4/src/poppler-qt4.h: Add pageLayout() function for Qt4
	bindings

	* qt4/tests/check_pagelayout_single.cpp:
	* qt4/tests/check_pagelayout_none.cpp:
	* Makefile.am: Add unit tests for pageLayout()

	* glib/poppler-document.cc (convert_page_mode): Update to
	reflect the Catalog API change. I'm not that good at glib,
	so this has a non-zero chance of being pure crackrock.

	* poppler/Catalog.cc:
	* poppler/Catalog.h: update page mode options to PDF 1.6

	* qt4/src/poppler-qt4.h:
	* qt4/src/poppler-document.cc: add Qt4 bindings for additional 
	pageMode() value created by change above

	* qt4/src/poppler-qt4.h: minor updates to API docs.
	
	* qt4/tests/Makefile.am:
	* qt4/tests/check_pagemode_*.cpp: unit tests for Qt4 pageMode() call
	and associated enum. This is the initial checkin for these files

2005-07-06  Albert Astals Cid  <aacid@kde.org>

	* poppler/PDFDoc.[cc|h]: Add checkFooter to check document ends with
	%%EOF
	* poppler/GfxFont.[cc|h]: Extract family, stretch and weight from the
	font descriptor

2005-07-06  Brad Hards  <bradh@frogmouth.net>

	* qt4/tests/Makefile.am:
	* qt4/tests/check_linearised.cpp: Added unit test for linearised
	property

	* qt4/tests/poppler-fonts.cpp (main): update to reflect API change,
	and also to show "[none]" if the font is nameless.

	* qt4/src/poppler-document.cc (Poppler): 
	* qt4/src/poppler-qt4.h: remove the unicode translation bool,
	it is really an internal thing.

2005-07-05  Albert Astals Cid  <aacid@kde.org>

	* qt4/src/poppler-document.cc (Poppler): 
	* qt4/src/poppler-qt4.h: Don't crash with files that have fonts with
	no name, for example the one found at
	http://bugs.kde.org/show_bug.cgi?id=101520.

2005-07-05  Brad Hards  <bradh@frogmouth.net>

	* qt4/tests/check_author.cpp:
	* qt4/tests/check_permissions.cpp:
	* Makefile.am:
	* .cvsignore: add a couple more test cases
	
	* qt4/src/poppler-document.cc (Poppler): 
	* qt4/src/poppler-qt4.h: Add Qt4 bindings for the 
	additional user permission properties.

	* poppler/XRef.h:
	* poppler/Xref.cc:
	* poppler/PDFDoc.h: Add some more user permissions properties -
	high resolution printing, document assembly, extraction for
	accessibility and form completion.

2005-07-04  Brad Hards  <bradh@frogmouth.net>

	* qt4/src/poppler-page.cc: fix typo bug that
	prevented correct detection of upside down pages

	* qt4/tests/check-orientation.cpp: fix path to
	point to test module.
	
	* qt4/.cvsignore: update to reflect new files
	
	* qt4/tests/Makefile.am:
	* qt4/tests/poppler-fonts.cpp: initial import of a simple font
	metadata listing application.
	
	* qt4/src/poppler-qt4.h:
	* qt4/src/poppler-document.cc complete Qt4 font metadata handling
	
	* qt4/src/poppler-qt4.h:
	* qt4/src/poppler-page.cc: change the render API to make it more
	Qt-like.

	* qt4/tests/test-poppler-qt4.cpp:
	* qt4/tests/stress-poppler-qt4.cpp: update to reflect changes
	to render API
	
	* poppler/FontInfo.h/cc: make FontInfo::type() return a enum
	instead of a GooString. As discussed on mailing list, if you
	want a string representation, you get to make one at the bindings
	layer (ie typeName() didn't make the grade in the final patch)

	* qt4/tests/poppler-fonts.cpp (main): change order in test
	code to reflect actual testcase file

2005-07-01  Kristian Høgsberg  <krh@redhat.com>

	* poppler/TextOutputDev.cc: Make selection also work when dragging
	backwards in the text flow.  Currently this is a big pile of
	if-statements, and there is certainly room for improvement.

2005-06-30  Kristian Høgsberg  <krh@redhat.com>

	* glib/poppler-page.h: * glib/poppler-page.cc
	(poppler_page_copy_to_pixbuf): Fix splash compilation (patch from
	Marco).
	(poppler_page_render_to_pixbuf): Drop dest_x and dest_y
	coordinates from this function.  This functionality can be
	achieved using a sub-GdkPixbuf.

	* glib/test-poppler-glib.c (main): Update test case.

2005-06-29  Kristian Høgsberg  <krh@redhat.com>

	* glib/poppler-private.h: Move TextOutputDev.h include here from
	poppler-page.cc

2005-06-29  Kristian Høgsberg  <krh@redhat.com>

	* configure.ac:
	* glib/poppler-page.cc:
	* glib/poppler-page.h:
	* glib/poppler-private.h:
	* poppler/CairoOutputDev.cc:
	* poppler/CairoOutputDev.h:
	* poppler/Page.cc:
	* poppler/Page.h:
	* poppler/TextOutputDev.cc:
	* poppler/TextOutputDev.h: Add support for rendering real
	selection (based on text flow).

2005-06-28  Albert Astals Cid  <aacid@kde.org>
	
	* poppler/FontInfo.[cc,h]: Add FontInfo::getType()
	
2005-06-28  Albert Astals Cid  <aacid@kde.org>
	
	* poppler/ArthurOutputDev.cc: use transformation matrix for image
	rendering

2005-06-28  Brad Hards  <bradh@frogmouth.net>

	* .cvsignore:
	* qt4/.cvsignore:
	* qt4/src/.cvsignore:
	* qt4/tests/.cvsignore: update to reflect the Qt4 bindings.

2005-06-28  Brad Hards  <bradh@frogmouth.net>

	* qt4/:
	* Makefile.am:
	* configure.ac:
	* poppler-qt4.pc.in: Initial import of Qt4 bindings, based
	on the Qt3 bindings. API is still in flux.

	* poppler/AuthurOutputDev.[cc,h]:
	* poppler/Makefile.am: Initial import of Qt4 backend renderer. 
	Incomplete at this stage.

2005-06-27  Kristian Høgsberg  <krh@redhat.com>

	* poppler/CairoOutputDev.cc:
	* poppler/CairoOutputDev.h: Change CairoOutputDev to render to a
	given surface and let the user create that surface.
	
	* glib/poppler-document.cc:
	* glib/poppler-page.cc:
	* glib/poppler-private.h: Create the cairo image surface here
	instead and pass it to the CairoOutputDev for rendering.
	
	* poppler/CairoOutputDevImage.cc:
	* poppler/CairoOutputDevImage.h:
	* poppler/CairoOutputDevX.cc:
	* poppler/CairoOutputDevX.h:
	* poppler/Makefile.am: Remove specialized cairo output devices.

2005-06-26  Kristian Høgsberg  <krh@redhat.com>

	* poppler/CairoOutputDev.cc:
	* poppler/CairoOutputDev.h: Switch back to using drawChar() for
	text, but utilize the beginString() and endString() hooks so we
	can use cairo_show_glyphs() efficiently.

2005-06-26  Albert Astals Cid <aacid@kde.org>
	
	* qt/poppler-page.cc:
	* qt/poppler-page.h: Add PageTransition class and 
	PageTransition* Page::getTransition() const; to the qt frontend.

2005-06-26  Martin Kretzschmar  <martink@gnome.org>

	* glib/.cvsignore: add poppler-enums.[ch].

	* configure.ac: require glib 2.4+ for g_value_take_string and
	G_DEFINE_TYPE.

2005-06-25  Jeff Muizelaar  <jeff@infidigm.net>

	* poppler/Error.h: Maybe fix build on Solaris.

2005-06-20  Kristian Høgsberg  <krh@redhat.com>

	* NEWS:
	* configure.ac: Bump version to 0.3.3 and sum up changes since
	last release.

	* glib/poppler-page.cc (poppler_page_find_text): Initialize xMin
	and yMin to avoid referencing unintialized memory (#3582).

2005-06-20  Martin Kretzschmar  <martink@gnome.org>

	* glib/poppler-document.cc (info_dict_get_string): convert
	from PDFDocEncoding to UTF-8.

2005-06-20  Kristian Høgsberg  <krh@redhat.com>

	* glib/poppler-page.cc:
	* glib/poppler-page.h:
	* glib/poppler.h: Clean up glib rotation implementation and add a
	getter for rotation.  Patch from Marco.

2005-06-20  Kristian Høgsberg  <krh@redhat.com>

	* glib/poppler-document.cc:
	* poppler/FontInfo.cc: Fixes from Marco to handle fonts without
	name (typically type 3 fonts) and fix an iterator bug.

2005-06-20  Kristian Høgsberg  <krh@redhat.com>

	* glib/poppler-page.cc (poppler_page_get_link_mapping): Adjust
	link coordinates so they're relative to bounding box lower left
	corner (#3396).

2005-06-17  Kristian Høgsberg  <krh@redhat.com>

	* autogen.sh: Patch from Emil Soleyman-Zomalan to enable checks
	for automake >= 1.7 (#3554).

2005-06-15  Kristian Høgsberg  <krh@redhat.com>

	* glib/poppler-document.cc:
	* glib/poppler-document.h: Patch from Marco to get initial status
	(open or closed) for bookmark subtrees.

2005-06-13  Kristian Høgsberg  <krh@redhat.com>

	* glib/poppler-document.cc:
	* glib/poppler-document.h:
	* glib/poppler-private.h:
	* glib/poppler.h:
	* glib/test-poppler-glib.c:
	* poppler/Makefile.am: Patch from Marco to extract font info from
	document.

2005-06-08  Kristian Høgsberg  <krh@redhat.com>

	* poppler/CairoFontEngine.cc: Remember to delete tmpFileName.
	Patch from Nikolai Weibull (#3491).

2005-06-07  Kristian Høgsberg  <krh@redhat.com>

	* qt/test-poppler-qt.cpp: Add stdlib.h include for exit().

2005-06-02  Kristian Høgsberg  <krh@redhat.com>

	* poppler/TextOutputDev.h:
	* qt/poppler-qt.h: Patch from Stanislav Brabec <sbrabec@suse.cz>
	to fix gcc 4.0.1 warnings on undeclared friend classes.
	
	* test/gtk-splash-test.cc: Fix from Martin Kretzschmar
	<martink@gnome.org> to compile with OPI enabled (#2911).

2005-06-02  Kristian Høgsberg  <krh@redhat.com>

	Patch from Stanislav Brabec <sbrabec@suse.cz>:

	* configure.ac:
	* poppler-cairo.pc.in:
	* poppler-glib.pc.in:
	* poppler-qt.pc.in:
	* poppler-splash.pc.in: Misc fixes to pkg-config files.

2005-06-01  Jeff Muizelaar  <jeff@infidigm.net>

	* poppler/Error.cc:
	* poppler/Error.h: Make error handling function setable through
	setErrorFunction.

	Based on a patch by Albert Astals Cid.

2005-05-29  Kristian Høgsberg  <krh@redhat.com>

	* glib/*: Add more meta data properties to poppler document.
	Patch by Emil Soleyman-Zomalan (#3359).

2005-05-26  Kristian Høgsberg  <krh@redhat.com>

	* poppler/CairoOutputDev.cc (clip): Remove snapToGrid so clip()
	prototype matches what Gfx actually calls (fixes clipping).
	
	* poppler/CairoOutputDev.cc: Update fill color, stroke color, fill
	opacity and stroke opacity from GfxState on restore, since they
	aren't handled by cairo_restore() (#3362).

	* poppler/CairoOutputDev.cc: Comment out tolerance setting until
	we figure out how cairo settings relate to pdf settings.

	* poppler/CairoOutputDev.cc: Support fill and stroke opacity.
	
	* poppler/GfxState.cc: 
	* poppler/GfxState.h: Add GfxColorSpace::getRGBLine here and
	implement in subclasses.

	* poppler/CairoOutputDev.cc (drawImage): Use getRGBLine here.

Mon May 23 00:22:41 2005  Jonathan Blandford  <jrb@redhat.com>

	* glib/poppler-document.h: Add a permissions flag to the glib
	bindings.

2005-05-21  Kristian Høgsberg  <krh@redhat.com>

	* glib/poppler-document.cc (poppler_ps_file_new): Fix off-by-one
	error spotted by Jürg Billeter.

2005-05-20  Kristian Høgsberg  <krh@redhat.com>

	* poppler/CairoOutputDev.cc: Account for different row vs. column
	vector conventions between cairo and poppler.

	* poppler/CairoFontEngine.cc: Only get the code to gid map if
	we're using freetype 2.1.7 or older (#3340).

2005-05-19  Kristian Høgsberg  <krh@redhat.com>

	* poppler/CairoFontEngine.cc: Only cast to Gfx8BitFont when we
	know for sure we have a truetype font.
	GfxCIDFont::getCIDToGIDLen() can return 0 in which case codeToGID
	will be NULL, and we end up casting it to a Gfx8BitFont (#3265).

2005-05-18  Kristian Høgsberg  <krh@redhat.com>

	* configure.ac: Require cairo 0.5.0, bump release to 0.3.2.

	* NEWS: Sum up latest changes.

	* glib/poppler-document.cc (poppler_ps_file_new): Take a page
	range here instead of just number of pages.
	
2005-05-17  Kristian Høgsberg  <krh@redhat.com>

	* poppler/CairoOutputDevX.cc: 
	* test/gtk-cairo-test.cc: Chase the cairo xlib constructor again.

2005-05-16  Kristian Høgsberg  <krh@redhat.com>

	Patch from Christian Persch (#3300):
	
	* configure.ac: Check for glib-mkenums.

	* glib/Makefile.am (poppler-enums.h): Generate glib enums at
	compile time.

	* glib/poppler-enums.c:
	* glib/poppler-enums.h: Removed.

2005-05-16  Kristian Høgsberg  <krh@redhat.com>
	
	* test/gtk-cairo-test.cc: Update this test case also.

	* poppler/CairoOutputDevX.cc: Track changes to cairo Xlib surface
	constructors.

	* poppler/CairoFontEngine.cc (cairo_font_face_destroy): Make this
	static.

Thu May 12 23:10:45 2005  Jonathan Blandford  <jrb@redhat.com>

	* glib/poppler.gidl: add metadata file.

2005-05-12  Kristian Høgsberg  <krh@redhat.com>

	* poppler/CairoOutputDev.cc: 
	* poppler/CairoOutputDevX.cc: 
	* poppler/CairoOutputDevImage.cc: 
	* test/gtk-cairo-test.cc: Update to latest cairo changes, patch
	from Jens Taprogge (#3281)

2005-05-11  Kristian Høgsberg  <krh@redhat.com>

	* glib/poppler.cc (poppler_get_backend, poppler_get_version): Add
	these functions so it's easy to tell if poppler is using cairo or
	splash and what version.

	* glib/test-poppler-glib.c (main): Print out version and backend.

2005-05-06  Kristian Høgsberg  <krh@redhat.com>

	* glib/Makefile.am (libpoppler_glib_la_LIBADD): Link poppler-glib
	against poppler.

	* qt/Makefile.am (libpoppler_qt_la_LIBADD): Ditto for qt.

	* poppler-glib.pc (Libs): Drop -lpoppler from link.

	* poppler-qt.pc (Libs): Ditto for qt.

	* configure.ac: Test for both libqt-mt.la and libqt-mt.so in that
	order.

2005-05-04  Kristian Høgsberg  <krh@redhat.com>

	* poppler/CairoOutputDev.cc (CairoOutputDev::drawImageMask,
	CairoOutputDev::drawImage): Track cairo cvs API changes; use
	cairo_mask() and cairo_paint() for drawing image masks and images.

2005-05-04  Kristian Høgsberg  <krh@redhat.com>

	* poppler/CairoOutputDev.cc: Fix matrix convention confusion.

2005-05-04  Kristian Høgsberg  <krh@redhat.com>

	Patches from Albert Astals Cid:
	
	* qt/poppler-page.cc (getText): Use QString::fromUtf8() instead of
	implicit latin1 cast constructor.
	
	* qt/test-poppler-qt.cpp (main): Use a QLabel for showing text
	instead of qDebug.

Wed May  4 02:31:05 2005  Jonathan Blandford  <jrb@redhat.com>

	* glib/poppler-document.cc:
	* glib/poppler-document.h:
	* glib/poppler-enums.c: (poppler_permissions_get_type):
	* glib/poppler-enums.h:
	* glib/poppler-page.cc:
	* glib/poppler-page.h:
	* glib/poppler.h:

	Register a bunch of boxed types to test introspection, and for
	LBs.  Also, remove unused 'popper_document_save()' (-:

2005-05-01  Kristian Høgsberg  <krh@redhat.com>

	* poppler/CairoFontEngine.cc:
	* poppler/CairoFontEngine.h:
	* poppler/CairoOutputDev.cc: Back out workaround for cairo 0.4.0
	font API and port to new cairo head.

2005-05-01  Jeff Muizelaar  <jeff@infidigm.net>

	* splash/SplashFTFont.cc (SplashFTFont::getGlyphPath):
	Use FT_LOAD_NO_BITMAP to make sure we get outlines loaded instead
	of bitmaps for use in FT_Outline_Decompose.

	Patch from Albert Astals Cid.

2005-05-01  Jeff Muizelaar  <jeff@infidigm.net>

	* goo/gmem.c: (gmalloc), (grealloc), (gfree):
	* goo/gmem.h: make memory functions use size_t instead of int.
	
	Patch from Takashi Iwai through Albert Astals Cid.

2005-04-30  Jeff Muizelaar  <jeff@infidigm.net>

	* qt/poppler-document.cc (Document::unlock) :
	* qt/poppler-qt.h (Document::unlock):
	Add const to the password argument.

	Patch from Albert Astals Cid.

2005-04-30  Jeff Muizelaar  <jeff@infidigm.net>

	* fofi/FoFiType1.cc (FoFiType1::parse):
	Don't assume Encoding array of Type1 fonts end in "foo def".
	http://partners.adobe.com/public/developer/en/font/T1_SPEC.PDF says
	"This sequence of assignments must be followed by an instance of the
	token def or readonly; such a token may not occur within the sequence
	of assignments." so it must end with "readonly" "def" "readonly def"
	(That is what most fonts are using and this is why it was not
	crashing)

	Patch from Albert Astals Cid.

Fri Apr 29 14:54:44 2005  Jonathan Blandford  <jrb@redhat.com>

	* goo/GooTimer.h: New class to do simple timing checks.

	* glib/poppler-document.c: Patch from Martin Kretzschmar to really
	set the PDF version correct.  Third time's the charm.

2005-04-29  Kristian Høgsberg  <krh@bitplanet.net>

	* configure.ac: Bump release to 0.3.1.

	* NEWS: Write up news for 0.3.1 release.

2005-04-28  Kristian Høgsberg  <krh@redhat.com>

	Patch from Martin Kretzschmar:

	* poppler/GlobalParams.cc: use UTF-8 as the default text encoding.
	Fixes Bug 2934.

2005-04-27  Jeff Muizelaar  <jeff@infidigm.net>

	* configure.ac:
	* poppler/FlateStream.cc:
	* poppler/FlateStream.h:
	* poppler/Makefile.am:
	* poppler/Stream.cc:
	* poppler/Stream.h: Add a reimplementation of FlateStream using
	zlib.

2005-04-27  Kristian Høgsberg  <krh@redhat.com>

	* poppler/Catalog.cc (NameTree::lookup): Fix bsearch return value
	NULL check.  Found by Albert Astals Cid.

Tue Apr 26 13:13:42 2005  Jonathan Blandford  <jrb@redhat.com>

	* glib/test-poppler-glib.c (main): add a quick dump-to-text test.

2005-04-24  Kristian Høgsberg  <krh@redhat.com>

	* qt/Makefile.am (libpoppler_qt_la_SOURCES): Add poppler-private.h
	to SOURCES.

2005-04-23  Kristian Høgsberg  <krh@redhat.com>

	* poppler/CairoFontEngine.cc: Use the right fileName for loading
	CID fonts (#3114).

2005-04-22  Kristian Høgsberg  <krh@redhat.com>

	* configure.ac: Actually commit version number bump.

2005-04-22  Martin Kretzschmar  <martink@gnome.org>

	* poppler/CairoFontEngine.cc: declare matrix variable before the
	first goto. Fixes build with gcc 3.3.

Fri Apr 22 00:01:40 2005  Kristian Høgsberg  <krh@redhat.com>

	* poppler/CairoFontEngine.cc: Hack around semi-broken cairo-0.4.0
	font API to fix the problem where some glyphs would show up at the
	wrong sizes.  We now create an FT_Face for each size and font
	combination we encounter, since an FT_Face can't be shared between
	several cairo_font_t.

Thu Apr 21 15:43:52 2005  Kristian Høgsberg  <krh@redhat.com>

	* poppler/Outline.cc: 
	* poppler/Outline.h: Implement the documented behaviour for
	Outline::getItems() and OutlineItem::getKids() and make
	documentation more precise (Patch from Marco).

Thu Apr 21 02:25:20 2005  Kristian Høgsberg  <krh@redhat.com>

	* poppler/CairoFontEngine.cc (CairoFont::getFont): Cache
	cairo_font_t's for a given CairoFont.  With this patch cairo will
	recognize glyphs coming from the same font as such and the glyph
	cache will actually work.

	* glib/poppler-document.cc (poppler_document_new_from_file): Add
	output device (cairo or splash) to PopplerDocument and initialize
	it in the constructor.

	* glib/poppler-page.cc (splash_render_to_pixbuf,
	cairo_render_to_pixbuf): Use output device from associated poppler
	document instead of creating a new one.

	* poppler-glib.pc.in (Requires): Add Requires: field.

	* poppler/Page.cc (loadThumb): Remove unecessary and buggy call to
	Stream::addFilters(), reported by Ryan Lortie (#3046).

2005-04-13  Jeff Muizelaar  <jrmuizel@nit.ca>

	* qt/poppler-page.cc (Page::getText):
	* qt/poppler-qt.h: add a getText method for getting
	the text on a page

	* qt/test-poppler-qt.c (PDFDisplay::PDFDisplay): 
	add the option to display the text on a page

	Patch from Albert Astals Cid.

Tue Apr 19 17:21:19 2005  Jonathan Blandford  <jrb@redhat.com>

	* glib/poppler-document.cc (poppler_document_get_property): Use
	%.2g instead.

Tue Apr 19 17:11:52 2005  Jonathan Blandford  <jrb@redhat.com>

	* glib/poppler-document.cc (poppler_document_get_property): Use %g
	instead of %f to avoid versioning like PDF-1.50000

Tue Apr 19 15:43:35 2005  Kristian Høgsberg  <krh@redhat.com>

	* glib/poppler-action.cc (_poppler_action_new): Handle NULL links
	gracefully (fix from Jeff).

Tue Apr 19 00:20:08 2005  Kristian Høgsberg  <krh@redhat.com>

	* poppler/Catalog.cc: Fix from Marco to make sure we always
	initialize Catalog::pageLabelInfo.

Sat Apr 16 14:53:15 2005  Jonathan Blandford  <jrb@redhat.com>

	* glib/Makefile.am: Create poppler-enums.[ch]

	* glib/poppler.h:
	* glib/poppler-page.cc:
	* glib/poppler-page.h:
	* glib/poppler-action.h: Try to clean up the headers a bit

	* glib/poppler-document.cc:
	* glib/poppler-document.h: Add support for document data.
	Implemented as a lot of GObject properties. 

	* glib/poppler-enums.c:
	* glib/poppler-enums.h: New autogenerated files.

	* glib/test-poppler-glib.c: Test the new document metadata.  Seems
	to work nicely, other than the PDF string and View Prefs.

	* poppler/Catalog.cc:
	* poppler/Catalog.h: Extend to support PageLayout.

2005-04-14  Kristian Høgsberg  <krh@redhat.com>

	* glib/poppler-page.cc:
	* glib/poppler-page.h:
	* glib/poppler-private.h:
	* glib/poppler.h: Patch from Marco Pesenti Gritti to set page
	orientaton.

2005-04-13  Jeff Muizelaar  <jrmuizel@nit.ca>

	* poppler/CairoOutputDevImage.cc (getBitmap): remove unused
	SplashBitmap. Patch from Albert Astals Cid.

2005-04-12  Kristian Høgsberg  <krh@redhat.com>

	* configure.ac: Add fontconfig to PKG_CHECK_MODULES for the cairo
	backend too, since we shouldn't depend on cairo.pc to pull that in
	for us.

	* poppler/Makefile.am (INCLUDES): Add $(splash_includes) to
	INCLUDES to make sure the fontconfig include path is added when
	using the splash backend.

2005-04-09  Jeff Muizelaar  <jrmuizel@nit.ca>

	* poppler-qt.h:
	* poppler-document.cc (okToPrint, okToChange, okToCopy):
	Patch from Albert Astals Cid adding more metadata exports

2005-04-08  Kristian Høgsberg  <krh@redhat.com>

	* poppler-qt.pc.in (Libs): Add -lpoppler to Libs.

2005-04-07  Jeff Muizelaar  <jrmuizel@nit.ca>

	* configure.ac: redo the qt tests from Albert Astals Cid

2005-04-07  Jeff Muizelaar  <jrmuizel@nit.ca>

	* qt/poppler-document.cc:
	* qt/poppler-page.cc:
	* qt/poppler-qt.h:
	Patch from Albert Astals Cid adding consts and exporting some more
	metadata.

2005-04-07  Kristian Høgsberg  <krh@redhat.com>

	* glib/poppler-document.cc: 
	* glib/poppler-document.h:
	* glib/poppler-page.cc:
	* glib/poppler-page.h:
	* glib/poppler-private.h: Print to PS support from Marco Pesenti
	Gritti.

Thu Apr  7 12:25:39 2005  Jonathan Blandford  <jrb@redhat.com>

	* configure.ac: check for qt, not glib, when enabling the qt
	subdir

2005-04-06  Jeff Muizelaar  <jrmuizel@nit.ca>

	* .cvsignore, glib/.cvsignore, qt/.cvsignore:
	Add more things to .cvsignore.
	Patch from Martin Kretzschmar.

2005-04-06  Jeff Muizelaar  <jrmuizel@nit.ca>

	* poppler-page.cc (Page::Page, Page::~Page):
	Construct and deconstruct the PageData object.
	Patch from Albert Astals Cid.

2005-04-06  Jeff Muizelaar  <jrmuizel@nit.ca>

	* Makefile.am, configure.ac: Add configuration for qt wrapper.
	
	* poppler-qt.pc.in:
	* qt/Makefile.am:
	* qt/poppler-document.cc:
	* qt/poppler-page.cc:
	* qt/poppler-private.h:
	* qt/poppler-qt.h:
	* qt/test-poppler-qt.cpp:
	New files.

2005-04-05  Kristian Høgsberg  <krh@redhat.com>

	* NEWS: Attempt to sum up changes since 0.1.2.

	* configure.ac: Bump release to 0.2.0, add AC_DEFINEs for cairo
	and splash availability.

	* poppler/CairoFontEngine.cc: Disable hinting.

	* glib/poppler-page.cc (poppler_page_render_to_pixbuf): Choose
	either splash or cairo rendering, based on configure choice.
	(cairo_render_to_pixbuf): New function to render using the cairo
	backend.
	(splash_render_to_pixbuf): Split out the splash code to this
	function.

2005-04-04  Kristian Høgsberg  <krh@redhat.com>

	* ChangeLog: Add this entry to test commit mailer script.
	
	* TODO: Add reminder about using PDF font descriptors with
	fontconfig.

	* configure.ac: Add checks for mkstemp() and mkstemps().

	* glib/poppler-page.cc (poppler_page_find_text): Reverse
	y-coordinates so we return PDF style coordinates.

	From Maro Pesenti Gritti <mpgritti@gmail.com>:
	
	* configure.ac, poppler/Makefile.am: Check for fontconfig when
	we're building the splash backend.

	* glib/poppler-page.cc (poppler_page_get_text): New function to
	select text on page.

2005-04-04  Kristian Høgsberg  <krh@redhat.com>

	* glib/poppler-page.cc (poppler_page_find_text): Reverse list of
	matches so we get them in the right order.

2005-04-03  Martin Kretzschmar  <martink@gnome.org>

	* poppler/DCTStream.h: Wrap #include <jpeglib.h> in extern "C"
	Fixes build with unpatched libjpeg.

2005-04-02  Jeff Muizelaar  <jrmuizel@nit.ca>

	* poppler/Page.h:
	* poppler/Page.cc (Page::Page):
	Some initial infrastructure for supporting transitions.

2005-03-31  Kristian Høgsberg  <krh@redhat.com>
	
	* glib/poppler-page.cc (poppler_page_render_to_pixbuf): Clip
	output to destination pixbuf and fix RGB order.

2005-03-31  Kristian Høgsberg  <krh@redhat.com>

	* glib/poppler-page.cc (poppler_page_find_text): New function to
	seach a page for occurrences of a given text string.

	* glib/poppler-page.cc: Add g_return_if_fail() checks to a couple
	of functions.
	
Thu Mar 31 00:26:20 2005  Jonathan Blandford  <jrb@redhat.com>

	* glib/poppler-page.cc:
	* glib/poppler-page.h (poppler_page_get_link_mapping,
	poppler_page_free_link_mapping): New functions to get a mapping of
	links to locations on the current document.

2005-03-30  Jeff Muizelaar <jrmuizel@nit.ca>

	* poppler/DCTStream.h: change x to unsigned int to eliminate
	comparision warning

2005-03-30  Jeff Muizelaar <jrmuizel@nit.ca>

	* poppler/Catalog.cc: delete pageLabelInfo on deconstruction

Tue Mar 29 23:07:17 2005  Jonathan Blandford  <jrb@redhat.com>

	* glib/poppler-page.h: Reformat.

Tue Mar 29 22:49:15 2005  Jonathan Blandford  <jrb@redhat.com>

	* glib/poppler-action.[ch]: New item to encapsulate links.
	* glib/poppler-document.[ch] (poppler_index_iter_get_action): New
	function to get the action.  Also, fix some warnings.
	* glib/poppler-private.h (_poppler_action_new): New function.
	* glib/test-poppler-glib.c: Fix warnings.

Tue Mar 29 02:36:00 2005  Jonathan Blandford  <jrb@redhat.com>

	* glib/poppler-document.[ch] (PopplerIndexIter): Add an iter to
	extract the index from the doc.  Includes a bad hack, for now.

Mon Mar 28 22:02:07 2005  Jonathan Blandford  <jrb@redhat.com>

	* glib/poppler-page.cc:
	* glib/poppler-page.h (poppler_page_get_thumbnail_size): New
	function. 
	* poppler-glib.pc.in: add -lpoppler-glib to the libs line.

2005-03-28  Kristian Høgsberg  <krh@redhat.com>

	* poppler/Page.cc (loadThumb): Backend agnostic method for
	extracting an embedded thumbnail iamge.

	* poppler/Dict.cc (lookupInt): New convenience method.

	* glib/poppler-page.cc (poppler_page_get_thumbnail): New glib
	function for getting the embedded thumbnail image for a page.

2005-03-25  Kristian Høgsberg  <krh@redhat.com>

	* configure.ac: Check for fontconfig for glib bindings.

2005-03-24  Kristian Høgsberg  <krh@redhat.com>

	* glib/Makefile.am: Use POPPLER_GLIB_CFLAGS and POPPLER_GLIB_LIBS
	instead of GTK_TEST_*.  Reported by Adam Jackson <ajax@nwnk.net>.

2005-03-23  Kristian Høgsberg  <krh@redhat.com>

	* poppler/Catalog.cc (indexToLabel, labelToIndex): Add stricter
	checking of incoming labels and indices.

	* glib/test-poppler-glib.c (main): Change test program to take the
	page label from the command line.

	* glib/poppler-page.cc:
	* glib/poppler-page.h: Add poppler_page_get_index() and rename
	popper_page_get_dimension() to popper_page_get_size()

2005-03-22  Kristian Høgsberg  <krh@redhat.com>

	* glib/poppler-document.cc: Implement poppler_document_save().
	
	* glib/poppler-document.h: Add prototype and format headers
	properly.

2005-03-22  Kristian Høgsberg  <krh@redhat.com>

	* configure.ac: Fix --disable-popper typo reported by Albert.
	Require exactly cairo 0.4 since CVS cairo has API changes.

2005-03-22  Kristian Høgsberg  <krh@redhat.com>

	* poppler/Array.cc:
	* poppler/Array.h: Add getString() convenience method.
	
	* poppler/Catalog.cc:
	* poppler/Catalog.h: Optimize lookup of named destinations.

2005-03-21  Kristian Høgsberg  <krh@redhat.com>
	
	* NEWS, TODO: Update these.

2005-03-21  Kristian Høgsberg  <krh@redhat.com>

	From Albert Astals Cid <tsdgeos@yahoo.es>:
	
	* poppler/Catalog.cc, poppler/Catalog.h: Parse PageMode setting
	from the Catalog dict and expose it through getPageMode() method.

2005-03-21  Kristian Høgsberg  <krh@redhat.com>

	* glib/poppler-document.cc:
	* glib/poppler-document.h: Expose the document title as a GObject
	property.
	
	* glib/poppler-page.cc: Expose the page label as a GObject
	property.
	
	* glib/poppler-private.h: Add the page index to PopplerPage.
	
	* glib/test-poppler-glib.c: Print out page label and document
	title.
	
	* poppler/Catalog.cc:
	* poppler/Catalog.h: Add page label accessors.
	
	* poppler/PageLabelInfo.cc:
	* poppler/PageLabelInfo.h: New files.

	* poppler/Makefile.am: Add new files to sources.
	
2005-03-20  Kristian Høgsberg  <krh@redhat.com>

	* glib/poppler-document.cc:
	* glib/poppler-page.h:
	* glib/poppler.cc:
	* poppler/Array.cc:
	* poppler/Array.h:
	* poppler/Catalog.cc: Fix up filenames in #include statements and
	comments.

2005-03-19  Kristian Høgsberg  <krh@redhat.com>

	Land the first bits of the glib wrapper.

	* Makefile.am:
	* configure.ac: Add new glib subdirectory and configure options
	for glib wrapper.
	
	* glib/Makefile.am:
	* glib/poppler-document.cc:
	* glib/poppler-document.h:
	* glib/poppler-page.cc:
	* glib/poppler-page.h:
	* glib/poppler-private.h:
	* glib/poppler.cc:
	* glib/poppler.h:
	* glib/test-poppler-glib.c:
	* poppler-glib.pc.in: New files.

2005-03-16  Jeff Muizelaar  <jrmuizel@nit.ca>

	From Dan Sheridan <dan.sheridan@postman.org.uk>

	* poppler/XRef.cc (XRef::checkEncrypted):
	The key length should be 5 for revision 2 documents.
	
2005-03-11  Kristian Høgsberg  <krh@redhat.com>

	From  Jeff Muizelaar  <jrmuizel@nit.ca>:
	
	* poppler/CairoOutputDev.cc (CairoOutputDev::drawImageMask): Use
	getLine instead of getPixel.
	
	* configure.ac: Add checks for libjpeg.

	* DCTStream.cc, DCTStream.h, Stream.cc, Stream.h, Makefile.am:
	Conditionally use libjpeg instead of xpdf jpeg decoder.
	
2005-03-10  Kristian Høgsberg  <krh@redhat.com>

	From Jeff Muizelaar <jrmuizel@nit.ca>:

	* poppler/CairoFontEngine.cc (CairoFontEngine::getFont):
	Don't print "Type 3 font!" message.

	* poppler/CairoOutputDev.cc (CairoOutputDev::drawImageMask):
	Enable image mask drawing and do it properly, albeit slowly.

	* poppler/CairoOutputDev.h
	(CairoOutputDev::interpretType3Chars): Return true so that 
	Gfx.cc turns type3 characters into calls to drawImageMask
	
2005-03-09  Kristian Høgsberg  <krh@redhat.com>

	* NEWS: Describe 0.1.2 (and 0.1.1) release.

	* configure.ac: Bump poppler version to 0.1.2

2005-03-09  Kristian Høgsberg  <krh@redhat.com>

	* configure.ac: Bump cairo requirement to 0.4.

2005-03-04  Kristian Høgsberg  <krh@redhat.com>

	Patch from Jeff Muizelaar <jrmuizel@nit.ca>.  Changed to allocate
	glyphs using gmalloc.

	* poppler/CairoOutputDev.cc (CairoOutputDev::drawString):
	Implement drawString instead of drawChar. This change should
	make clipping to a text path work and has a performance
	improvement. Currently the code is a little ugly because we
	can't concat matrices to cairo without losing our current font.

	* poppler/CairoOutputDev.h (CairoOutputDev::useDrawChar):
	Tell Gfx.cc that it should use drawString instead of drawChar.

2005-03-04  Kristian Høgsberg  <krh@redhat.com>

	* test/gtk-cairo-test.cc (view_load): 
	* test/gtk-splash-test.cc (view_load): Fix missing return
	statement, and remove unused variables.

	* configure.ac: Add configure option to enable the default KDE
	flags as described by Albert Astals Cid <tsdgeos@yahoo.es>.

	* TODO: Update with Jeff's items.

	* .cvsignore:
	* */.cvsignore: Add these to silence CVS.
	
	* configure.ac: Implement same check for gtk+-2.0 tests as for
	cairo.

2005-03-04  Kristian Høgsberg  <krh@redhat.com>

	* configure.ac: Only fail hard in check for cairo if the user
	specified --enable-cairo-output (from Brad Hards
	<bradh@frogmouth.net>).  Print summary of configure results at the
	end of configure script.

	* poppler/poppler-config.h: Remove this file (noticed by Brad
	Hards <bradh@frogmouth.net>).

2005-03-03  Kristian Høgsberg  <krh@redhat.com>

	Patch from Jeff Muizelaar <jrmuizel@nit.ca>:

	* poppler/CairoOutputDev.cc (CairoOutputDev::drawImage,
	CairoOutputDev::drawImageMask): destroy the image surface and
	free the image buffer.
	
2005-03-03  Kristian Høgsberg  <krh@redhat.com>

	* autogen.sh: Add -i to autoreconf invocation.

	* autogen.sh: Add to CVS.

2005-03-01  Kristian Høgsberg  <krh@redhat.com>

	* poppler/*.h: Take config.h out of header files.

	* configure.ac: Bump release to 0.1.1 to build a tar ball that
	works with CVS evince.

	* poppler.pc.in (Cflags): Change include dir to be poppler.

	* poppler/Makefile.am (poppler_include_HEADERS): Add splash and
	cairo headers.

2005-02-27  Kristian Høgsberg  <krh@redhat.com>

	* test/gtk-cairo-test.cc: Add cairo test case.

	* configure.ac, poppler/Makefile.am, poppler/Cairo*: Add Alex
	Larsons cairo output device.
	
	* configure.ac, Makefile.am: Make splash backend conditional. 
	
	* test/*: Add optional GdkRGB based test program (taken from
	evince).
	
	* goo/*: rename files and functions to GooHash, GooString etc. to
	avoid nasty glib clash.
	
	* poppler.pc.in: New file.

	* configure.ac: Combining bits from evince configure.ac and
	removing checks only required by the xpdf applications.

	* everything: Created poppler as a fork of xpdf.
