summaryrefslogtreecommitdiff
path: root/content/content.c
diff options
context:
space:
mode:
authorChris Young <chris@unsatisfactorysoftware.co.uk>2010-10-03 20:41:31 +0000
committerChris Young <chris@unsatisfactorysoftware.co.uk>2010-10-03 20:41:31 +0000
commitc0b63c111b86492f0571efeab5183ba1ff2be5ad (patch)
tree0459211768f9744c2a31c975614509025442c978 /content/content.c
parentc46e0e60155c204651ce67504e10b8523bfcbdc9 (diff)
downloadnetsurf-c0b63c111b86492f0571efeab5183ba1ff2be5ad.tar.gz
netsurf-c0b63c111b86492f0571efeab5183ba1ff2be5ad.tar.bz2
WebP image support, needs libwebp (from trunk/libwebp) and libvpx.
Only enabled for Amiga build currently, may have colour issues on little-endian CPUs svn path=/trunk/netsurf/; revision=10860
Diffstat (limited to 'content/content.c')
-rw-r--r--content/content.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/content/content.c b/content/content.c
index 5165c6b50..9a8336287 100644
--- a/content/content.c
+++ b/content/content.c
@@ -77,6 +77,9 @@
#ifdef WITH_PNG
#include "image/png.h"
#endif
+#ifdef WITH_WEBP
+#include "image/webp.h"
+#endif
#include "utils/http.h"
#include "utils/log.h"
#include "utils/messages.h"
@@ -153,6 +156,9 @@ static const struct mime_entry mime_map[] = {
#ifdef WITH_BMP
{"image/vnd.microsoft.icon", CONTENT_ICO},
#endif
+#ifdef WITH_WEBP
+ {"image/webp", CONTENT_WEBP},
+#endif
#ifdef WITH_ARTWORKS
{"image/x-artworks", CONTENT_ARTWORKS},
#endif
@@ -231,6 +237,9 @@ const char * const content_type_name[] = {
#if defined(WITH_NS_SVG) || defined(WITH_RSVG)
"SVG",
#endif
+#ifdef WITH_WEBP
+ "WEBP",
+#endif
"OTHER",
"UNKNOWN"
};
@@ -360,6 +369,11 @@ static const struct handler_entry handler_map[] = {
0, rsvg_destroy, 0, 0, 0, rsvg_redraw, 0, 0, 0, rsvg_clone,
false},
#endif
+#ifdef WITH_WEBP
+ {0, 0, webp_convert,
+ 0, webp_destroy, 0, 0, 0, webp_redraw, 0,
+ 0, 0, webp_clone, false},
+#endif
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, false}
};
#define HANDLER_MAP_COUNT (sizeof(handler_map) / sizeof(handler_map[0]))