summaryrefslogtreecommitdiff
path: root/windows/thumbnail.c
diff options
context:
space:
mode:
authorDaniel Silverstone <dsilvers@netsurf-browser.org>2010-03-28 12:56:39 +0000
committerDaniel Silverstone <dsilvers@netsurf-browser.org>2010-03-28 12:56:39 +0000
commit270ef59a98d34fef418fb6cd27e46f3edc912948 (patch)
tree9d363b42d441640e1d2dbff3ba548a2cdf8d67a9 /windows/thumbnail.c
parent21da4f5bdf74c6654730c32dfcc1c6b3d24da4b4 (diff)
downloadnetsurf-270ef59a98d34fef418fb6cd27e46f3edc912948.tar.gz
netsurf-270ef59a98d34fef418fb6cd27e46f3edc912948.tar.bz2
Merge jmb/new-cache; r=dsilvers,rs=vince
svn path=/trunk/netsurf/; revision=10180
Diffstat (limited to 'windows/thumbnail.c')
-rw-r--r--windows/thumbnail.c33
1 files changed, 17 insertions, 16 deletions
diff --git a/windows/thumbnail.c b/windows/thumbnail.c
index 8305ee1cc..e96c32201 100644
--- a/windows/thumbnail.c
+++ b/windows/thumbnail.c
@@ -23,29 +23,30 @@
#include "windows/bitmap.h"
#include "windows/gui.h"
#include "windows/plot.h"
+#include "content/hlcache.h"
-#ifndef MIN
-#define MIN(a,b) (((a) < (b)) ? (a) : (b))
-#endif
-#ifndef MAX
-#define MAX(a,b) (((a) > (b)) ? (a) : (b))
-#endif
-
-bool thumbnail_create(struct content *content, struct bitmap *bitmap,
- const char *url)
+bool
+thumbnail_create(hlcache_handle *content,
+ struct bitmap *bitmap,
+ const char *url)
{
- LOG(("creating thumbnail %p for url %s content %p", bitmap, url,
- content));
- int width = MIN(content->width, 1024);
- int height = MIN(content->height, 768);
+ int width = content_get_width(content);
+ int height = content_get_height(content);
int i;
uint8_t *pixdata;
HDC hdc, minidc;
HBITMAP bufferbm, minibm, minibm2;
- BITMAPINFO *bmi = (BITMAPINFO *) malloc(sizeof(BITMAPINFOHEADER) +
- (bitmap->width * bitmap->height * 4));
+ BITMAPINFO *bmi;
BITMAPINFOHEADER bmih;
+
+ LOG(("creating thumbnail %p for url %s content %p", bitmap, url, content));
+
+ bmi = malloc(sizeof(BITMAPINFOHEADER) + (bitmap->width * bitmap->height * 4));
+ if (bmi == NULL) {
+ return false;
+ }
+
bmih.biSize = sizeof(bmih);
bmih.biWidth = bitmap->width;
bmih.biHeight = - bitmap->height;
@@ -81,7 +82,7 @@ bool thumbnail_create(struct content *content, struct bitmap *bitmap,
}
SelectObject(bufferdc, bufferbm);
thumbnail = true;
- content_redraw(content, 0, 0, content->width, content->height, 0, 0,
+ content_redraw(content, 0, 0, width, height, 0, 0,
width, height, 1.0, 0xFFFFFF);
thumbnail = false;