author | Antonio Rojas
<arojas@archlinux.org> 2016-04-26 19:18:14 UTC |
committer | Antonio Rojas
<arojas@archlinux.org> 2016-04-26 19:18:14 UTC |
parent | ebbe067a704adfdda25506e87ea5620e3b5f7091 |
PKGBUILD | +13 | -3 |
kdebug-362241.patch | +52 | -0 |
diff --git a/PKGBUILD b/PKGBUILD index c35724f..667f061 100644 --- a/PKGBUILD +++ b/PKGBUILD @@ -2,7 +2,7 @@ pkgname=spectacle pkgver=16.04.0 -pkgrel=1 +pkgrel=2 pkgdesc="KDE screenshot capture utility" arch=(i686 x86_64) url='https://www.kde.org/applications/graphics/' @@ -12,12 +12,22 @@ makedepends=(extra-cmake-modules kdoctools python) conflicts=(kdegraphics-ksnapshot kscreengenie) replaces=(kdegraphics-ksnapshot kscreengenie) groups=(kde-applications kdegraphics) -source=("http://download.kde.org/stable/applications/$pkgver/src/$pkgname-$pkgver.tar.xz") +source=("http://download.kde.org/stable/applications/$pkgver/src/$pkgname-$pkgver.tar.xz" + spectacle-hidpi.patch::"https://quickgit.kde.org/?p=spectacle.git&a=commitdiff&h=3d4dcacc&o=plain" + kdebug-362241.patch) install=$pkgname.install -md5sums=('231a565255ff420b2a8b0974530b1c28') +md5sums=('231a565255ff420b2a8b0974530b1c28' + '53e7af8dd42eb968d642d110f0a69be1' + '4cc380edb046432832fc6a3aeb926d82') prepare() { mkdir -p build + + cd $pkgname-$pkgver +# Fix high DPI + patch -p1 -i ../spectacle-hidpi.patch +# Unbreak rectangular image grabs for nvidia users http://bugs.kde.org/show_bug.cgi?id=362241 + patch -p1 -i ../kdebug-362241.patch } build() { diff --git a/kdebug-362241.patch b/kdebug-362241.patch new file mode 100644 index 0000000..2c506f9 --- /dev/null +++ b/kdebug-362241.patch @@ -0,0 +1,52 @@ +From: Boudhayan Gupta <me@BaloneyGeek.com> +Date: Mon, 25 Apr 2016 18:27:49 +0000 +Subject: Unbreak rectangular image grabs for nvidia users. +X-Git-Url: http://quickgit.kde.org/?p=spectacle.git&a=commitdiff&h=abbbe6d13de870f9e9349acc2542cffc5d41b76d +--- +Unbreak rectangular image grabs for nvidia users. + +BUG: 362241 +FIXED-IN: 16.04.1 +--- + + +--- a/src/QuickEditor/QuickEditor.cpp ++++ b/src/QuickEditor/QuickEditor.cpp +@@ -138,23 +138,7 @@ + d->mGrabRect = QRect(x, y, width, height); + SpectacleConfig::instance()->setCropRegion(d->mGrabRect); + +- QQuickItem *target = d->mQuickView->rootObject()->findChild<QQuickItem *>(QStringLiteral("imageBackground")); +- d->mCurrentGrabResult = target->grabToImage(); +- if (d->mCurrentGrabResult.isNull()) { +- emit grabCancelled(); +- return; +- } +- +- connect(d->mCurrentGrabResult.data(), &QQuickItemGrabResult::ready, this, &QuickEditor::grabReadyHandler); ++ d->mQuickView->hide(); ++ emit grabDone(mImageStore->mPixmap.copy(d->mGrabRect), d->mGrabRect); + } + +-void QuickEditor::grabReadyHandler() +-{ +- Q_D(QuickEditor); +- +- QImage croppedImage = d->mCurrentGrabResult->image().copy(d->mGrabRect); +- QPixmap croppedPixmap = QPixmap::fromImage(croppedImage); +- +- d->mQuickView->hide(); +- emit grabDone(croppedPixmap, d->mGrabRect); +-} + +--- a/src/QuickEditor/QuickEditor.h ++++ b/src/QuickEditor/QuickEditor.h +@@ -39,7 +39,6 @@ + private slots: + + void acceptImageHandler(int x, int y, int width, int height); +- void grabReadyHandler(); + + private: + +