]> cloud.milkyroute.net Git - dolphin.git/commitdiff
Remove deprecated X scaling of QPixmaps
authorDavid Edmundson <kde@davidedmundson.co.uk>
Tue, 31 Mar 2015 13:19:51 +0000 (15:19 +0200)
committerDavid Edmundson <kde@davidedmundson.co.uk>
Tue, 31 Mar 2015 13:20:02 +0000 (15:20 +0200)
QPixmaps are no longer X pixmaps so this won't ever work anymore

REVIEW: 123138

src/CMakeLists.txt
src/kitemviews/private/kpixmapmodifier.cpp

index bf42fd06dc9b325341f21992876f9ec084c59683..89a4e431c46e1f26ab4250420e8a63f04f106f02 100644 (file)
@@ -16,12 +16,6 @@ remove_definitions(
     -DQT_NO_CAST_TO_ASCII
 )
 
-if(X11_Xrender_FOUND)
-    set(HAVE_XRENDER TRUE)
-endif()
-
-configure_file(config-X11.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-X11.h)
-
 ##########################################
 
 set(dolphinvcs_LIB_SRCS
@@ -169,10 +163,6 @@ else()
     )
 endif()
 
-if(X11_Xrender_FOUND)
-    target_link_libraries(dolphinprivate ${X11_Xrender_LIB})
-endif(X11_Xrender_FOUND)
-
 set_target_properties(dolphinprivate PROPERTIES
     VERSION ${DOLPHINPRIVATE_VERSION_STRING}
     SOVERSION ${DOLPHINPRIVATE_SOVERSION}
index 4693b313abde034edb6cf13d388297c7171a31e4..9340c9790f570bbd2fe60b54dbe1b85661a31f08 100644 (file)
 #include <QSize>
 #include <QGuiApplication>
 
-
-#include <config-X11.h> // for HAVE_XRENDER
-#if defined(Q_WS_X11) && defined(HAVE_XRENDER)
-#  include <QX11Info>
-#  include <X11/Xlib.h>
-#  include <X11/extensions/Xrender.h>
-#endif
-
 static const quint32 stackBlur8Mul[255] =
 {
     512,512,456,512,328,456,335,512,405,328,271,456,388,335,292,512,
@@ -331,45 +323,9 @@ void KPixmapModifier::scale(QPixmap& pixmap, const QSize& scaledSize)
         pixmap = QPixmap();
         return;
     }
-
-#if defined(Q_WS_X11) && defined(HAVE_XRENDER)
-    // Assume that the texture size limit is 2048x2048
-    if ((pixmap.width() <= 2048) && (pixmap.height() <= 2048) && pixmap.x11PictureHandle()) {
-        const QPixmap unscaledPixmap = pixmap.copy(); // Make a deep copy for XRender
-        QSize scaledPixmapSize = pixmap.size();
-        scaledPixmapSize.scale(scaledSize, Qt::KeepAspectRatio);
-
-        const qreal factor = scaledPixmapSize.width() / qreal(unscaledPixmap.width());
-
-        XTransform xform = {{
-            { XDoubleToFixed(1 / factor), 0, 0 },
-            { 0, XDoubleToFixed(1 / factor), 0 },
-            { 0, 0, XDoubleToFixed(1) }
-        }};
-
-        QPixmap scaledPixmap(scaledPixmapSize);
-        scaledPixmap.setDevicePixelRatio(pixmap.devicePixelRatio());
-        scaledPixmap.fill(Qt::transparent);
-
-        Display* dpy = QX11Info::display();
-
-        XRenderPictureAttributes attr;
-        attr.repeat = RepeatPad;
-        XRenderChangePicture(dpy, unscaledPixmap.x11PictureHandle(), CPRepeat, &attr);
-
-        XRenderSetPictureFilter(dpy, unscaledPixmap.x11PictureHandle(), FilterBilinear, 0, 0);
-        XRenderSetPictureTransform(dpy, unscaledPixmap.x11PictureHandle(), &xform);
-        XRenderComposite(dpy, PictOpOver, unscaledPixmap.x11PictureHandle(), None, scaledPixmap.x11PictureHandle(),
-                         0, 0, 0, 0, 0, 0, scaledPixmap.width(), scaledPixmap.height());
-        pixmap = scaledPixmap;
-    } else {
-        pixmap = pixmap.scaled(scaledSize, Qt::KeepAspectRatio, Qt::SmoothTransformation);
-    }
-#else
     qreal dpr = pixmap.devicePixelRatio();
     pixmap = pixmap.scaled(scaledSize, Qt::KeepAspectRatio, Qt::SmoothTransformation);
     pixmap.setDevicePixelRatio(dpr);
-#endif
 }
 
 void KPixmapModifier::applyFrame(QPixmap& icon, const QSize& scaledSize)