[gtk+] broadway: Extract buffer decoding to separate helper
- From: Alexander Larsson <alexl src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtk+] broadway: Extract buffer decoding to separate helper
- Date: Fri, 8 Nov 2013 12:44:45 +0000 (UTC)
commit 688b6e63b5abba9a03ba817016cb60153e3960c7
Author: Alexander Larsson <alexl redhat com>
Date: Fri Nov 8 10:13:12 2013 +0100
broadway: Extract buffer decoding to separate helper
gdk/broadway/broadway.js | 24 ++++++++++++++++--------
1 files changed, 16 insertions(+), 8 deletions(-)
---
diff --git a/gdk/broadway/broadway.js b/gdk/broadway/broadway.js
index 90e7eb0..f7ce699 100644
--- a/gdk/broadway/broadway.js
+++ b/gdk/broadway/broadway.js
@@ -329,13 +329,10 @@ function copyRect(src, srcX, srcY, dest, destX, destY, width, height)
}
}
-function cmdPutBuffer(id, w, h, compressed)
+function decodeBuffer(context, oldData, w, h, data)
{
- var surface = surfaces[id];
- var context = surface.canvas.getContext("2d");
- var imageData = context.createImageData(w, h);
- var oldData = surface.imageData;
var i, j;
+ var imageData = context.createImageData(w, h);
if (oldData != null) {
// Copy old frame into new buffer
@@ -345,9 +342,6 @@ function cmdPutBuffer(id, w, h, compressed)
var src = 0;
var dest = 0;
- var inflate = new Zlib.RawInflate(compressed);
- var data = inflate.decompress();
-
while (src < data.length) {
var b = data[src++];
var g = data[src++];
@@ -442,6 +436,20 @@ function cmdPutBuffer(id, w, h, compressed)
}
}
+ return imageData;
+}
+
+
+function cmdPutBuffer(id, w, h, compressed)
+{
+ var surface = surfaces[id];
+ var context = surface.canvas.getContext("2d");
+
+ var inflate = new Zlib.RawInflate(compressed);
+ var data = inflate.decompress();
+
+ var imageData = decodeBuffer (context, surface.imageData, w, h, data);
+
context.putImageData(imageData, 0, 0);
surface.imageData = imageData;
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]