[arch-commits] Commit in kdeedu-marble/trunk (PKGBUILD fix-with-qt48.patch)

Andrea Scarpino andrea at archlinux.org
Thu Feb 9 14:11:08 UTC 2012


    Date: Thursday, February 9, 2012 @ 09:11:07
  Author: andrea
Revision: 149701

upgpkg: kdeedu-marble 4.8.0-2

Fix bugs with Qt 4.8

Added:
  kdeedu-marble/trunk/fix-with-qt48.patch
Modified:
  kdeedu-marble/trunk/PKGBUILD

---------------------+
 PKGBUILD            |   11 ++++--
 fix-with-qt48.patch |   87 ++++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 95 insertions(+), 3 deletions(-)

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2012-02-09 04:56:34 UTC (rev 149700)
+++ PKGBUILD	2012-02-09 14:11:07 UTC (rev 149701)
@@ -3,7 +3,7 @@
 
 pkgname=kdeedu-marble
 pkgver=4.8.0
-pkgrel=1
+pkgrel=2
 pkgdesc="Desktop Globe"
 url="http://kde.org/applications/education/marble/"
 arch=('i686' 'x86_64')
@@ -13,10 +13,15 @@
 makedepends=('cmake' 'automoc4' 'gpsd')
 optdepends=('gpsd: gps support')
 install=${pkgname}.install
-source=("http://download.kde.org/stable/${pkgver}/src/marble-${pkgver}.tar.bz2")
-sha1sums=('6c3c6b03c9d8e92730d6955adcbdb5de42fda43d')
+source=("http://download.kde.org/stable/${pkgver}/src/marble-${pkgver}.tar.bz2"
+        'fix-with-qt48.patch')
+sha1sums=('6c3c6b03c9d8e92730d6955adcbdb5de42fda43d'
+          '3ec130564aa1b7a61a0c3cd51533c69c6c35bd0e')
 
 build() {
+  cd "${srcdir}"/marble-${pkgver}
+  patch -p1 -i "${srcdir}"/fix-with-qt48.patch
+
   cd "${srcdir}"
   mkdir build
   cd build

Added: fix-with-qt48.patch
===================================================================
--- fix-with-qt48.patch	                        (rev 0)
+++ fix-with-qt48.patch	2012-02-09 14:11:07 UTC (rev 149701)
@@ -0,0 +1,87 @@
+commit 79c39f45468bace95169d1ba959884ce27087d1e
+Author: Torsten Rahn <rahn at kde.org>
+Date:   Wed Feb 8 17:18:15 2012 +0100
+
+    Fixes for Marble with Qt 4.8:
+    
+    - Provide proper colors for Marble's Atlas, Temperature,
+      Precipitation and Venus/Mars Topography maps.
+      ( due to introduction of QImage::fill( QColor ) overload )
+    
+    - Show proper icons for MarbleLegendBrowser
+      ( due to new interpretation of the "current directory" in
+        QTextBrowser )
+
+diff --git a/src/lib/MarbleLegendBrowser.cpp b/src/lib/MarbleLegendBrowser.cpp
+index 4a25095..ffa0a23 100644
+--- a/src/lib/MarbleLegendBrowser.cpp
++++ b/src/lib/MarbleLegendBrowser.cpp
+@@ -130,26 +130,24 @@ void MarbleLegendBrowser::loadLegend()
+     t.start();
+ 
+     // Read the html string.
+-    QString finalHtml;
++    QString legendPath;
+ 
+     // Check for a theme specific legend.html first
+     if ( d->m_marbleModel != 0 && d->m_marbleModel->mapTheme() != 0 )
+     {
+         GeoSceneDocument *currentMapTheme = d->m_marbleModel->mapTheme();
+ 
+-        QString customLegendPath = MarbleDirs::path( "maps/" + 
++        legendPath = MarbleDirs::path( "maps/" + 
+         currentMapTheme->head()->target() + '/' + 
+         currentMapTheme->head()->theme() + "/legend.html" ); 
+-        if ( !customLegendPath.isEmpty() )
+-            finalHtml = readHtml( QUrl::fromLocalFile( customLegendPath  ) );
+-        else
+-            finalHtml.clear();
+     }
+-
+-    if ( finalHtml.isEmpty() ) {
+-        finalHtml = readHtml( QUrl::fromLocalFile( MarbleDirs::path( "legend.html" ) ) );
++    if ( legendPath.isEmpty() ) {
++	legendPath = MarbleDirs::path( "legend.html" ); 
+     }
+ 
++    QString finalHtml = readHtml( QUrl::fromLocalFile( legendPath ) );
++    finalHtml.replace( QString( "./" ), legendPath.section( '/', 0, -2 ) + '/' );
++
+     // Generate some parts of the html from the MapTheme <Legend> tag. 
+     const QString sectionsHtml = generateSectionsHtml();
+ 
+diff --git a/src/lib/TextureColorizer.cpp b/src/lib/TextureColorizer.cpp
+index 4a4f8f3..d0deead 100644
+--- a/src/lib/TextureColorizer.cpp
++++ b/src/lib/TextureColorizer.cpp
+@@ -176,7 +176,7 @@ void TextureColorizer::colorize( QImage *origimg, const ViewportParams *viewport
+         m_coastImage = QImage( viewport->size(), QImage::Format_RGB32 );
+ 
+     // update coast image
+-    m_coastImage.fill( Qt::transparent );
++    m_coastImage.fill( QColor( 0, 0, 255, 0) );
+ 
+     bool doClip = false; //assume false
+     switch( viewport->projection() ) {
+commit b89ff577fcbd085fbd180f59aa669dded1818082
+Author: Bernhard Beschow <bbeschow at cs.tu-berlin.de>
+Date:   Wed Feb 8 18:14:59 2012 +0100
+
+    compile with Qt < 4.8
+    
+    * take into account the comment in the API doc, which suggests to use QColor::rgb()
+    (cherry picked from commit 6eafb31f509c622e2672c31b73ebcb1b3dafb3e9)
+
+diff --git a/src/lib/TextureColorizer.cpp b/src/lib/TextureColorizer.cpp
+index d0deead..9319a89 100644
+--- a/src/lib/TextureColorizer.cpp
++++ b/src/lib/TextureColorizer.cpp
+@@ -176,7 +176,7 @@ void TextureColorizer::colorize( QImage *origimg, const ViewportParams *viewport
+         m_coastImage = QImage( viewport->size(), QImage::Format_RGB32 );
+ 
+     // update coast image
+-    m_coastImage.fill( QColor( 0, 0, 255, 0) );
++    m_coastImage.fill( QColor( 0, 0, 255, 0).rgb() );
+ 
+     bool doClip = false; //assume false
+     switch( viewport->projection() ) {




More information about the arch-commits mailing list