test: Teach check-preprocessor-syntax.sh about -inlines.h
test: Fix conflation of different device scales in index.html

Currently testtable.js does not recognise the difference between running
the same test with multiple scale factors and merges the results into
one.
test: Fix error message to specify the executable that was missing

Signed-off-by: Bryce Harrington <bryce@osg.samsung.com>
test: Add an update-refs.sh script to update reference images

There are cases where the rendered output of a test can vary from
backend to backend in ways which are visually acceptable.  This is why
we have reference images in the first place.  In these cases, changes to
the rendering logic can result in slight differences in the output that
is also within acceptable visual limits.

We see this in the pixman downscaling tests.  This script is introduced
as a way to more easily update the reference images after a renderer
change.

This script is intended to be expanded to handle updating of references
for other tests as we identify similar issues.  The intent is that this
script then serves as a way to document these exceptional cases.

Signed-off-by: Bryce Harrington <bryce@osg.samsung.com>
test: Update pixman downscaling 95 reference images

The pixman downscaling "95" tests attempt to rescale a 96x96 pixmap to
95x95.  Ideally the borders between color areas should be sharp, but for
this use case we allow for 1 pixel of blur between the areas as
acceptable.  The choice of what color to use for this blurred region is
not important, and in fact varies from backend to backend.

The old reference images were generated by Krzysztof Kosiński's
downscaling algorithm.  These new images are against the algorithms
written by Bill Spitzak.

Signed-off-by: Bryce Harrington <bryce@osg.samsung.com>
image: Move filter decision to _cairo_pattern_analyze_filter

The analysis to deterimine if the GOOD filter can be replaced with
the BILINEAR filter is moved to this function so it can be used
by backends other than the image backend.

Reviewed-by: Bryce Harrington <b.harrington@samsung.com>
xlib: Add symbols to indicate if XRender supports GOOD/BEST filtering

Currently these are always false, but if some version of xlib uses
a pixman supporting filtering they could be changed to return true
for that version.

Reviewed-by: Bryce Harrington <b.harrington@samsung.com>
xlib: Use image fallback for GOOD/BEST filters

Fallback is not used if the symbols defined in the previous patch to
indicate if XRender does GOOD/BEST are true.

This patch also includes some changes to take advantage of the fact that
if there is an integer translation analyze_filter will already have set
the filter to NEAREST.

Reviewed-by: Bryce Harrington <b.harrington@samsung.com>
xcb: Add switches for whether XRender supports GOOD/BEST filtering

Currently these are always false, but if XRender use a pixman that
supports filtering these could be turned on for that version.

Reviewed-by: Bryce Harrington <b.harrington@samsung.com>
xcb: Use image fallback for GOOD/BEST filters

It will not use the fallback if the symbols in the previous patch
are turned on.

Also some code rearrangement to make this resemble the xlib version
more and to remove some suspect bugs. In particular meshes should not
work just because the translation is an integer.

Reviewed-by: Bryce Harrington <b.harrington@samsung.com>
image: Corrected extents calculations

New implementations of _cairo_pattern_sampled_area and _cairo_pattern_get_extents
which produce a more accurate bounding box. These do not depend on side-effects
of analyze_filter, can handle different horizontal and vertical scales, filters
wider than 1 for down-scaling, and compute a somewhat tighter bounding box
in most cases.

I removed the pad output of _cairo_pattern_analyze_filter as it is unused.

Reviewed-by: Bryce Harrington <b.harrington@samsung.com>
pdf: don't use '\' to split strings across multiple lines

The PDF interpreter in my printer does not handle this correctly.
So instead we add the string delimiters '(' and ')' to each line.
NEWS: Update with latest changes and finalize for release
NEWS: Flesh out docs for new APIs
1.14.0 release
pattern: Restore dropped inclusion of cairoint.h

Fixes failure in make release-check due by check-preprocessor-syntax.sh
due to requirement that cairoint.h be the first include for source files.
Start 1.14.1 development
RELEASING:  Update tags push command

I couldn't get the documented command to do diddly.  Running
`git push --tags` achieved what I think was intended.
Update mime type documentation.
Add execution bit for make-cairo-test-constructors.sh

This is referenced in the Makefile but not set as executable