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-09-13 15:09:26 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/qqc2-desktop-style (Old) and /work/SRC/openSUSE:Factory/.qqc2-desktop-style.new.2083 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "qqc2-desktop-style" Tue Sep 13 15:09:26 2022 rev:62 rq:1002870 version:5.98.0 Changes: -------- --- /work/SRC/openSUSE:Factory/qqc2-desktop-style/qqc2-desktop-style.changes 2022-08-15 20:00:02.897365945 +0200 +++ /work/SRC/openSUSE:Factory/.qqc2-desktop-style.new.2083/qqc2-desktop-style.changes 2022-09-13 15:10:56.924906060 +0200 @@ -1,0 +2,13 @@ +Tue Sep 6 07:17:29 UTC 2022 - Christophe Giboudeaux <christo...@krop.fr> + +- Update to 5.98.0 + * New feature release + * For more details please see: + * https://kde.org/announcements/frameworks/5/5.98.0 +- Changes since 5.97.0: + * Explicit binding for visible (kde#458486) + * Make DelayButton look like Spectacle's ProgressButton + * Add FreeBSD Qt6 CI support + * Add FIXME about ToolTip instances with child items that use anchors + +------------------------------------------------------------------- Old: ---- qqc2-desktop-style-5.97.0.tar.xz qqc2-desktop-style-5.97.0.tar.xz.sig New: ---- qqc2-desktop-style-5.98.0.tar.xz qqc2-desktop-style-5.98.0.tar.xz.sig ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ qqc2-desktop-style.spec ++++++ --- /var/tmp/diff_new_pack.CJKhuq/_old 2022-09-13 15:10:57.416907445 +0200 +++ /var/tmp/diff_new_pack.CJKhuq/_new 2022-09-13 15:10:57.428907479 +0200 @@ -16,11 +16,11 @@ # -%define _tar_path 5.97 +%define _tar_path 5.98 # Only needed for the package signature condition %bcond_without released Name: qqc2-desktop-style -Version: 5.97.0 +Version: 5.98.0 Release: 0 Summary: A Qt Quick Controls 2 Style for Desktop UIs License: GPL-2.0-or-later ++++++ qqc2-desktop-style-5.97.0.tar.xz -> qqc2-desktop-style-5.98.0.tar.xz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qqc2-desktop-style-5.97.0/.gitlab-ci.yml new/qqc2-desktop-style-5.98.0/.gitlab-ci.yml --- old/qqc2-desktop-style-5.97.0/.gitlab-ci.yml 2022-08-07 14:24:51.000000000 +0200 +++ new/qqc2-desktop-style-5.98.0/.gitlab-ci.yml 2022-09-05 11:33:03.000000000 +0200 @@ -6,3 +6,4 @@ - 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 - https://invent.kde.org/sysadmin/ci-utilities/raw/master/gitlab-templates/windows.yml + - https://invent.kde.org/sysadmin/ci-utilities/raw/master/gitlab-templates/freebsd-qt6.yml diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qqc2-desktop-style-5.97.0/CMakeLists.txt new/qqc2-desktop-style-5.98.0/CMakeLists.txt --- old/qqc2-desktop-style-5.97.0/CMakeLists.txt 2022-08-07 14:24:51.000000000 +0200 +++ new/qqc2-desktop-style-5.98.0/CMakeLists.txt 2022-09-05 11:33:03.000000000 +0200 @@ -1,7 +1,7 @@ cmake_minimum_required(VERSION 3.16) -set(KF_VERSION "5.97.0") # handled by release scripts -set(KF_DEP_VERSION "5.97.0") # handled by release scripts +set(KF_VERSION "5.98.0") # handled by release scripts +set(KF_DEP_VERSION "5.98.0") # handled by release scripts project(qqc2-desktop-style VERSION ${KF_VERSION}) @@ -21,7 +21,7 @@ ################# set KDE specific information ################# -find_package(ECM 5.97.0 REQUIRED NO_MODULE) +find_package(ECM 5.98.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}) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qqc2-desktop-style-5.97.0/org.kde.desktop/DelayButton.qml new/qqc2-desktop-style-5.98.0/org.kde.desktop/DelayButton.qml --- old/qqc2-desktop-style-5.97.0/org.kde.desktop/DelayButton.qml 2022-08-07 14:24:51.000000000 +0200 +++ new/qqc2-desktop-style-5.98.0/org.kde.desktop/DelayButton.qml 2022-09-05 11:33:03.000000000 +0200 @@ -13,46 +13,62 @@ T.DelayButton { id: controlRoot + implicitWidth: Math.max((text && display !== T.AbstractButton.IconOnly ? + implicitBackgroundWidth : implicitHeight) + leftInset + rightInset, + implicitContentWidth + leftPadding + rightPadding) + implicitHeight: Math.max(implicitBackgroundHeight + topInset + bottomInset, + implicitContentHeight + topPadding + bottomPadding) + + hoverEnabled: Qt.styleHints.useHoverEffects + + Kirigami.MnemonicData.enabled: controlRoot.enabled && controlRoot.visible + Kirigami.MnemonicData.controlType: Kirigami.MnemonicData.ActionElement + Kirigami.MnemonicData.label: controlRoot.display !== T.AbstractButton.IconOnly ? controlRoot.text : "" + Shortcut { + //in case of explicit & the button manages it by itself + enabled: !(RegExp(/\&[^\&]/).test(controlRoot.text)) + sequence: controlRoot.Kirigami.MnemonicData.sequence + onActivated: controlRoot.clicked() + } + Kirigami.Theme.colorSet: Kirigami.Theme.Button Kirigami.Theme.inherit: false - implicitWidth: background.implicitWidth - implicitHeight: background.implicitHeight - - hoverEnabled: !Kirigami.Settings.isMobile - transition: Transition { NumberAnimation { duration: controlRoot.delay * (controlRoot.pressed ? 1.0 - controlRoot.progress : 0.3 * controlRoot.progress) } } - contentItem: Item {} background: StylePrivate.StyleItem { control: controlRoot - elementType: "button" - sunken: controlRoot.down || controlRoot.checked - raised: !(controlRoot.down || controlRoot.checked) + elementType: "delaybutton" + sunken: controlRoot.down + on: controlRoot.checkable && controlRoot.checked hover: controlRoot.hovered - text: controlRoot.text - hasFocus: controlRoot.activeFocus - activeControl: controlRoot.Accessible.defaultButton ? "default" : "" - - StylePrivate.StyleItem { - anchors { - left: parent.left - right: parent.right - bottom: parent.bottom - margins: 3 + text: controlRoot.Kirigami.MnemonicData.mnemonicLabel + hasFocus: controlRoot.visualFocus || (!controlRoot.flat && controlRoot.pressed) + flat: false + minimum: 0 + maximum: 1000 + value: controlRoot.progress * maximum + + readonly property int toolButtonStyle: { + switch (controlRoot.display) { + case T.ToolButton.IconOnly: return Qt.ToolButtonIconOnly; + case T.ToolButton.TextOnly: return Qt.ToolButtonTextOnly; + case T.ToolButton.TextBesideIcon: return Qt.ToolButtonTextBesideIcon; + case T.ToolButton.TextUnderIcon: return Qt.ToolButtonTextUnderIcon; + default: return Qt.ToolButtonFollowStyle; } - elementType: "progressbar" + } - control: controlRoot - maximum: 100 - minimum: 0 - value: controlRoot.progress * 100 - horizontal: true - enabled: controlRoot.enabled + properties: { + "icon": controlRoot.icon.name || controlRoot.icon.source, + "iconColor": controlRoot.icon.color, + "iconWidth": controlRoot.icon.width, + "iconHeight": controlRoot.icon.height, + "toolButtonStyle": toolButtonStyle, } } } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qqc2-desktop-style-5.97.0/org.kde.desktop/ScrollBar.qml new/qqc2-desktop-style-5.98.0/org.kde.desktop/ScrollBar.qml --- old/qqc2-desktop-style-5.97.0/org.kde.desktop/ScrollBar.qml 2022-08-07 14:24:51.000000000 +0200 +++ new/qqc2-desktop-style-5.98.0/org.kde.desktop/ScrollBar.qml 2022-09-05 11:33:03.000000000 +0200 @@ -6,7 +6,8 @@ */ -import QtQuick 2.6 +import QtQuick 2.15 +import QtQml 2.15 import org.kde.qqc2desktopstyle.private 1.0 as StylePrivate import QtQuick.Templates 2.15 as T import org.kde.kirigami 2.11 as Kirigami @@ -19,10 +20,15 @@ hoverEnabled: true - visible: controlRoot.size < 1.0 && controlRoot.policy !== T.ScrollBar.AlwaysOff stepSize: 0.02 interactive: !Kirigami.Settings.hasTransientTouchInput + // Workaround for https://bugreports.qt.io/browse/QTBUG-106118 + Binding on visible { + delayed: true + restoreMode: Binding.RestoreBindingOrValue + value: controlRoot.size < 1.0 && controlRoot.policy !== T.ScrollBar.AlwaysOff && controlRoot.parent !== null + } topPadding: style.topScrollbarPadding leftPadding: style.leftScrollbarPadding rightPadding: style.rightScrollbarPadding diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qqc2-desktop-style-5.97.0/org.kde.desktop/ToolTip.qml new/qqc2-desktop-style-5.98.0/org.kde.desktop/ToolTip.qml --- old/qqc2-desktop-style-5.97.0/org.kde.desktop/ToolTip.qml 2022-08-07 14:24:51.000000000 +0200 +++ new/qqc2-desktop-style-5.98.0/org.kde.desktop/ToolTip.qml 2022-09-05 11:33:03.000000000 +0200 @@ -39,6 +39,8 @@ closePolicy: T.Popup.CloseOnEscape | T.Popup.CloseOnPressOutsideParent | T.Popup.CloseOnReleaseOutsideParent + // FIXME: use a top-level Item here so that ToolTip instances with child + // items can safely use anchors contentItem: RowLayout { Controls.Label { // Strip out ampersands right before non-whitespace characters, i.e. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qqc2-desktop-style-5.97.0/plugin/kquickstyleitem.cpp new/qqc2-desktop-style-5.98.0/plugin/kquickstyleitem.cpp --- old/qqc2-desktop-style-5.97.0/plugin/kquickstyleitem.cpp 2022-08-07 14:24:51.000000000 +0200 +++ new/qqc2-desktop-style-5.98.0/plugin/kquickstyleitem.cpp 2022-09-05 11:33:03.000000000 +0200 @@ -1,9 +1,8 @@ /* + SPDX-FileCopyrightText: 2016 The Qt Company Ltd. <https://www.qt.io/licensing/> SPDX-FileCopyrightText: 2017 Marco Martin <m...@kde.org> SPDX-FileCopyrightText: 2017 David Edmundson <davidedmund...@kde.org> - SPDX-FileCopyrightText: 2016 The Qt Company Ltd. <https://www.qt.io/licensing/> - - This file is part of the Qt Quick Controls module of the Qt Toolkit. + SPDX-FileCopyrightText: 2019 David Redondo <da...@david-redondo.de> SPDX-License-Identifier: LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KFQF-Accepted-GPL OR LicenseRef-Qt-Commercial */ @@ -296,6 +295,7 @@ opt->fontMetrics = QFontMetrics(font); break; } + case DelayButton: case ToolButton: { if (!m_styleoption) { m_styleoption = new QStyleOptionToolButton(); @@ -824,6 +824,7 @@ return "QComboMenuItem"; case ToolBar: return ""; + case DelayButton: case ToolButton: return "QToolButton"; case Tab: @@ -1030,6 +1031,7 @@ case ToolBar: size = QSize(200, styleName().contains(QLatin1String("windows")) ? 30 : 42); break; + case DelayButton: case ToolButton: { QStyleOptionToolButton *btn = qstyleoption_cast<QStyleOptionToolButton *>(m_styleoption); int w = 0; @@ -1470,6 +1472,8 @@ m_itemType = MenuBar; } else if (str == QLatin1String("menubaritem")) { m_itemType = MenuBarItem; + } else if (str == QLatin1String("delaybutton")) { + m_itemType = DelayButton; } else { m_itemType = Undefined; } @@ -1754,6 +1758,30 @@ } break; } + case DelayButton: { // Adapted from Spectacle's ProgressButton made by David Redondo. + // Draw Button without text and icon, note the missing text and icon in options + QStyleOption baseStyleOptions = *m_styleoption; + baseStyleOptions.state.setFlag(QStyle::State_Enabled, !baseStyleOptions.state.testFlag(QStyle::State_Sunken)); + KQuickStyleItem::style()->drawPrimitive(QStyle::PE_PanelButtonTool, &baseStyleOptions, painter); + qreal progress = qreal(value()) / qreal(maximum()); + if (!qFuzzyIsNull(progress)) { + // Draw overlay + QStyleOption overlayOption; + overlayOption.palette = m_styleoption->palette; + overlayOption.palette.setBrush(QPalette::Button, m_styleoption->palette.highlight()); + overlayOption.rect = m_styleoption->direction == Qt::LeftToRight ? + QRect(0, 0, m_styleoption->rect.width() * progress, m_styleoption->rect.height()) + : QRect(QPoint(m_styleoption->rect.width() * (1 - progress), 0), m_styleoption->rect.size()); + overlayOption.state.setFlag(QStyle::State_Sunken, m_styleoption->state.testFlag(QStyle::State_Sunken)); + painter->setCompositionMode(QPainter::CompositionMode_SourceAtop); + painter->setOpacity(0.5); + KQuickStyleItem::style()->drawPrimitive(QStyle::PE_PanelButtonTool, &overlayOption, painter); + } + // Finally draw text and icon and outline + painter->setOpacity(1); + KQuickStyleItem::style()->drawControl(QStyle::CE_ToolButtonLabel, m_styleoption, painter); + break; + } default: break; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qqc2-desktop-style-5.97.0/plugin/kquickstyleitem_p.h new/qqc2-desktop-style-5.98.0/plugin/kquickstyleitem_p.h --- old/qqc2-desktop-style-5.97.0/plugin/kquickstyleitem_p.h 2022-08-07 14:24:51.000000000 +0200 +++ new/qqc2-desktop-style-5.98.0/plugin/kquickstyleitem_p.h 2022-09-05 11:33:03.000000000 +0200 @@ -131,6 +131,7 @@ MacHelpButton, MenuBar, MenuBarItem, + DelayButton, }; void paint(QPainter *);