firefox 3.0.1: make it go faster in 16bpp modes
authorKoen Kooi <koen@openembedded.org>
Wed, 3 Jun 2009 11:55:17 +0000 (13:55 +0200)
committerKoen Kooi <koen@Powerbook-3.local>
Fri, 5 Jun 2009 15:48:09 +0000 (17:48 +0200)
recipes/mozilla/files/use-native-bpp.patch [new file with mode: 0644]
recipes/mozilla/firefox_3.0.1.bb

diff --git a/recipes/mozilla/files/use-native-bpp.patch b/recipes/mozilla/files/use-native-bpp.patch
new file mode 100644 (file)
index 0000000..4b0f0d1
--- /dev/null
@@ -0,0 +1,37 @@
+Subject: [PATCH] Use native format for storing non-transparent pictures.
+
+When using 16-bit color depth for desktop, it is preferable
+to also use 16bpp format for images to get better performance.
+As an additional bonus, the browser uses less memory when
+viewing pages with lots of images.
+
+Taken from https://bugzilla.mozilla.org/show_bug.cgi?id=386440
+---
+ gfx/thebes/src/gfxPlatformGtk.cpp |   11 +++++++++--
+ 1 files changed, 9 insertions(+), 2 deletions(-)
+
+diff --git a/gfx/thebes/src/gfxPlatformGtk.cpp b/gfx/thebes/src/gfxPlatformGtk.cpp
+index 39e09e7..78e6002 100644
+--- a/gfx/thebes/src/gfxPlatformGtk.cpp
++++ b/gfx/thebes/src/gfxPlatformGtk.cpp
+@@ -142,8 +142,15 @@ gfxPlatformGtk::CreateOffscreenSurface(const gfxIntSize& size,
+     if (!UseGlitz()) {
+         GdkPixmap* pixmap = nsnull;
+-        XRenderPictFormat* xrenderFormat =
+-            XRenderFindStandardFormat(display, xrenderFormatID);
++        XRenderPictFormat* xrenderFormat = nsnull;
++
++        if (xrenderFormatID == PictStandardRGB24) {
++            // Actually we want not strictly RGB24, but the fastest non-alpha format 
++            xrenderFormat = XRenderFindVisualFormat(display, GDK_VISUAL_XVISUAL(gdk_visual_get_system()));
++        }
++
++        if (!xrenderFormat)
++            xrenderFormat = XRenderFindStandardFormat(display, xrenderFormatID);
+         if (!xrenderFormat) {
+             // We don't have Render; see if we can just create a pixmap
+-- 
+1.5.6.5
+
index 24927c7..f3e52a0 100644 (file)
@@ -1,5 +1,5 @@
 DEPENDS += "cairo"
-PR = "r8"
+PR = "r9"
 
 SRC_URI = "http://ftp.mozilla.org/pub/mozilla.org/firefox/releases/${PV}/source/firefox-${PV}-source.tar.bz2 \
        file://jsautocfg.h \
@@ -13,6 +13,7 @@ SRC_URI = "http://ftp.mozilla.org/pub/mozilla.org/firefox/releases/${PV}/source/
        file://wchart.diff;patch=1 \
        file://0001-Remove-Werror-from-build.patch;patch=1 \
        file://0002-Fix-security-cross-compile-cpu-detection-error.patch;patch=1 \
+       file://use-native-bpp.patch;patch=1 \
 "
 
 S = "${WORKDIR}/mozilla"