Hello community, here is the log from the commit of package qqc2-desktop-style for openSUSE:Factory checked in at 2018-01-22 16:04:40 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/qqc2-desktop-style (Old) and /work/SRC/openSUSE:Factory/.qqc2-desktop-style.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "qqc2-desktop-style" Mon Jan 22 16:04:40 2018 rev:5 rq:566720 version:5.42.0 Changes: -------- --- /work/SRC/openSUSE:Factory/qqc2-desktop-style/qqc2-desktop-style.changes 2018-01-10 23:33:05.721858818 +0100 +++ /work/SRC/openSUSE:Factory/.qqc2-desktop-style.new/qqc2-desktop-style.changes 2018-01-22 16:05:01.715800457 +0100 @@ -1,0 +2,13 @@ +Tue Jan 16 22:50:24 CET 2018 - lbeltr...@kde.org + +- Update to 5.42.0 + * New feature release + * For more details please see: + * https://www.kde.org/announcements/kde-frameworks-5.42.0.php +- Changes since 5.41.0: + * simplify and don't try to block mouse events + * if no wheel.pixelDelta, use global wheel scroll lines + * desktop tabbars have different widths for each tab + * ensure a non 0 size hint + +------------------------------------------------------------------- Old: ---- qqc2-desktop-style-5.41.0.tar.xz New: ---- qqc2-desktop-style-5.42.0.tar.xz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ qqc2-desktop-style.spec ++++++ --- /var/tmp/diff_new_pack.j1xnqZ/_old 2018-01-22 16:05:02.311772570 +0100 +++ /var/tmp/diff_new_pack.j1xnqZ/_new 2018-01-22 16:05:02.311772570 +0100 @@ -1,7 +1,7 @@ # # spec file for package qqc2-desktop-style # -# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -16,9 +16,9 @@ # -%define _tar_path 5.41 +%define _tar_path 5.42 Name: qqc2-desktop-style -Version: 5.41.0 +Version: 5.42.0 Release: 0 Summary: A Qt Quick Controls 2 Style for Desktop UIs License: GPL-2.0+ ++++++ qqc2-desktop-style-5.41.0.tar.xz -> qqc2-desktop-style-5.42.0.tar.xz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qqc2-desktop-style-5.41.0/CMakeLists.txt new/qqc2-desktop-style-5.42.0/CMakeLists.txt --- old/qqc2-desktop-style-5.41.0/CMakeLists.txt 2017-12-02 11:22:43.000000000 +0100 +++ new/qqc2-desktop-style-5.42.0/CMakeLists.txt 2018-01-06 00:42:43.000000000 +0100 @@ -1,7 +1,7 @@ cmake_minimum_required(VERSION 3.0) -set(KF5_VERSION "5.41.0") # handled by release scripts -set(KF5_DEP_VERSION "5.41.0") # handled by release scripts +set(KF5_VERSION "5.42.0") # handled by release scripts +set(KF5_DEP_VERSION "5.42.0") # handled by release scripts project(qqc2-desktop-style VERSION ${KF5_VERSION}) @@ -21,7 +21,7 @@ ################# set KDE specific information ################# -find_package(ECM 5.41.0 REQUIRED NO_MODULE) +find_package(ECM 5.42.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} ${ECM_KDE_MODULE_DIR}) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qqc2-desktop-style-5.41.0/org.kde.desktop/ScrollView.qml new/qqc2-desktop-style-5.42.0/org.kde.desktop/ScrollView.qml --- old/qqc2-desktop-style-5.41.0/org.kde.desktop/ScrollView.qml 2017-12-02 11:22:43.000000000 +0100 +++ new/qqc2-desktop-style-5.42.0/org.kde.desktop/ScrollView.qml 2018-01-06 00:42:43.000000000 +0100 @@ -58,34 +58,46 @@ MouseArea { id: scrollHelper anchors.fill: parent - drag.filterChildren: !isMobile + drag.filterChildren: !Kirigami.Settings.isMobile property bool isMobile: !verticalScrollBar.interactive onIsMobileChanged: { flickableItem.boundsBehavior = scrollHelper.isMobile ? Flickable.DragAndOvershootBounds : Flickable.StopAtBounds; - flickableItem.interactive = scrollHelper.isMobile; } property Flickable flickableItem onFlickableItemChanged: { flickableItem.parent = scrollHelper; - flickableItem.boundsBehavior = Qt.binding(function() { return scrollHelper.isMobile ? Flickable.DragAndOvershootBounds : Flickable.StopAtBounds; }); - flickableItem.interactive = Qt.binding(function() { return scrollHelper.isMobile; }); + flickableItem.boundsBehavior = scrollHelper.isMobile ? Flickable.DragAndOvershootBounds : Flickable.StopAtBounds; flickableItem.anchors.fill = scrollHelper; //don't make the scrolling items overlap the background borders. flickableItem.anchors.margins = Qt.binding(function() { return controlRoot.background && controlRoot.background.visible ? 2 : 0; }); flickableItem.clip = true; + flickableItem.interactive = Kirigami.Settings.isMobile + } + onPressed: { + mouse.accepted = false; + flickableItem.interactive = true; + } + onPositionChanged: { + mouse.accepted = false; + } + onReleased: { + mouse.accepted = false; + flickableItem.interactive = false; } onWheel: { if (isMobile || flickableItem.contentHeight < flickableItem.height) { return; } - //TODO: use kirigami for this more granular control - /* var sampleItem = flickableItem.itemAt ? flickableItem.itemAt(0,flickableItem.contentY) : null; - var step = Math.min((sampleItem ? sampleItem.height : (Units.gridUnit + Units.smallSpacing * 2)) * Units.wheelScrollLines, Units.gridUnit * 8); - //TODO: config of how many lines the wheel scrolls - var y = wheel.pixelDelta.y != 0 ? wheel.pixelDelta.y : (wheel.angleDelta.y > 0 ? step : -step)*/ + + flickableItem.interactive = false; var y = wheel.pixelDelta.y != 0 ? wheel.pixelDelta.y : wheel.angleDelta.y / 8 + //if we don't have a pixeldelta, apply the configured mouse wheel lines + if (!wheel.pixelDelta.y) { + y *= Kirigami.Settings.mouseWheelScrollLines; + } + var minYExtent = flickableItem.topMargin - flickableItem.originY; var maxYExtent = flickableItem.height - (flickableItem.contentHeight + flickableItem.bottomMargin + flickableItem.originY); @@ -93,13 +105,15 @@ //this is just for making the scrollbar appear flickableItem.flick(0, 0); - cancelFlickStateTimer.restart(); + flickableItem.cancelFlick(); } - Timer { - id: cancelFlickStateTimer - interval: 150 - onTriggered: scrollHelper.flickableItem.cancelFlick() + + Connections { + target: scrollHelper.flickableItem + onFlickEnded: scrollHelper.flickableItem.interactive = false; + onMovementEnded: scrollHelper.flickableItem.interactive = false; } + /*create a background only after Component.onCompleted because: * implementations can set their own background in a declarative way * ScrollView {background.visible: true} must *not* work, becasue all upstream styles don't have a background so applications using this would break with other styles diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qqc2-desktop-style-5.41.0/org.kde.desktop/TabBar.qml new/qqc2-desktop-style-5.42.0/org.kde.desktop/TabBar.qml --- old/qqc2-desktop-style-5.41.0/org.kde.desktop/TabBar.qml 2017-12-02 11:22:43.000000000 +0100 +++ new/qqc2-desktop-style-5.42.0/org.kde.desktop/TabBar.qml 2018-01-06 00:42:43.000000000 +0100 @@ -37,7 +37,7 @@ spacing: 0 contentItem: ListView { - implicitWidth: controlRoot.contentModel.get(0).implicitWidth * count + implicitWidth: contentWidth implicitHeight: controlRoot.contentModel.get(0).height model: controlRoot.contentModel diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qqc2-desktop-style-5.41.0/org.kde.desktop/TabButton.qml new/qqc2-desktop-style-5.42.0/org.kde.desktop/TabButton.qml --- old/qqc2-desktop-style-5.41.0/org.kde.desktop/TabButton.qml 2017-12-02 11:22:43.000000000 +0100 +++ new/qqc2-desktop-style-5.42.0/org.kde.desktop/TabButton.qml 2018-01-06 00:42:43.000000000 +0100 @@ -26,14 +26,19 @@ import QtQuick.Controls @QQC2_VERSION@ import org.kde.qqc2desktopstyle.private 1.0 as StylePrivate import QtQuick.Templates @QQC2_VERSION@ as T +import org.kde.kirigami 2.2 as Kirigami T.TabButton { id: controlRoot - implicitWidth: styleitem.implicitWidth - implicitHeight: styleitem.implicitHeight + //Some qstyles like fusion don't have correct pixel metrics here and just return 0 + implicitWidth: Math.max(styleitem.implicitWidth, textMetrics.width + Kirigami.Units.gridUnit * 2) + implicitHeight: styleitem.implicitHeight || Kirigami.Units.gridUnit * 2 baselineOffset: contentItem.y + contentItem.baselineOffset + //This width: is important to make the tabbar internals not assume + //all tabs have the same width + width: implicitWidth padding: 0 hoverEnabled: true @@ -43,6 +48,20 @@ background: StylePrivate.StyleItem { id: styleitem + TextMetrics { + id: textMetrics + font.capitalization: Kirigami.Theme.defaultFont.capitalization + font.family: Kirigami.Theme.defaultFont.family + font.italic: Kirigami.Theme.defaultFont.italic + font.letterSpacing: Kirigami.Theme.defaultFont.letterSpacing + font.pointSize: Kirigami.Theme.defaultFont.pointSize + font.strikeout: Kirigami.Theme.defaultFont.strikeout + font.underline: Kirigami.Theme.defaultFont.underline + font.weight: Kirigami.Theme.defaultFont.weight + font.wordSpacing: Kirigami.Theme.defaultFont.wordSpacing + text: controlRoot.text + } + control: controlRoot anchors.fill: parent elementType: "tab"