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"


Reply via email to