summaryrefslogtreecommitdiff
path: root/kde-plasma/breeze
diff options
context:
space:
mode:
Diffstat (limited to 'kde-plasma/breeze')
-rw-r--r--kde-plasma/breeze/Manifest3
-rw-r--r--kde-plasma/breeze/breeze-5.24.6-r1.ebuild54
-rw-r--r--kde-plasma/breeze/files/breeze-5.24.6-fix-qqc2-progressbar-style-in-rtl.patch58
-rw-r--r--kde-plasma/breeze/files/breeze-5.24.6-fix-qqc2-sliders-in-rtl.patch76
4 files changed, 191 insertions, 0 deletions
diff --git a/kde-plasma/breeze/Manifest b/kde-plasma/breeze/Manifest
index 456a5a06cdd8..7767b4df47cc 100644
--- a/kde-plasma/breeze/Manifest
+++ b/kde-plasma/breeze/Manifest
@@ -1,7 +1,10 @@
+AUX breeze-5.24.6-fix-qqc2-progressbar-style-in-rtl.patch 2441 BLAKE2B 4b3c954753510f1be049cd83d7d26c7b685bc0d6c33fb5c6a719e30598fc2e0590b205531c0532dc8af5ea28fbb83ed93f73005fcd0928bc0f71cc3cc820c274 SHA512 f0693d76adb0dd64970cb77ccf8b2c938c133a1c303f4ed603a6b56921d20a9015600826d2e4158fd7d4511508fa79c3d240996c62fb509206452be3907f47e3
+AUX breeze-5.24.6-fix-qqc2-sliders-in-rtl.patch 3583 BLAKE2B 7c70af921e37a8c82774345bfa1ed132a602713936ecc4eb763d6dbe2f33586723ea2d69ddbff09612151bc2de643aa78adc921989aa35cf72f7858fa40edea8 SHA512 ea6280190669b75fff169515cb5870b4eff91bb42ef4b5e37d399a788410609352e401cf540db0237ad3e89ebf4bacd40ddf02279f41ab5371f747f46b2285b5
DIST breeze-5.24.5.tar.xz 43037308 BLAKE2B 68fce5bac9abc097a1c91db68fa97a2215ea4e43d91e5ac9e86f803c64229f2d9e96c318417450acea0ef79316c0f2596d6bc9c0cd5513aa3249a616bc3f8007 SHA512 25e5744589130f7d339c727e17e662a28bdecc3f0598b9683735ccdfd2dcdeada46a49baa5564a7cf7d59a3f6ac34802ae2172857e704941d64cf879b3583df0
DIST breeze-5.24.6.tar.xz 43037288 BLAKE2B 69245aa03eb5d8e8f26a45a7bbba246a19b07d96e0c193cdac7a4bf4e538810269a4fa575f68ee9f0c6a362a50dead58de484f06f4258f1fa773e654fb6b870c SHA512 976744eeeaddd2d165315f17491ee67cc63d03f935a29eda99afefed51e642daf60aa4d6a71621f15e1a87138d8d91a0e36f081ae30e80ef31796067e858ca93
DIST breeze-5.25.3.tar.xz 31155548 BLAKE2B 3472496fa507469835015348dcdb805c72cccbc298606f83a3db27890f041573cfd68c52a35ebfd6c697da808b96c50be0433e28ac4bb3f3706535b70896463d SHA512 c5b51d871436c2334a5088292cca39ea055703d7945800b6aba2bd0b392e60862d9fdbbe705331f140d59f6842663608226c1e99dfd40dc8060645413a1e0abc
EBUILD breeze-5.24.5.ebuild 1233 BLAKE2B b78a0cbfd6149999b9defd19e5730d5d3350e17ec5517f9bbd8feff0781003c3b353cd676fa847bc84a4542a083a2e1108201ee691d34a7044d630259f78a70c SHA512 d369d733f9cfc2b4b3ef0ef52920f3094dae7bb428a12bef4634f5e606debbda9b5356b70b927a63b3d083a8dc45edb9332282965a2c2aa9ddbc80f4aed2d7c8
+EBUILD breeze-5.24.6-r1.ebuild 1409 BLAKE2B 9e497744decb007538ef0aa61a8b44eecc2d52e37567b88c03c11a6ed6bedd8f637d0cee3057ee049d1c216349c4e7ba94fee3e740fd90146d756f2d1a82eeee SHA512 53287bba2cf3ec0fd27c66634565eeb28d9eddb7955db3901b5212d99d2b5773a18531ba291f9a2c7ce464069dd10bb4b08890729da8b2dcd620e310ad7262a0
EBUILD breeze-5.24.6.ebuild 1250 BLAKE2B 8048dfca3e6f7d531f79728c36802eebfa55d2e3eaa523f90f09746a84c0685ca42dc6da2bc9997ec88b3ba286551bfbbffc76a2e4f419cbfcbb99229b46739a SHA512 c6db95195270ce7e00fdd9ca8753e49247b7386e95646dc8c4ddd61153eb8e69161b3b75ab77f3ef3d2f1e57b60f09f25741aba6519ba0dee7c7a6dc16b169c3
EBUILD breeze-5.25.3.ebuild 1250 BLAKE2B 7a6176ed2111cabf383b13ed39b2c5c2e35197b03470dc7f99a247ec32442a7785d1087ca373d69a341f74eded566efc2ea969b7e6a583581260db17da4623bb SHA512 4857679c73d11c2895dadf74462bcc1e26d7cd9db877d53e1b951bacd85bd70fdb44cc74b69f68c7fca89a610e8b74ec4ce22bc70d17fc1c10f2c1b6cf8a0049
MISC metadata.xml 318 BLAKE2B 922a5e32e706b2976c5f359a14194d268d3f499398576c80ce5fad8c0fcea0fbf048de4480a80a6a1889c88b8b6c14147654a3ab4d5ffbcc258c2290da63f6d1 SHA512 614cb8dda7ad2088e5d6ef39b449bb4be0ac72cd0231c320188d76d1816dce6490c5114bb4798112c4b11d99d30a9e82ff8fcf08ffa8c049589682a5e38208f6
diff --git a/kde-plasma/breeze/breeze-5.24.6-r1.ebuild b/kde-plasma/breeze/breeze-5.24.6-r1.ebuild
new file mode 100644
index 000000000000..503fdca4df41
--- /dev/null
+++ b/kde-plasma/breeze/breeze-5.24.6-r1.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+KFMIN=5.92.0
+PVCUT=$(ver_cut 1-3)
+QTMIN=5.15.4
+inherit ecm plasma.kde.org
+
+DESCRIPTION="Breeze visual style for the Plasma desktop"
+HOMEPAGE="https://invent.kde.org/plasma/breeze"
+
+LICENSE="GPL-2" # TODO: CHECK
+SLOT="5"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86"
+IUSE="X"
+
+RDEPEND="
+ >=dev-qt/qtdbus-${QTMIN}:5
+ >=dev-qt/qtdeclarative-${QTMIN}:5
+ >=dev-qt/qtgui-${QTMIN}:5
+ >=dev-qt/qtwidgets-${QTMIN}:5
+ >=dev-qt/qtx11extras-${QTMIN}:5
+ >=kde-frameworks/frameworkintegration-${KFMIN}:5
+ >=kde-frameworks/kcmutils-${KFMIN}:5
+ >=kde-frameworks/kconfig-${KFMIN}:5
+ >=kde-frameworks/kconfigwidgets-${KFMIN}:5
+ >=kde-frameworks/kcoreaddons-${KFMIN}:5
+ >=kde-frameworks/kguiaddons-${KFMIN}:5
+ >=kde-frameworks/ki18n-${KFMIN}:5
+ >=kde-frameworks/kiconthemes-${KFMIN}:5
+ >=kde-frameworks/kwidgetsaddons-${KFMIN}:5
+ >=kde-frameworks/kwindowsystem-${KFMIN}:5
+ >=kde-plasma/kdecoration-${PVCUT}:5
+ X? ( x11-libs/libxcb )
+"
+DEPEND="${RDEPEND}"
+PDEPEND="
+ >=kde-frameworks/breeze-icons-${KFMIN}:5
+ >=kde-plasma/kde-cli-tools-${PVCUT}:5
+"
+
+PATCHES=(
+ "${FILESDIR}/${P}-fix-qqc2-sliders-in-rtl.patch" # KDE-bug #430101
+ "${FILESDIR}/${P}-fix-qqc2-progressbar-style-in-rtl.patch" # KDE-bug #430101
+)
+
+src_configure() {
+ local mycmakeargs=(
+ $(cmake_use_find_package X XCB)
+ )
+ ecm_src_configure
+}
diff --git a/kde-plasma/breeze/files/breeze-5.24.6-fix-qqc2-progressbar-style-in-rtl.patch b/kde-plasma/breeze/files/breeze-5.24.6-fix-qqc2-progressbar-style-in-rtl.patch
new file mode 100644
index 000000000000..36e4f952d980
--- /dev/null
+++ b/kde-plasma/breeze/files/breeze-5.24.6-fix-qqc2-progressbar-style-in-rtl.patch
@@ -0,0 +1,58 @@
+From d7c0ab28df83eb4a4c39495a25e609047c735d59 Mon Sep 17 00:00:00 2001
+From: ivan tkachenko <me@ratijas.tk>
+Date: Sat, 4 Jun 2022 05:00:53 +0300
+Subject: [PATCH] KStyle: Fix QQC2 ProgressBar desktop style in RTL layout
+ direction
+
+BUG: 430101
+
+(cherry picked from commit 2bf9fc4c7be280e2b77f7c150855e0fca0b80d9a)
+
+* asturm 2022-07-26: Merged with clang-format changes in commit
+ 32149dc002ae574ed41f111bf52712b1765b906b
+
+---
+ kstyle/breezestyle.cpp | 16 ++++++++++------
+ 1 file changed, 10 insertions(+), 6 deletions(-)
+
+diff --git a/kstyle/breezestyle.cpp b/kstyle/breezestyle.cpp
+index c9fba292..0d7a8432 100644
+--- a/kstyle/breezestyle.cpp
++++ b/kstyle/breezestyle.cpp
+@@ -1749,23 +1749,27 @@ namespace Breeze
+ const bool horizontal( BreezePrivate::isProgressBarHorizontal( progressBarOption ) );
+
+ // check inverted appearance
+- const bool inverted( progressBarOption->invertedAppearance );
++ bool inverted(progressBarOption->invertedAppearance);
++ if (horizontal) {
++ // un-invert in RTL layout
++ inverted ^= option->direction == Qt::RightToLeft;
++ }
+
+ // get progress and steps
+- const qreal progress( progressBarOption->progress - progressBarOption->minimum );
++ const int progress(progressBarOption->progress - progressBarOption->minimum);
+ const int steps( qMax( progressBarOption->maximum - progressBarOption->minimum, 1 ) );
+
+ //Calculate width fraction
+- const qreal widthFrac = qMin( qreal(1), progress/steps );
++ const qreal position = qreal(progress) / qreal(steps);
++ const qreal visualPosition = inverted ? 1 - position : position;
+
+ // convert the pixel width
+- const int indicatorSize( widthFrac*( horizontal ? rect.width():rect.height() ) );
++ const int indicatorSize(visualPosition * (horizontal ? rect.width() : rect.height()));
+
+ QRect indicatorRect;
+ if( horizontal )
+ {
+-
+- indicatorRect = QRect( inverted ? ( rect.right() - indicatorSize + 1):rect.left(), rect.y(), indicatorSize, rect.height() );
++ indicatorRect = QRect(rect.left(), rect.y(), indicatorSize, rect.height());
+ indicatorRect = visualRect( option->direction, rect, indicatorRect );
+
+ } else indicatorRect = QRect( rect.x(), inverted ? rect.top() : (rect.bottom() - indicatorSize + 1), rect.width(), indicatorSize );
+--
+2.35.1
+
diff --git a/kde-plasma/breeze/files/breeze-5.24.6-fix-qqc2-sliders-in-rtl.patch b/kde-plasma/breeze/files/breeze-5.24.6-fix-qqc2-sliders-in-rtl.patch
new file mode 100644
index 000000000000..b8b3504a0a0e
--- /dev/null
+++ b/kde-plasma/breeze/files/breeze-5.24.6-fix-qqc2-sliders-in-rtl.patch
@@ -0,0 +1,76 @@
+From 53f24305536850b244b730f9a04024daf02e753b Mon Sep 17 00:00:00 2001
+From: Jan Blackquill <uhhadd@gmail.com>
+Date: Fri, 3 Jun 2022 17:34:02 -0400
+Subject: [PATCH] kstyle: fix qqc2 desktop style sliders in RtL
+
+We don't do any mirroring of the slider groove rects or tickmarks based on layout direction,
+and this causes qqc2-desktop-style sliders to render in the wrong direction.
+Swapping the leftRect and the rightRect when option->direction == Qt::RightToLeft
+fixes this.
+
+This wasn't broken with QWidgets because QSlider relies on (ab)using the upsideDown option
+in order to achieve mirroring of the groove instead of option->direction, and consequently,
+this change doesn't affect Qt widgets apps at all.
+
+BUG: 430101
+(cherry picked from commit e8b1d4aa47daf99041332f43c29fabdf70f25004)
+
+* asturm 2022-07-26: Merged with clang-format changes in commit
+ 32149dc002ae574ed41f111bf52712b1765b906b
+
+---
+ kstyle/breezestyle.cpp | 14 ++++++++++----
+ 1 file changed, 10 insertions(+), 4 deletions(-)
+
+diff --git a/kstyle/breezestyle.cpp b/kstyle/breezestyle.cpp
+index 2ef2ea98..c9fba292 100644
+--- a/kstyle/breezestyle.cpp
++++ b/kstyle/breezestyle.cpp
+@@ -51,6 +51,7 @@
+ #include <QDialogButtonBox>
+ #include <QGraphicsItem>
+ #include <QGraphicsProxyWidget>
++#include <qnamespace.h>
+
+ #if BREEZE_HAVE_QTQUICK
+ #include <QQuickWindow>
+@@ -6679,6 +6680,7 @@ namespace Breeze
+ }
+
+ // colors
++ const auto reverseTicks = option->direction == Qt::LeftToRight ? upsideDown : !upsideDown;
+ const auto base( _helper->separatorColor( palette ) );
+ const auto &highlight = hasHighlightNeutral( widget, option, mouseOver, hasFocus ) ? _helper->neutralText( palette ) : palette.color( QPalette::Highlight );
+
+@@ -6693,8 +6695,8 @@ namespace Breeze
+ int position( sliderPositionFromValue( sliderOption->minimum, sliderOption->maximum, current, available ) + fudge );
+ foreach( const QLine& tickLine, tickLines )
+ {
+- if( horizontal ) painter->drawLine( tickLine.translated( upsideDown ? (rect.width() - position) : position, 0 ) );
+- else painter->drawLine( tickLine.translated( 0, upsideDown ? (rect.height() - position):position ) );
++ if( horizontal ) painter->drawLine(tickLine.translated(reverseTicks ? (rect.width() - position) : position, 0));
++ else painter->drawLine(tickLine.translated(0, reverseTicks ? (rect.height() - position) : position));
+ }
+
+ // go to next position
+@@ -6729,11 +6731,15 @@ namespace Breeze
+
+ auto leftRect( grooveRect );
+ leftRect.setRight( handleRect.right() - Metrics::Slider_ControlThickness/2 );
+- _helper->renderSliderGroove( painter, leftRect, upsideDown ? grooveColor:highlight );
+
+ auto rightRect( grooveRect );
+ rightRect.setLeft( handleRect.left() + Metrics::Slider_ControlThickness/2 );
+- _helper->renderSliderGroove( painter, rightRect, upsideDown ? highlight:grooveColor );
++
++ if (option->direction == Qt::RightToLeft)
++ std::swap(leftRect, rightRect);
++
++ _helper->renderSliderGroove(painter, leftRect, upsideDown ? grooveColor : highlight);
++ _helper->renderSliderGroove(painter, rightRect, upsideDown ? highlight : grooveColor);
+
+ } else {
+
+--
+2.35.1
+