Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package qqc2-desktop-style for openSUSE:Factory checked in at 2022-02-24 18:20:04 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/qqc2-desktop-style (Old) and /work/SRC/openSUSE:Factory/.qqc2-desktop-style.new.1958 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "qqc2-desktop-style" Thu Feb 24 18:20:04 2022 rev:55 rq:954294 version:5.91.0 Changes: -------- --- /work/SRC/openSUSE:Factory/qqc2-desktop-style/qqc2-desktop-style.changes 2022-01-11 21:20:13.256998976 +0100 +++ /work/SRC/openSUSE:Factory/.qqc2-desktop-style.new.1958/qqc2-desktop-style.changes 2022-02-24 18:22:41.194670592 +0100 @@ -1,0 +2,23 @@ +Sun Feb 6 10:17:20 UTC 2022 - Christophe Giboudeaux <christo...@krop.fr> + +- Update to 5.91.0 + * New feature release + * For more details please see: + * https://kde.org/announcements/frameworks/5/5.91.0 +- Changes since 5.90.0: + * Avoid needlessly reading font settings + * StyleItem: emit signal on style changes + * Add Linux Qt6 CI + * install plugins in kf<version> + * take icon width into account + * adapt width of combobox to its content (kde#403153) + * Theme placeholderTextColor + * Make menu items taller in Tablet Mode + * Fix find_package + * Remove QStyle::State_Horizontal when it's not horizontal + * Adapt build system for building against qt6 + * Slider: handle scrolling (kde#417211) + * Use upstream scroll implementations for Combobox and SpinBox + * Use metrics from Breeze for menu items (kde#447289) + +------------------------------------------------------------------- Old: ---- qqc2-desktop-style-5.90.0.tar.xz qqc2-desktop-style-5.90.0.tar.xz.sig New: ---- qqc2-desktop-style-5.91.0.tar.xz qqc2-desktop-style-5.91.0.tar.xz.sig ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ qqc2-desktop-style.spec ++++++ --- /var/tmp/diff_new_pack.SlVnSF/_old 2022-02-24 18:22:41.782670436 +0100 +++ /var/tmp/diff_new_pack.SlVnSF/_new 2022-02-24 18:22:41.790670433 +0100 @@ -16,11 +16,11 @@ # -%define _tar_path 5.90 +%define _tar_path 5.91 # Only needed for the package signature condition %bcond_without released Name: qqc2-desktop-style -Version: 5.90.0 +Version: 5.91.0 Release: 0 Summary: A Qt Quick Controls 2 Style for Desktop UIs License: GPL-2.0-or-later ++++++ qqc2-desktop-style-5.90.0.tar.xz -> qqc2-desktop-style-5.91.0.tar.xz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qqc2-desktop-style-5.90.0/.gitlab-ci.yml new/qqc2-desktop-style-5.91.0/.gitlab-ci.yml --- old/qqc2-desktop-style-5.90.0/.gitlab-ci.yml 2022-01-01 13:21:37.000000000 +0100 +++ new/qqc2-desktop-style-5.91.0/.gitlab-ci.yml 2022-02-05 16:19:51.000000000 +0100 @@ -4,3 +4,4 @@ include: - https://invent.kde.org/sysadmin/ci-utilities/raw/master/gitlab-templates/linux.yml - https://invent.kde.org/sysadmin/ci-utilities/raw/master/gitlab-templates/freebsd.yml + - https://invent.kde.org/sysadmin/ci-utilities/raw/master/gitlab-templates/linux-qt6.yml diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qqc2-desktop-style-5.90.0/CMakeLists.txt new/qqc2-desktop-style-5.91.0/CMakeLists.txt --- old/qqc2-desktop-style-5.90.0/CMakeLists.txt 2022-01-01 13:21:37.000000000 +0100 +++ new/qqc2-desktop-style-5.91.0/CMakeLists.txt 2022-02-05 16:19:51.000000000 +0100 @@ -1,7 +1,7 @@ cmake_minimum_required(VERSION 3.16) -set(KF_VERSION "5.90.0") # handled by release scripts -set(KF_DEP_VERSION "5.90.0") # handled by release scripts +set(KF_VERSION "5.91.0") # handled by release scripts +set(KF_DEP_VERSION "5.91.0") # handled by release scripts project(qqc2-desktop-style VERSION ${KF_VERSION}) @@ -21,7 +21,7 @@ ################# set KDE specific information ################# -find_package(ECM 5.90.0 REQUIRED NO_MODULE) +find_package(ECM 5.91.0 REQUIRED NO_MODULE) # where to look first for cmake modules, before ${CMAKE_ROOT}/Modules/ is checked set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${ECM_MODULE_PATH}) @@ -34,7 +34,7 @@ include(KDEGitCommitHooks) include(KDEFrameworkCompilerSettings NO_POLICY_SCOPE) -find_package(Qt5 ${REQUIRED_QT_VERSION} REQUIRED NO_MODULE COMPONENTS Core Quick Gui Widgets QuickControls2 DBus) +find_package(Qt${QT_MAJOR_VERSION} ${REQUIRED_QT_VERSION} REQUIRED NO_MODULE COMPONENTS Core Quick Gui Widgets QuickControls2 DBus) find_package(KF5 ${KF_DEP_VERSION} REQUIRED COMPONENTS Config Kirigami2) @@ -50,7 +50,9 @@ # to the linker, in that case, it requires to have the proper variables # to exists. if(X11_FOUND) - find_package(Qt5X11Extras ${REQUIRED_QT_VERSION} NO_MODULE QUIET) + if (QT_MAJOR_VERSION STREQUAL "5") + find_package(Qt5X11Extras ${REQUIRED_QT_VERSION} NO_MODULE) + endif() endif() set_package_properties(IconThemes PROPERTIES DESCRIPTION "KF5 IconThemes framework" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qqc2-desktop-style-5.90.0/kirigami-plasmadesktop-integration/CMakeLists.txt new/qqc2-desktop-style-5.91.0/kirigami-plasmadesktop-integration/CMakeLists.txt --- old/qqc2-desktop-style-5.90.0/kirigami-plasmadesktop-integration/CMakeLists.txt 2022-01-01 13:21:37.000000000 +0100 +++ new/qqc2-desktop-style-5.91.0/kirigami-plasmadesktop-integration/CMakeLists.txt 2022-02-05 16:19:51.000000000 +0100 @@ -11,15 +11,15 @@ target_link_libraries(org.kde.desktop PUBLIC - Qt5::Core + Qt${QT_MAJOR_VERSION}::Core KF5::Kirigami2 PRIVATE - Qt5::DBus - Qt5::Qml - Qt5::Quick + Qt${QT_MAJOR_VERSION}::DBus + Qt${QT_MAJOR_VERSION}::Qml + Qt${QT_MAJOR_VERSION}::Quick KF5::ConfigWidgets KF5::IconThemes ) -install(TARGETS org.kde.desktop DESTINATION ${KDE_INSTALL_PLUGINDIR}/kf5/kirigami) +install(TARGETS org.kde.desktop DESTINATION ${KDE_INSTALL_PLUGINDIR}/kf${QT_MAJOR_VERSION}/kirigami) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qqc2-desktop-style-5.90.0/kirigami-plasmadesktop-integration/kirigamiplasmafactory.h new/qqc2-desktop-style-5.91.0/kirigami-plasmadesktop-integration/kirigamiplasmafactory.h --- old/qqc2-desktop-style-5.90.0/kirigami-plasmadesktop-integration/kirigamiplasmafactory.h 2022-01-01 13:21:37.000000000 +0100 +++ new/qqc2-desktop-style-5.91.0/kirigami-plasmadesktop-integration/kirigamiplasmafactory.h 2022-02-05 16:19:51.000000000 +0100 @@ -7,7 +7,8 @@ #ifndef KIRIGAMIPLASMAFACTORY_H #define KIRIGAMIPLASMAFACTORY_H -#include <Kirigami2/KirigamiPluginFactory> +#include <Kirigami/KirigamiPluginFactory> + #include <QObject> class KirigamiPlasmaFactory : public Kirigami::KirigamiPluginFactoryV2 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qqc2-desktop-style-5.90.0/kirigami-plasmadesktop-integration/plasmadesktoptheme.cpp new/qqc2-desktop-style-5.91.0/kirigami-plasmadesktop-integration/plasmadesktoptheme.cpp --- old/qqc2-desktop-style-5.90.0/kirigami-plasmadesktop-integration/plasmadesktoptheme.cpp 2022-01-01 13:21:37.000000000 +0100 +++ new/qqc2-desktop-style-5.91.0/kirigami-plasmadesktop-integration/plasmadesktoptheme.cpp 2022-02-05 16:19:51.000000000 +0100 @@ -49,6 +49,7 @@ SLOT(notifyWatchersConfigurationChange())); connect(qGuiApp, &QGuiApplication::fontDatabaseChanged, this, &StyleSingleton::notifyWatchersConfigurationChange); + connect(qGuiApp, &QGuiApplication::fontChanged, this, &StyleSingleton::notifyWatchersConfigurationChange); // Use NativeTextRendering as the default text rendering type when the scale factor is an integer. // NativeTextRendering is still distorted sometimes with fractional scale factors, @@ -57,6 +58,26 @@ QQuickWindow::TextRenderType defaultTextRenderType = int(devicePixelRatio) == devicePixelRatio ? QQuickWindow::NativeTextRendering : QQuickWindow::QtTextRendering; QQuickWindow::setTextRenderType(defaultTextRenderType); + + smallFont = loadSmallFont(); + } + + QFont loadSmallFont() const + { + KSharedConfigPtr ptr = KSharedConfig::openConfig(); + KConfigGroup general(ptr->group("general")); + + return general.readEntry("smallestReadableFont", []() { + auto smallFont = qApp->font(); +#ifndef Q_OS_WIN + if (smallFont.pixelSize() != -1) { + smallFont.setPixelSize(smallFont.pixelSize() - 2); + } else { + smallFont.setPointSize(smallFont.pointSize() - 2); + } +#endif + return smallFont; + }()); } void refresh() @@ -143,13 +164,16 @@ Q_SLOT void notifyWatchersConfigurationChange() { + smallFont = loadSmallFont(); for (auto watcher : std::as_const(watchers)) { - watcher->syncFont(); + watcher->setSmallFont(smallFont); + watcher->setDefaultFont(qApp->font()); } } KColorScheme buttonScheme; KColorScheme viewScheme; + QFont smallFont; QVector<QPointer<PlasmaDesktopTheme>> watchers; @@ -171,7 +195,9 @@ (*s_style)->watchers.append(this); - syncFont(); + setDefaultFont(qGuiApp->font()); + setSmallFont((*s_style)->smallFont); + syncWindow(); syncColors(); } @@ -209,25 +235,6 @@ } } -void PlasmaDesktopTheme::syncFont() -{ - KSharedConfigPtr ptr = KSharedConfig::openConfig(); - KConfigGroup general(ptr->group("general")); - setSmallFont(general.readEntry("smallestReadableFont", []() { - auto smallFont = qApp->font(); -#ifndef Q_OS_WIN - if (smallFont.pixelSize() != -1) { - smallFont.setPixelSize(smallFont.pixelSize() - 2); - } else { - smallFont.setPointSize(smallFont.pointSize() - 2); - } -#endif - return smallFont; - }())); - - setDefaultFont(qGuiApp->font()); -} - QIcon PlasmaDesktopTheme::iconFromTheme(const QString &name, const QColor &customColor) { if (customColor != Qt::transparent) { @@ -287,7 +294,6 @@ bool PlasmaDesktopTheme::event(QEvent *event) { if (event->type() == Kirigami::PlatformThemeEvents::DataChangedEvent::type) { - syncFont(); syncColors(); } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qqc2-desktop-style-5.90.0/kirigami-plasmadesktop-integration/plasmadesktoptheme.h new/qqc2-desktop-style-5.91.0/kirigami-plasmadesktop-integration/plasmadesktoptheme.h --- old/qqc2-desktop-style-5.90.0/kirigami-plasmadesktop-integration/plasmadesktoptheme.h 2022-01-01 13:21:37.000000000 +0100 +++ new/qqc2-desktop-style-5.91.0/kirigami-plasmadesktop-integration/plasmadesktoptheme.h 2022-02-05 16:19:51.000000000 +0100 @@ -7,7 +7,8 @@ #ifndef KIRIGAMIPLASMATHEME_H #define KIRIGAMIPLASMATHEME_H -#include <Kirigami2/PlatformTheme> +#include <Kirigami/PlatformTheme> + #include <QColor> #include <QIcon> #include <QObject> @@ -34,9 +35,6 @@ protected: bool event(QEvent *event) override; -protected Q_SLOTS: - void syncFont(); - private: friend class StyleSingleton; QPointer<QWindow> m_window; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qqc2-desktop-style-5.90.0/kirigami-plasmadesktop-integration/plasmadesktopunits.h new/qqc2-desktop-style-5.91.0/kirigami-plasmadesktop-integration/plasmadesktopunits.h --- old/qqc2-desktop-style-5.90.0/kirigami-plasmadesktop-integration/plasmadesktopunits.h 2022-01-01 13:21:37.000000000 +0100 +++ new/qqc2-desktop-style-5.91.0/kirigami-plasmadesktop-integration/plasmadesktopunits.h 2022-02-05 16:19:51.000000000 +0100 @@ -9,7 +9,7 @@ #include <QObject> -#include <Units> +#include <Kirigami/Units> #include <KConfigWatcher> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qqc2-desktop-style-5.90.0/org.kde.desktop/ComboBox.qml new/qqc2-desktop-style-5.91.0/org.kde.desktop/ComboBox.qml --- old/qqc2-desktop-style-5.90.0/org.kde.desktop/ComboBox.qml 2022-01-01 13:21:37.000000000 +0100 +++ new/qqc2-desktop-style-5.91.0/org.kde.desktop/ComboBox.qml 2022-02-05 16:19:51.000000000 +0100 @@ -21,11 +21,13 @@ Kirigami.Theme.colorSet: typeof(editable) != "undefined" && editable ? Kirigami.Theme.View : Kirigami.Theme.Button Kirigami.Theme.inherit: false - implicitWidth: Math.max(200, background.implicitWidth + leftPadding + rightPadding) + implicitWidth: background.implicitWidth implicitHeight: background.implicitHeight baselineOffset: contentItem.y + contentItem.baselineOffset hoverEnabled: true + wheelEnabled: true + padding: 5 leftPadding: controlRoot.editable && controlRoot.mirrored ? 24 : padding rightPadding: controlRoot.editable && !controlRoot.mirrored ? 24 : padding @@ -41,6 +43,20 @@ indicator: Item {} + /* ensure that the combobox and its popup have enough width for all of its items + * TODO remove for KF6 because it is fixed by Qt6 */ + onCountChanged: { + let maxWidth = 75 + for (let i = 0; i < count; ++i) { + maxWidth = Math.max(maxWidth, fontMetrics.boundingRect(controlRoot.textAt(i)).width) + } + styleitem.contentWidth = maxWidth + } + + FontMetrics { + id: fontMetrics + } + contentItem: T.TextField { padding: 0 text: controlRoot.editable ? controlRoot.editText : controlRoot.displayText @@ -117,38 +133,11 @@ properties: { "editable" : control.editable } - - MouseArea { - property int wheelDelta: 0 - - anchors { - fill: parent - leftMargin: controlRoot.leftPadding - rightMargin: controlRoot.rightPadding - } - - acceptedButtons: Qt.NoButton - - onWheel: { - var delta = wheel.angleDelta.y || wheel.angleDelta.x - wheelDelta += delta; - // magic number 120 for common "one click" - // See: https://doc.qt.io/qt-5/qml-qtquick-wheelevent.html#angleDelta-prop - while (wheelDelta >= 120) { - wheelDelta -= 120; - controlRoot.decrementCurrentIndex(); - } - while (wheelDelta <= -120) { - wheelDelta += 120; - controlRoot.incrementCurrentIndex(); - } - } - } } popup: T.Popup { y: controlRoot.height - width: Math.max(controlRoot.width, 150) + width: controlRoot.width implicitHeight: contentItem.implicitHeight topMargin: 6 bottomMargin: 6 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qqc2-desktop-style-5.90.0/org.kde.desktop/Menu.qml new/qqc2-desktop-style-5.91.0/org.kde.desktop/Menu.qml --- old/qqc2-desktop-style-5.90.0/org.kde.desktop/Menu.qml 2022-01-01 13:21:37.000000000 +0100 +++ new/qqc2-desktop-style-5.91.0/org.kde.desktop/Menu.qml 2022-02-05 16:19:51.000000000 +0100 @@ -37,6 +37,9 @@ } return maxWidth; } + + spacing: 0 // Hardcoded to the Breeze theme value + interactive: ApplicationWindow.window ? contentHeight > ApplicationWindow.window.height : false clip: true currentIndex: control.currentIndex || 0 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qqc2-desktop-style-5.90.0/org.kde.desktop/MenuItem.qml new/qqc2-desktop-style-5.91.0/org.kde.desktop/MenuItem.qml --- old/qqc2-desktop-style-5.90.0/org.kde.desktop/MenuItem.qml 2022-01-01 13:21:37.000000000 +0100 +++ new/qqc2-desktop-style-5.91.0/org.kde.desktop/MenuItem.qml 2022-02-05 16:19:51.000000000 +0100 @@ -25,7 +25,7 @@ Layout.fillWidth: true padding: Kirigami.Units.smallSpacing - verticalPadding: Math.floor(Kirigami.Units.smallSpacing * 1.5) + verticalPadding: Kirigami.Settings.tabletMode ? 8 : 4 // Hardcoded to the Breeze theme value hoverEnabled: !Kirigami.Settings.isMobile Kirigami.MnemonicData.enabled: controlRoot.enabled && controlRoot.visible @@ -53,7 +53,7 @@ visible: (controlRoot.ListView.view && controlRoot.ListView.view.hasIcons) || (controlRoot.icon != undefined && (controlRoot.icon.name.length > 0 || controlRoot.icon.source.length > 0)) source: controlRoot.icon ? (controlRoot.icon.name || controlRoot.icon.source) : "" color: controlRoot.icon ? controlRoot.icon.color : "transparent" - Layout.preferredHeight: Math.max(Kirigami.Units.iconSizes.roundedIconSize(label.height), Kirigami.Units.iconSizes.small) + Layout.preferredHeight: Kirigami.Settings.tabletMode ? Kirigami.Units.iconSizes.smallMedium : Kirigami.Units.iconSizes.small Layout.preferredWidth: Layout.preferredHeight } Label { @@ -94,7 +94,7 @@ x: controlRoot.mirrored ? controlRoot.padding : controlRoot.width - width - controlRoot.padding y: controlRoot.topPadding + (controlRoot.availableHeight - height) / 2 source: controlRoot.mirrored ? "go-next-symbolic-rtl" : "go-next-symbolic" - width: Math.max(Kirigami.Units.iconSizes.roundedIconSize(label.height), Kirigami.Units.iconSizes.small) + width: Kirigami.Units.iconSizes.small height: width visible: controlRoot.subMenu } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qqc2-desktop-style-5.90.0/org.kde.desktop/Slider.qml new/qqc2-desktop-style-5.91.0/org.kde.desktop/Slider.qml --- old/qqc2-desktop-style-5.90.0/org.kde.desktop/Slider.qml 2022-01-01 13:21:37.000000000 +0100 +++ new/qqc2-desktop-style-5.91.0/org.kde.desktop/Slider.qml 2022-02-05 16:19:51.000000000 +0100 @@ -45,5 +45,39 @@ hasFocus: controlRoot.activeFocus hover: controlRoot.hovered activeControl: controlRoot.stepSize > 0 ? "ticks" : "" + + // `wheelEnabled: true` doesn't work since it doesn't snap to tickmarks, + // so we have to implement the scroll handling ourselves. See + // https://bugreports.qt.io/browse/QTBUG-93081 + MouseArea { + property int wheelDelta: 0 + + anchors { + fill: parent + leftMargin: controlRoot.leftPadding + rightMargin: controlRoot.rightPadding + } + + acceptedButtons: Qt.NoButton + + onWheel: { + const lastValue = controlRoot.value + const delta = wheel.angleDelta.y || wheel.angleDelta.x + wheelDelta += delta; + // magic number 120 for common "one click" + // See: https://doc.qt.io/qt-5/qml-qtquick-wheelevent.html#angleDelta-prop + while (wheelDelta >= 120) { + wheelDelta -= 120; + controlRoot.decrease(); + } + while (wheelDelta <= -120) { + wheelDelta += 120; + controlRoot.increase(); + } + if (lastValue !== controlRoot.value) { + controlRoot.moved(); + } + } + } } } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qqc2-desktop-style-5.90.0/org.kde.desktop/SpinBox.qml new/qqc2-desktop-style-5.91.0/org.kde.desktop/SpinBox.qml --- old/qqc2-desktop-style-5.90.0/org.kde.desktop/SpinBox.qml 2022-01-01 13:21:37.000000000 +0100 +++ new/qqc2-desktop-style-5.91.0/org.kde.desktop/SpinBox.qml 2022-02-05 16:19:51.000000000 +0100 @@ -29,6 +29,7 @@ hoverEnabled: true + wheelEnabled: true editable: true validator: IntValidator { @@ -68,34 +69,6 @@ // Work around Qt bug where NativeRendering breaks for non-integer scale factors // https://bugreports.qt.io/browse/QTBUG-67007 renderType: Screen.devicePixelRatio % 1 !== 0 ? Text.QtRendering : Text.NativeRendering - - MouseArea { - anchors.fill: parent - onPressed: mouse.accepted = false; - - property int wheelDelta: 0 - - onExited: wheelDelta = 0 - onWheel: { - wheelDelta += wheel.angleDelta.y; - // magic number 120 for common "one click" - // See: http://qt-project.org/doc/qt-5/qml-qtquick-wheelevent.html#angleDelta-prop - while (wheelDelta >= 120) { - wheelDelta -= 120; - controlRoot.increase(); - controlRoot.valueModified(); - } - while (wheelDelta <= -120) { - wheelDelta += 120; - controlRoot.decrease(); - controlRoot.valueModified(); - } - } - - // Normally the TextInput does this automatically, but the MouseArea on - // top of it blocks that behavior, so we need to explicitly do it here - cursorShape: Qt.IBeamCursor - } } up.indicator: Item { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qqc2-desktop-style-5.90.0/org.kde.desktop/TextField.qml new/qqc2-desktop-style-5.91.0/org.kde.desktop/TextField.qml --- old/qqc2-desktop-style-5.90.0/org.kde.desktop/TextField.qml 2022-01-01 13:21:37.000000000 +0100 +++ new/qqc2-desktop-style-5.91.0/org.kde.desktop/TextField.qml 2022-02-05 16:19:51.000000000 +0100 @@ -28,6 +28,7 @@ padding: 6 + placeholderTextColor: Kirigami.Theme.disabledTextColor color: controlRoot.enabled ? Kirigami.Theme.textColor : Kirigami.Theme.disabledTextColor selectionColor: Kirigami.Theme.highlightColor selectedTextColor: Kirigami.Theme.highlightedTextColor @@ -100,7 +101,7 @@ text: controlRoot.placeholderText font: controlRoot.font - color: Kirigami.Theme.disabledTextColor + color: controlRoot.placeholderTextColor horizontalAlignment: controlRoot.horizontalAlignment verticalAlignment: controlRoot.verticalAlignment visible: !controlRoot.length && !controlRoot.preeditText && (!controlRoot.activeFocus || controlRoot.horizontalAlignment !== Qt.AlignHCenter) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qqc2-desktop-style-5.90.0/plugin/CMakeLists.txt new/qqc2-desktop-style-5.91.0/plugin/CMakeLists.txt --- old/qqc2-desktop-style-5.90.0/plugin/CMakeLists.txt 2022-01-01 13:21:37.000000000 +0100 +++ new/qqc2-desktop-style-5.91.0/plugin/CMakeLists.txt 2022-02-05 16:19:51.000000000 +0100 @@ -16,7 +16,7 @@ endif() add_library(qqc2desktopstyleplugin SHARED ${qqc2desktopstyle_SRCS}) -target_link_libraries(qqc2desktopstyleplugin Qt5::Core Qt5::Qml Qt5::Quick Qt5::Gui Qt5::Widgets KF5::ConfigCore KF5::Kirigami2) +target_link_libraries(qqc2desktopstyleplugin Qt${QT_MAJOR_VERSION}::Core Qt${QT_MAJOR_VERSION}::Qml Qt${QT_MAJOR_VERSION}::Quick Qt${QT_MAJOR_VERSION}::Gui Qt${QT_MAJOR_VERSION}::Widgets KF5::ConfigCore KF5::Kirigami2) if(KF5ConfigWidgets_FOUND) target_link_libraries(qqc2desktopstyleplugin diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qqc2-desktop-style-5.90.0/plugin/kquickstyleitem.cpp new/qqc2-desktop-style-5.91.0/plugin/kquickstyleitem.cpp --- old/qqc2-desktop-style-5.90.0/plugin/kquickstyleitem.cpp 2022-01-01 13:21:37.000000000 +0100 +++ new/qqc2-desktop-style-5.91.0/plugin/kquickstyleitem.cpp 2022-02-05 16:19:51.000000000 +0100 @@ -23,7 +23,7 @@ #include <KConfigGroup> #include <ksharedconfig.h> -#include <Kirigami2/PlatformTheme> +#include <Kirigami/PlatformTheme> QStyle *KQuickStyleItem::s_style = nullptr; @@ -486,7 +486,11 @@ QString shortcut = m_properties[QStringLiteral("shortcut")].toString(); if (!shortcut.isEmpty()) { opt->text += QLatin1Char('\t') + shortcut; +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) opt->tabWidth = qMax(opt->tabWidth, qRound(textWidth(shortcut))); +#else + opt->reservedShortcutWidth = qMax(opt->reservedShortcutWidth, qRound(textWidth(shortcut))); +#endif } if (m_properties[QStringLiteral("checkable")].toBool()) { @@ -646,7 +650,11 @@ } QStyleOptionProgressBar *opt = qstyleoption_cast<QStyleOptionProgressBar *>(m_styleoption); - opt->orientation = horizontal() ? Qt::Horizontal : Qt::Vertical; + if (horizontal()) { + opt->state |= QStyle::State_Horizontal; + } else { + opt->state &= ~QStyle::State_Horizontal; + } opt->minimum = qMax(0, minimum()); opt->maximum = qMax(0, maximum()); opt->progress = value(); @@ -1071,9 +1079,9 @@ break; } case ComboBox: { - QStyleOptionComboBox *btn = qstyleoption_cast<QStyleOptionComboBox *>(m_styleoption); - int newWidth = qMax(width, btn->fontMetrics.boundingRect(btn->currentText).width()); - int newHeight = qMax(height, btn->fontMetrics.height()); + QStyleOptionComboBox *opt = qstyleoption_cast<QStyleOptionComboBox *>(m_styleoption); + int newWidth = qMax(width, m_contentWidth) + (opt->currentIcon.isNull() ? 0 : opt->iconSize.width()); + int newHeight = qMax(height, opt->fontMetrics.height()); size = KQuickStyleItem::style()->sizeFromContents(QStyle::CT_ComboBox, m_styleoption, QSize(newWidth, newHeight)); break; } @@ -1920,6 +1928,7 @@ updateSizeHint(); updateItem(); + Q_EMIT styleNameChanged(); } QPixmap QQuickTableRowImageProvider1::requestPixmap(const QString &id, QSize *size, const QSize &requestedSize)