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 2021-11-15 15:25:54
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/qqc2-desktop-style (Old)
 and      /work/SRC/openSUSE:Factory/.qqc2-desktop-style.new.1890 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "qqc2-desktop-style"

Mon Nov 15 15:25:54 2021 rev:52 rq:931128 version:5.88.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/qqc2-desktop-style/qqc2-desktop-style.changes    
2021-10-18 22:01:17.706054634 +0200
+++ 
/work/SRC/openSUSE:Factory/.qqc2-desktop-style.new.1890/qqc2-desktop-style.changes
  2021-11-15 15:27:22.165839782 +0100
@@ -1,0 +2,15 @@
+Sun Nov  7 09:13:42 UTC 2021 - Christophe Giboudeaux <christo...@krop.fr>
+
+- Strip 'Source' URL for faster submissions
+
+-------------------------------------------------------------------
+Sun Nov  7 09:08:30 UTC 2021 - Christophe Giboudeaux <christo...@krop.fr>
+
+- Update to 5.88.0
+  * New feature release
+  * For more details please see:
+  * https://kde.org/announcements/frameworks/5/5.88.0
+- Too many changes since 5.87.0, only listing bugfixes:
+  * Don't change MenuItem's arrow's color when selected (kde#443453)
+
+-------------------------------------------------------------------

Old:
----
  qqc2-desktop-style-5.87.0.tar.xz
  qqc2-desktop-style-5.87.0.tar.xz.sig

New:
----
  qqc2-desktop-style-5.88.0.tar.xz
  qqc2-desktop-style-5.88.0.tar.xz.sig

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ qqc2-desktop-style.spec ++++++
--- /var/tmp/diff_new_pack.JXj3dy/_old  2021-11-15 15:27:22.553839890 +0100
+++ /var/tmp/diff_new_pack.JXj3dy/_new  2021-11-15 15:27:22.557839891 +0100
@@ -16,19 +16,19 @@
 #
 
 
-%define _tar_path 5.87
+%define _tar_path 5.88
 # Only needed for the package signature condition
 %bcond_without lang
 Name:           qqc2-desktop-style
-Version:        5.87.0
+Version:        5.88.0
 Release:        0
 Summary:        A Qt Quick Controls 2 Style for Desktop UIs
 License:        GPL-2.0-or-later
 Group:          Development/Libraries/KDE
 URL:            https://www.kde.org
-Source:         
https://download.kde.org/stable/frameworks/%{_tar_path}/qqc2-desktop-style-%{version}.tar.xz
+Source:         qqc2-desktop-style-%{version}.tar.xz
 %if %{with lang}
-Source1:        
https://download.kde.org/stable/frameworks/%{_tar_path}/qqc2-desktop-style-%{version}.tar.xz.sig
+Source1:        qqc2-desktop-style-%{version}.tar.xz.sig
 Source2:        frameworks.keyring
 %endif
 BuildRequires:  extra-cmake-modules


++++++ qqc2-desktop-style-5.87.0.tar.xz -> qqc2-desktop-style-5.88.0.tar.xz 
++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qqc2-desktop-style-5.87.0/.gitlab-ci.yml 
new/qqc2-desktop-style-5.88.0/.gitlab-ci.yml
--- old/qqc2-desktop-style-5.87.0/.gitlab-ci.yml        2021-10-02 
14:24:05.000000000 +0200
+++ new/qqc2-desktop-style-5.88.0/.gitlab-ci.yml        2021-11-05 
15:32:42.000000000 +0100
@@ -3,3 +3,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
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qqc2-desktop-style-5.87.0/.kde-ci.yml 
new/qqc2-desktop-style-5.88.0/.kde-ci.yml
--- old/qqc2-desktop-style-5.87.0/.kde-ci.yml   2021-10-02 14:24:05.000000000 
+0200
+++ new/qqc2-desktop-style-5.88.0/.kde-ci.yml   2021-11-05 15:32:42.000000000 
+0100
@@ -5,6 +5,7 @@
     'frameworks/kirigami' : '@same'
     'frameworks/kiconthemes' : '@same'
     'frameworks/kconfigwidgets' : '@same'
+    'frameworks/sonnet' : '@same'
 
 Options:
   test-before-installing: True
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qqc2-desktop-style-5.87.0/CMakeLists.txt 
new/qqc2-desktop-style-5.88.0/CMakeLists.txt
--- old/qqc2-desktop-style-5.87.0/CMakeLists.txt        2021-10-02 
14:24:05.000000000 +0200
+++ new/qqc2-desktop-style-5.88.0/CMakeLists.txt        2021-11-05 
15:32:42.000000000 +0100
@@ -1,6 +1,6 @@
 cmake_minimum_required(VERSION 3.16)
 
-set(KF_VERSION "5.87.0") # handled by release scripts
+set(KF_VERSION "5.88.0") # handled by release scripts
 set(KF_DEP_VERSION "5.87.0") # handled by release scripts
 
 project(qqc2-desktop-style VERSION ${KF_VERSION})
@@ -28,6 +28,7 @@
 
 include(ECMSetupVersion)
 include(ECMGenerateHeaders)
+include(ECMQMLModules)
 include(KDEInstallDirs)
 include(KDECMakeSettings)
 include(KDEGitCommitHooks)
@@ -95,6 +96,8 @@
   PATH_VARS  CMAKE_INSTALL_PREFIX
 )
 
+ecm_find_qmlmodule(org.kde.sonnet 1.0)
+
 install(FILES
   "${CMAKE_CURRENT_BINARY_DIR}/KF5QQC2DeskopStyleConfig.cmake"
   "${CMAKE_CURRENT_BINARY_DIR}/KF5QQC2DeskopStyleConfigVersion.cmake"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qqc2-desktop-style-5.87.0/kirigami-plasmadesktop-integration/plasmadesktoptheme.cpp
 
new/qqc2-desktop-style-5.88.0/kirigami-plasmadesktop-integration/plasmadesktoptheme.cpp
--- 
old/qqc2-desktop-style-5.87.0/kirigami-plasmadesktop-integration/plasmadesktoptheme.cpp
     2021-10-02 14:24:05.000000000 +0200
+++ 
new/qqc2-desktop-style-5.88.0/kirigami-plasmadesktop-integration/plasmadesktoptheme.cpp
     2021-11-05 15:32:42.000000000 +0100
@@ -17,6 +17,7 @@
 
 #include <KColorScheme>
 #include <KConfigGroup>
+#include <KIconColors>
 #include <QDBusConnection>
 
 class StyleSingleton : public QObject
@@ -229,26 +230,13 @@
 
 QIcon PlasmaDesktopTheme::iconFromTheme(const QString &name, const QColor 
&customColor)
 {
-    QPalette pal = palette();
     if (customColor != Qt::transparent) {
-        for (auto state : {QPalette::Active, QPalette::Inactive, 
QPalette::Disabled}) {
-            pal.setBrush(state, QPalette::WindowText, customColor);
-        }
+        KIconColors colors;
+        colors.setText(customColor);
+        return KDE::icon(name, colors);
+    } else {
+        return KDE::icon(name);
     }
-
-    bool hadPalette = KIconLoader::global()->hasCustomPalette();
-    QPalette olderPalette = KIconLoader::global()->customPalette();
-
-    auto cleanup = qScopeGuard([&] {
-        if (hadPalette) {
-            KIconLoader::global()->setCustomPalette(olderPalette);
-        } else {
-            KIconLoader::global()->resetPalette();
-        }
-    });
-
-    KIconLoader::global()->setCustomPalette(pal);
-    return KDE::icon(name, KIconLoader::global());
 }
 
 void PlasmaDesktopTheme::syncColors()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qqc2-desktop-style-5.87.0/org.kde.desktop/BusyIndicator.qml 
new/qqc2-desktop-style-5.88.0/org.kde.desktop/BusyIndicator.qml
--- old/qqc2-desktop-style-5.87.0/org.kde.desktop/BusyIndicator.qml     
2021-10-02 14:24:05.000000000 +0200
+++ new/qqc2-desktop-style-5.88.0/org.kde.desktop/BusyIndicator.qml     
2021-11-05 15:32:42.000000000 +0100
@@ -13,7 +13,6 @@
 T.BusyIndicator {
     id: controlRoot
 
-    palette: Kirigami.Theme.palette
     implicitWidth: contentItem.implicitWidth + leftPadding + rightPadding
     implicitHeight: contentItem.implicitHeight + topPadding + bottomPadding
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qqc2-desktop-style-5.87.0/org.kde.desktop/Button.qml 
new/qqc2-desktop-style-5.88.0/org.kde.desktop/Button.qml
--- old/qqc2-desktop-style-5.87.0/org.kde.desktop/Button.qml    2021-10-02 
14:24:05.000000000 +0200
+++ new/qqc2-desktop-style-5.88.0/org.kde.desktop/Button.qml    2021-11-05 
15:32:42.000000000 +0100
@@ -13,7 +13,6 @@
 T.Button {
     id: controlRoot
 
-    palette: Kirigami.Theme.palette
     Kirigami.Theme.colorSet: Kirigami.Theme.Button
     Kirigami.Theme.inherit: false
 
@@ -35,7 +34,6 @@
         onActivated: controlRoot.clicked()
     }
     background: StylePrivate.StyleItem {
-        id: styleitem
         control: controlRoot
         elementType: "button"
         sunken: controlRoot.down
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qqc2-desktop-style-5.87.0/org.kde.desktop/CheckBox.qml 
new/qqc2-desktop-style-5.88.0/org.kde.desktop/CheckBox.qml
--- old/qqc2-desktop-style-5.87.0/org.kde.desktop/CheckBox.qml  2021-10-02 
14:24:05.000000000 +0200
+++ new/qqc2-desktop-style-5.88.0/org.kde.desktop/CheckBox.qml  2021-11-05 
15:32:42.000000000 +0100
@@ -15,7 +15,6 @@
 T.CheckBox {
     id: controlRoot
 
-    palette: Kirigami.Theme.palette
     implicitWidth: Math.max(background ? background.implicitWidth : 0,
                             contentItem.implicitWidth + leftPadding + 
rightPadding)
     implicitHeight: Math.max(background ? background.implicitHeight : 0,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qqc2-desktop-style-5.87.0/org.kde.desktop/CheckDelegate.qml 
new/qqc2-desktop-style-5.88.0/org.kde.desktop/CheckDelegate.qml
--- old/qqc2-desktop-style-5.87.0/org.kde.desktop/CheckDelegate.qml     
2021-10-02 14:24:05.000000000 +0200
+++ new/qqc2-desktop-style-5.88.0/org.kde.desktop/CheckDelegate.qml     
2021-11-05 15:32:42.000000000 +0100
@@ -14,7 +14,6 @@
 T.CheckDelegate {
     id: controlRoot
 
-    palette: Kirigami.Theme.palette
     implicitWidth: contentItem.implicitWidth + leftPadding + rightPadding
     implicitHeight: Math.max(contentItem.implicitHeight,
                                       indicator ? indicator.implicitHeight : 
0) + topPadding + bottomPadding
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qqc2-desktop-style-5.87.0/org.kde.desktop/ComboBox.qml 
new/qqc2-desktop-style-5.88.0/org.kde.desktop/ComboBox.qml
--- old/qqc2-desktop-style-5.87.0/org.kde.desktop/ComboBox.qml  2021-10-02 
14:24:05.000000000 +0200
+++ new/qqc2-desktop-style-5.88.0/org.kde.desktop/ComboBox.qml  2021-11-05 
15:32:42.000000000 +0100
@@ -17,7 +17,6 @@
 
 T.ComboBox {
     id: controlRoot
-    palette: Kirigami.Theme.palette
     //NOTE: typeof necessary to not have warnings on Qt 5.7
     Kirigami.Theme.colorSet: typeof(editable) != "undefined" && editable ? 
Kirigami.Theme.View : Kirigami.Theme.Button
     Kirigami.Theme.inherit: false
@@ -43,7 +42,6 @@
     indicator: Item {}
 
     contentItem: T.TextField {
-        id: textField
         padding: 0
         text: controlRoot.editable ? controlRoot.editText : 
controlRoot.displayText
 
@@ -92,12 +90,12 @@
     Component {
         id: mobileCursor
         Private.MobileCursor {
-            target: textField
+            target: controlRoot.contentItem
         }
     }
 
     Private.MobileCursor {
-        target: textField
+        target: controlRoot.contentItem
         selectionStartHandle: true
         property var rect: target.positionToRectangle(target.selectionStart)
         x: rect.x + 5
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qqc2-desktop-style-5.87.0/org.kde.desktop/Container.qml 
new/qqc2-desktop-style-5.88.0/org.kde.desktop/Container.qml
--- old/qqc2-desktop-style-5.87.0/org.kde.desktop/Container.qml 2021-10-02 
14:24:05.000000000 +0200
+++ new/qqc2-desktop-style-5.88.0/org.kde.desktop/Container.qml 2021-11-05 
15:32:42.000000000 +0100
@@ -13,7 +13,6 @@
 T.Container {
     id: control
 
-    palette: Kirigami.Theme.palette
     implicitWidth: Math.max(background ? background.implicitWidth : 0,
                             (contentItem ? contentItem.implicitWidth : 0) + 
leftPadding + rightPadding)
     implicitHeight: Math.max(background ? background.implicitHeight : 0,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qqc2-desktop-style-5.87.0/org.kde.desktop/Control.qml 
new/qqc2-desktop-style-5.88.0/org.kde.desktop/Control.qml
--- old/qqc2-desktop-style-5.87.0/org.kde.desktop/Control.qml   2021-10-02 
14:24:05.000000000 +0200
+++ new/qqc2-desktop-style-5.88.0/org.kde.desktop/Control.qml   2021-11-05 
15:32:42.000000000 +0100
@@ -14,7 +14,6 @@
 T.Control {
     id: control
 
-    palette: Kirigami.Theme.palette
     implicitWidth: Math.max(background ? background.implicitWidth : 0,
                             (contentItem ? contentItem.implicitWidth : 0) + 
leftPadding + rightPadding)
     implicitHeight: Math.max(background ? background.implicitHeight : 0,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qqc2-desktop-style-5.87.0/org.kde.desktop/DelayButton.qml 
new/qqc2-desktop-style-5.88.0/org.kde.desktop/DelayButton.qml
--- old/qqc2-desktop-style-5.87.0/org.kde.desktop/DelayButton.qml       
2021-10-02 14:24:05.000000000 +0200
+++ new/qqc2-desktop-style-5.88.0/org.kde.desktop/DelayButton.qml       
2021-11-05 15:32:42.000000000 +0100
@@ -13,7 +13,6 @@
 T.DelayButton {
     id: controlRoot
 
-    palette: Kirigami.Theme.palette
     Kirigami.Theme.colorSet: Kirigami.Theme.Button
     Kirigami.Theme.inherit: false
 
@@ -30,7 +29,6 @@
 
     contentItem: Item {}
     background: StylePrivate.StyleItem {
-        id: styleitem
         control: controlRoot
         elementType: "button"
         sunken: controlRoot.down || controlRoot.checked
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qqc2-desktop-style-5.87.0/org.kde.desktop/Dial.qml 
new/qqc2-desktop-style-5.88.0/org.kde.desktop/Dial.qml
--- old/qqc2-desktop-style-5.87.0/org.kde.desktop/Dial.qml      2021-10-02 
14:24:05.000000000 +0200
+++ new/qqc2-desktop-style-5.88.0/org.kde.desktop/Dial.qml      2021-11-05 
15:32:42.000000000 +0100
@@ -15,12 +15,10 @@
 T.Dial {
     id: controlRoot
 
-    palette: Kirigami.Theme.palette
     implicitWidth: 128
     implicitHeight: 128
 
     background: StylePrivate.StyleItem {
-        id: style
         control: controlRoot
         visible: true
         elementType: "dial"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qqc2-desktop-style-5.87.0/org.kde.desktop/Dialog.qml 
new/qqc2-desktop-style-5.88.0/org.kde.desktop/Dialog.qml
--- old/qqc2-desktop-style-5.87.0/org.kde.desktop/Dialog.qml    2021-10-02 
14:24:05.000000000 +0200
+++ new/qqc2-desktop-style-5.88.0/org.kde.desktop/Dialog.qml    2021-11-05 
15:32:42.000000000 +0100
@@ -13,7 +13,6 @@
 T.Dialog {
     id: control
 
-    palette: Kirigami.Theme.palette
     implicitWidth: Math.max(background ? background.implicitWidth : 0,
                             contentWidth > 0 ? contentWidth + leftPadding + 
rightPadding : 0)
     implicitHeight: Math.max(background ? background.implicitHeight : 0,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qqc2-desktop-style-5.87.0/org.kde.desktop/Drawer.qml 
new/qqc2-desktop-style-5.88.0/org.kde.desktop/Drawer.qml
--- old/qqc2-desktop-style-5.87.0/org.kde.desktop/Drawer.qml    2021-10-02 
14:24:05.000000000 +0200
+++ new/qqc2-desktop-style-5.88.0/org.kde.desktop/Drawer.qml    2021-11-05 
15:32:42.000000000 +0100
@@ -14,7 +14,6 @@
 T.Drawer {
     id: control
 
-    palette: Kirigami.Theme.palette
     parent: T.ApplicationWindow.overlay
 
     implicitWidth: Math.max(background ? background.implicitWidth : 0, 
contentWidth + leftPadding + rightPadding)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qqc2-desktop-style-5.87.0/org.kde.desktop/Frame.qml 
new/qqc2-desktop-style-5.88.0/org.kde.desktop/Frame.qml
--- old/qqc2-desktop-style-5.87.0/org.kde.desktop/Frame.qml     2021-10-02 
14:24:05.000000000 +0200
+++ new/qqc2-desktop-style-5.88.0/org.kde.desktop/Frame.qml     2021-11-05 
15:32:42.000000000 +0100
@@ -14,7 +14,6 @@
 T.Frame {
     id: control
 
-    palette: Kirigami.Theme.palette
     implicitWidth: contentWidth + leftPadding + rightPadding
     implicitHeight: contentHeight + topPadding + bottomPadding
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qqc2-desktop-style-5.87.0/org.kde.desktop/GroupBox.qml 
new/qqc2-desktop-style-5.88.0/org.kde.desktop/GroupBox.qml
--- old/qqc2-desktop-style-5.87.0/org.kde.desktop/GroupBox.qml  2021-10-02 
14:24:05.000000000 +0200
+++ new/qqc2-desktop-style-5.88.0/org.kde.desktop/GroupBox.qml  2021-11-05 
15:32:42.000000000 +0100
@@ -14,7 +14,6 @@
 T.GroupBox {
     id: control
 
-    palette: Kirigami.Theme.palette
     implicitWidth: contentWidth + leftPadding + rightPadding
     implicitHeight: contentHeight + topPadding + bottomPadding
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qqc2-desktop-style-5.87.0/org.kde.desktop/ItemDelegate.qml 
new/qqc2-desktop-style-5.88.0/org.kde.desktop/ItemDelegate.qml
--- old/qqc2-desktop-style-5.87.0/org.kde.desktop/ItemDelegate.qml      
2021-10-02 14:24:05.000000000 +0200
+++ new/qqc2-desktop-style-5.88.0/org.kde.desktop/ItemDelegate.qml      
2021-11-05 15:32:42.000000000 +0100
@@ -14,7 +14,6 @@
 T.ItemDelegate {
     id: controlRoot
 
-    palette: Kirigami.Theme.palette
     implicitWidth: contentItem.implicitWidth + leftPadding + rightPadding
     implicitHeight: Math.max(contentItem.implicitHeight,
                                       indicator ? indicator.implicitHeight : 
0) + topPadding + bottomPadding
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qqc2-desktop-style-5.87.0/org.kde.desktop/Menu.qml 
new/qqc2-desktop-style-5.88.0/org.kde.desktop/Menu.qml
--- old/qqc2-desktop-style-5.87.0/org.kde.desktop/Menu.qml      2021-10-02 
14:24:05.000000000 +0200
+++ new/qqc2-desktop-style-5.88.0/org.kde.desktop/Menu.qml      2021-11-05 
15:32:42.000000000 +0100
@@ -15,7 +15,6 @@
 T.Menu {
     id: control
 
-    palette: Kirigami.Theme.palette
     implicitWidth: Math.max(background ? background.implicitWidth : 0,
                             contentItem ? contentItem.implicitWidth + 
leftPadding + rightPadding : 0)
     implicitHeight: Math.max(background ? background.implicitHeight : 0,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qqc2-desktop-style-5.87.0/org.kde.desktop/MenuBar.qml 
new/qqc2-desktop-style-5.88.0/org.kde.desktop/MenuBar.qml
--- old/qqc2-desktop-style-5.87.0/org.kde.desktop/MenuBar.qml   2021-10-02 
14:24:05.000000000 +0200
+++ new/qqc2-desktop-style-5.88.0/org.kde.desktop/MenuBar.qml   2021-11-05 
15:32:42.000000000 +0100
@@ -13,7 +13,6 @@
 T.MenuBar {
     id: controlRoot
 
-    palette: Kirigami.Theme.palette
     implicitWidth: Math.max(implicitBackgroundWidth + leftInset + rightInset,
                             contentWidth + leftPadding + rightPadding)
     implicitHeight: Math.max(implicitBackgroundHeight + topInset + bottomInset,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qqc2-desktop-style-5.87.0/org.kde.desktop/MenuBarItem.qml 
new/qqc2-desktop-style-5.88.0/org.kde.desktop/MenuBarItem.qml
--- old/qqc2-desktop-style-5.87.0/org.kde.desktop/MenuBarItem.qml       
2021-10-02 14:24:05.000000000 +0200
+++ new/qqc2-desktop-style-5.88.0/org.kde.desktop/MenuBarItem.qml       
2021-11-05 15:32:42.000000000 +0100
@@ -14,7 +14,6 @@
 T.MenuBarItem {
     id: controlRoot
 
-    palette: Kirigami.Theme.palette
     implicitWidth: contentItem.implicitWidth + leftPadding + rightPadding
     implicitHeight: contentItem.implicitHeight + topPadding + bottomPadding
     baselineOffset: contentItem.y + contentItem.baselineOffset
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qqc2-desktop-style-5.87.0/org.kde.desktop/MenuItem.qml 
new/qqc2-desktop-style-5.88.0/org.kde.desktop/MenuItem.qml
--- old/qqc2-desktop-style-5.87.0/org.kde.desktop/MenuItem.qml  2021-10-02 
14:24:05.000000000 +0200
+++ new/qqc2-desktop-style-5.88.0/org.kde.desktop/MenuItem.qml  2021-11-05 
15:32:42.000000000 +0100
@@ -14,7 +14,6 @@
 T.MenuItem {
     id: controlRoot
 
-    palette: Kirigami.Theme.palette
     implicitWidth: Math.max(background ? background.implicitWidth : 0,
                             contentItem.implicitWidth + leftPadding + 
rightPadding + (arrow ? arrow.implicitWidth : 0))
     implicitHeight: visible ? Math.max(background ? background.implicitHeight 
: 0,
@@ -95,7 +94,6 @@
         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"
-        selected: controlRoot.highlighted
         width: 
Math.max(Kirigami.Units.iconSizes.roundedIconSize(label.height), 
Kirigami.Units.iconSizes.small)
         height: width
         visible: controlRoot.subMenu
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qqc2-desktop-style-5.87.0/org.kde.desktop/Pane.qml 
new/qqc2-desktop-style-5.88.0/org.kde.desktop/Pane.qml
--- old/qqc2-desktop-style-5.87.0/org.kde.desktop/Pane.qml      1970-01-01 
01:00:00.000000000 +0100
+++ new/qqc2-desktop-style-5.88.0/org.kde.desktop/Pane.qml      2021-11-05 
15:32:42.000000000 +0100
@@ -0,0 +1,23 @@
+// SPDX-FileCopyrightText: 2021 Carl Schwan <c...@carlschwan.eu>
+// SPDX-License-Identifier: LGPL-2.0-or-later
+
+import QtQuick 2.12
+import QtQuick.Templates @QQC2_VERSION@ as T
+import QtQuick.Controls 2.12
+import org.kde.kirigami 2.15 as Kirigami
+
+T.Pane {
+    id: control
+
+    implicitWidth: Math.max(implicitBackgroundWidth + leftInset + rightInset,
+                            contentWidth + leftPadding + rightPadding)
+    implicitHeight: Math.max(implicitBackgroundHeight + topInset + bottomInset,
+                             contentHeight + topPadding + bottomPadding)
+
+    padding: Kirigami.Units.largeSpacing
+
+    background: Rectangle {
+        color: Kirigami.Theme.backgroundColor
+    }
+}
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qqc2-desktop-style-5.87.0/org.kde.desktop/Popup.qml 
new/qqc2-desktop-style-5.88.0/org.kde.desktop/Popup.qml
--- old/qqc2-desktop-style-5.87.0/org.kde.desktop/Popup.qml     2021-10-02 
14:24:05.000000000 +0200
+++ new/qqc2-desktop-style-5.88.0/org.kde.desktop/Popup.qml     2021-11-05 
15:32:42.000000000 +0100
@@ -13,7 +13,6 @@
 T.Popup {
     id: control
 
-    palette: Kirigami.Theme.palette
     implicitWidth: Math.max(background ? background.implicitWidth : 0,
                             contentWidth > 0 ? contentWidth + leftPadding + 
rightPadding : 0)
     implicitHeight: Math.max(background ? background.implicitHeight : 0,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qqc2-desktop-style-5.87.0/org.kde.desktop/ProgressBar.qml 
new/qqc2-desktop-style-5.88.0/org.kde.desktop/ProgressBar.qml
--- old/qqc2-desktop-style-5.87.0/org.kde.desktop/ProgressBar.qml       
2021-10-02 14:24:05.000000000 +0200
+++ new/qqc2-desktop-style-5.88.0/org.kde.desktop/ProgressBar.qml       
2021-11-05 15:32:42.000000000 +0100
@@ -14,7 +14,6 @@
 T.ProgressBar {
     id: controlRoot
 
-    palette: Kirigami.Theme.palette
     implicitWidth: 250
     implicitHeight: 22
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qqc2-desktop-style-5.87.0/org.kde.desktop/RadioButton.qml 
new/qqc2-desktop-style-5.88.0/org.kde.desktop/RadioButton.qml
--- old/qqc2-desktop-style-5.87.0/org.kde.desktop/RadioButton.qml       
2021-10-02 14:24:05.000000000 +0200
+++ new/qqc2-desktop-style-5.88.0/org.kde.desktop/RadioButton.qml       
2021-11-05 15:32:42.000000000 +0100
@@ -15,7 +15,6 @@
 T.RadioButton {
     id: controlRoot
 
-    palette: Kirigami.Theme.palette
     implicitWidth: Math.max(background ? background.implicitWidth : 0,
                             contentItem.implicitWidth + leftPadding + 
rightPadding)
     implicitHeight: Math.max(background ? background.implicitHeight : 0,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qqc2-desktop-style-5.87.0/org.kde.desktop/RadioDelegate.qml 
new/qqc2-desktop-style-5.88.0/org.kde.desktop/RadioDelegate.qml
--- old/qqc2-desktop-style-5.87.0/org.kde.desktop/RadioDelegate.qml     
2021-10-02 14:24:05.000000000 +0200
+++ new/qqc2-desktop-style-5.88.0/org.kde.desktop/RadioDelegate.qml     
2021-11-05 15:32:42.000000000 +0100
@@ -14,7 +14,6 @@
 T.RadioDelegate {
     id: controlRoot
 
-    palette: Kirigami.Theme.palette
     implicitWidth: contentItem.implicitWidth + leftPadding + rightPadding
     implicitHeight: Math.max(contentItem.implicitHeight,
                                       indicator ? indicator.implicitHeight : 
0) + topPadding + bottomPadding
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qqc2-desktop-style-5.87.0/org.kde.desktop/RangeSlider.qml 
new/qqc2-desktop-style-5.88.0/org.kde.desktop/RangeSlider.qml
--- old/qqc2-desktop-style-5.87.0/org.kde.desktop/RangeSlider.qml       
2021-10-02 14:24:05.000000000 +0200
+++ new/qqc2-desktop-style-5.88.0/org.kde.desktop/RangeSlider.qml       
2021-11-05 15:32:42.000000000 +0100
@@ -14,7 +14,6 @@
 T.RangeSlider {
     id: control
 
-    palette: Kirigami.Theme.palette
     implicitWidth: Math.max(background ? background.implicitWidth : 0,
         Math.max(first.handle ? first.handle.implicitWidth : 0,
                  second.handle ? second.handle.implicitWidth : 0) + 
leftPadding + rightPadding)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qqc2-desktop-style-5.87.0/org.kde.desktop/ScrollBar.qml 
new/qqc2-desktop-style-5.88.0/org.kde.desktop/ScrollBar.qml
--- old/qqc2-desktop-style-5.87.0/org.kde.desktop/ScrollBar.qml 2021-10-02 
14:24:05.000000000 +0200
+++ new/qqc2-desktop-style-5.88.0/org.kde.desktop/ScrollBar.qml 2021-11-05 
15:32:42.000000000 +0100
@@ -14,7 +14,6 @@
 T.ScrollBar {
     id: controlRoot
 
-    palette: Kirigami.Theme.palette
     implicitWidth: background.implicitWidth
     implicitHeight: background.implicitHeight
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qqc2-desktop-style-5.87.0/org.kde.desktop/ScrollView.qml 
new/qqc2-desktop-style-5.88.0/org.kde.desktop/ScrollView.qml
--- old/qqc2-desktop-style-5.87.0/org.kde.desktop/ScrollView.qml        
2021-10-02 14:24:05.000000000 +0200
+++ new/qqc2-desktop-style-5.88.0/org.kde.desktop/ScrollView.qml        
2021-11-05 15:32:42.000000000 +0100
@@ -17,7 +17,6 @@
 
     clip: true
 
-    palette: Kirigami.Theme.palette
     implicitWidth: Math.max(background ? background.implicitWidth : 0, 
contentWidth + leftPadding + rightPadding)
     implicitHeight: Math.max(background ? background.implicitHeight : 0, 
contentHeight + topPadding + bottomPadding)
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qqc2-desktop-style-5.87.0/org.kde.desktop/Slider.qml 
new/qqc2-desktop-style-5.88.0/org.kde.desktop/Slider.qml
--- old/qqc2-desktop-style-5.87.0/org.kde.desktop/Slider.qml    2021-10-02 
14:24:05.000000000 +0200
+++ new/qqc2-desktop-style-5.88.0/org.kde.desktop/Slider.qml    2021-11-05 
15:32:42.000000000 +0100
@@ -13,7 +13,6 @@
 
 T.Slider {
     id: controlRoot
-    palette: Kirigami.Theme.palette
     Kirigami.Theme.colorSet: Kirigami.Theme.Button
 
     implicitWidth: background.horizontal ? Kirigami.Units.gridUnit * 12 : 
background.implicitWidth
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qqc2-desktop-style-5.87.0/org.kde.desktop/SpinBox.qml 
new/qqc2-desktop-style-5.88.0/org.kde.desktop/SpinBox.qml
--- old/qqc2-desktop-style-5.87.0/org.kde.desktop/SpinBox.qml   2021-10-02 
14:24:05.000000000 +0200
+++ new/qqc2-desktop-style-5.88.0/org.kde.desktop/SpinBox.qml   2021-11-05 
15:32:42.000000000 +0100
@@ -14,7 +14,6 @@
 
 T.SpinBox {
     id: controlRoot
-    palette: Kirigami.Theme.palette
     Kirigami.Theme.colorSet: Kirigami.Theme.View
     Kirigami.Theme.inherit: false
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qqc2-desktop-style-5.87.0/org.kde.desktop/Switch.qml 
new/qqc2-desktop-style-5.88.0/org.kde.desktop/Switch.qml
--- old/qqc2-desktop-style-5.87.0/org.kde.desktop/Switch.qml    2021-10-02 
14:24:05.000000000 +0200
+++ new/qqc2-desktop-style-5.88.0/org.kde.desktop/Switch.qml    2021-11-05 
15:32:42.000000000 +0100
@@ -13,7 +13,6 @@
 T.CheckBox {
     id: control
 
-    palette: Kirigami.Theme.palette
     implicitWidth: contentItem.implicitWidth + leftPadding + rightPadding
     implicitHeight: Math.max(contentItem.implicitHeight,
                                       indicator ? indicator.implicitHeight : 
0) + topPadding + bottomPadding
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qqc2-desktop-style-5.87.0/org.kde.desktop/SwitchDelegate.qml 
new/qqc2-desktop-style-5.88.0/org.kde.desktop/SwitchDelegate.qml
--- old/qqc2-desktop-style-5.87.0/org.kde.desktop/SwitchDelegate.qml    
2021-10-02 14:24:05.000000000 +0200
+++ new/qqc2-desktop-style-5.88.0/org.kde.desktop/SwitchDelegate.qml    
2021-11-05 15:32:42.000000000 +0100
@@ -14,7 +14,6 @@
 T.SwitchDelegate {
     id: controlRoot
 
-    palette: Kirigami.Theme.palette
     implicitWidth: contentItem.implicitWidth + leftPadding + rightPadding
     implicitHeight: Math.max(contentItem.implicitHeight,
                                       indicator ? indicator.implicitHeight : 
0) + topPadding + bottomPadding
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qqc2-desktop-style-5.87.0/org.kde.desktop/TabBar.qml 
new/qqc2-desktop-style-5.88.0/org.kde.desktop/TabBar.qml
--- old/qqc2-desktop-style-5.87.0/org.kde.desktop/TabBar.qml    2021-10-02 
14:24:05.000000000 +0200
+++ new/qqc2-desktop-style-5.88.0/org.kde.desktop/TabBar.qml    2021-11-05 
15:32:42.000000000 +0100
@@ -14,7 +14,6 @@
 T.TabBar {
     id: controlRoot
 
-    palette: Kirigami.Theme.palette
     Kirigami.Theme.colorSet: Kirigami.Theme.Window
     Kirigami.Theme.inherit: false
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qqc2-desktop-style-5.87.0/org.kde.desktop/TabButton.qml 
new/qqc2-desktop-style-5.88.0/org.kde.desktop/TabButton.qml
--- old/qqc2-desktop-style-5.87.0/org.kde.desktop/TabButton.qml 2021-10-02 
14:24:05.000000000 +0200
+++ new/qqc2-desktop-style-5.88.0/org.kde.desktop/TabButton.qml 2021-11-05 
15:32:42.000000000 +0100
@@ -17,7 +17,6 @@
 T.TabButton {
     id: controlRoot
 
-    palette: Kirigami.Theme.palette
     //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
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qqc2-desktop-style-5.87.0/org.kde.desktop/TextArea.qml 
new/qqc2-desktop-style-5.88.0/org.kde.desktop/TextArea.qml
--- old/qqc2-desktop-style-5.87.0/org.kde.desktop/TextArea.qml  2021-10-02 
14:24:05.000000000 +0200
+++ new/qqc2-desktop-style-5.88.0/org.kde.desktop/TextArea.qml  2021-11-05 
15:32:42.000000000 +0100
@@ -1,6 +1,7 @@
 /*
     SPDX-FileCopyrightText: 2017 Marco Martin <m...@kde.org>
     SPDX-FileCopyrightText: 2017 The Qt Company Ltd.
+    SPDX-FileCopyrightText: 2021 Carl Schwan <carlsch...@kde.org>
 
     SPDX-License-Identifier: LGPL-3.0-only OR GPL-2.0-or-later
 */
@@ -9,13 +10,13 @@
 import QtQuick 2.12
 import QtQuick.Window 2.1
 import QtQuick.Templates @QQC2_VERSION@ as T
-import org.kde.kirigami 2.4 as Kirigami
+import org.kde.kirigami 2.18 as Kirigami
 import org.kde.qqc2desktopstyle.private 1.0 as StylePrivate
+import org.kde.sonnet 1.0 as Sonnet
 import "private" as Private
 
 T.TextArea {
     id: controlRoot
-    palette: Kirigami.Theme.palette
     Kirigami.Theme.colorSet: Kirigami.Theme.View
     Kirigami.Theme.inherit: false
 
@@ -55,13 +56,31 @@
     TapHandler {
         acceptedDevices: PointerDevice.Mouse | PointerDevice.Stylus
         acceptedButtons: Qt.LeftButton | Qt.RightButton
-        
+
         // unfortunately, taphandler's pressed event only triggers when the 
press is lifted
         // we need to use the longpress signal since it triggers when the 
button is first pressed
         longPressThreshold: 0
-        onLongPressed: Private.TextFieldContextMenu.targetClick(point, 
controlRoot);
+        onLongPressed: Private.TextFieldContextMenu.targetClick(point, 
controlRoot, spellcheckhighlighter, controlRoot.positionAt(point.position.x, 
point.position.y));
     }
-    
+
+    Sonnet.SpellcheckHighlighter {
+        id: spellcheckhighlighter
+        document: controlRoot.textDocument
+        cursorPosition: controlRoot.cursorPosition
+        selectionStart: controlRoot.selectionStart
+        selectionEnd: controlRoot.selectionEnd
+        misspelledColor: Kirigami.Theme.negativeTextColor
+        active: activable && settings.checkerEnabledByDefault
+
+        property bool activable: controlRoot.Kirigami.SpellChecking.enabled
+        property Sonnet.Settings settings: Sonnet.Settings {}
+
+        onChangeCursorPosition: {
+            controlRoot.cursorPosition = start;
+            controlRoot.moveCursorSelection(end, TextEdit.SelectCharacters);
+        }
+    }
+
     Keys.onPressed: {
         // trigger if context menu button is pressed
         Private.TextFieldContextMenu.targetKeyPressed(event, controlRoot)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qqc2-desktop-style-5.87.0/org.kde.desktop/TextField.qml 
new/qqc2-desktop-style-5.88.0/org.kde.desktop/TextField.qml
--- old/qqc2-desktop-style-5.87.0/org.kde.desktop/TextField.qml 2021-10-02 
14:24:05.000000000 +0200
+++ new/qqc2-desktop-style-5.88.0/org.kde.desktop/TextField.qml 2021-11-05 
15:32:42.000000000 +0100
@@ -16,7 +16,6 @@
 
 T.TextField {
     id: controlRoot
-    palette: Kirigami.Theme.palette
     Kirigami.Theme.colorSet: Kirigami.Theme.View
     Kirigami.Theme.inherit: false
 
@@ -64,7 +63,7 @@
         // unfortunately, taphandler's pressed event only triggers when the 
press is lifted
         // we need to use the longpress signal since it triggers when the 
button is first pressed
         longPressThreshold: 0
-        onLongPressed: Private.TextFieldContextMenu.targetClick(point, 
controlRoot);
+        onLongPressed: Private.TextFieldContextMenu.targetClick(point, 
controlRoot, null, null);
     }
     
     Keys.onPressed: {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qqc2-desktop-style-5.87.0/org.kde.desktop/ToolBar.qml 
new/qqc2-desktop-style-5.88.0/org.kde.desktop/ToolBar.qml
--- old/qqc2-desktop-style-5.87.0/org.kde.desktop/ToolBar.qml   2021-10-02 
14:24:05.000000000 +0200
+++ new/qqc2-desktop-style-5.88.0/org.kde.desktop/ToolBar.qml   2021-11-05 
15:32:42.000000000 +0100
@@ -13,8 +13,6 @@
 T.ToolBar {
     id: controlRoot
 
-    palette: Kirigami.Theme.palette
-
     implicitWidth: Math.max(implicitBackgroundWidth + leftInset + rightInset, 
contentWidth + leftPadding + rightPadding)
     implicitHeight: Math.max(implicitBackgroundHeight + topInset + 
bottomInset, contentHeight + topPadding + bottomPadding)
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qqc2-desktop-style-5.87.0/org.kde.desktop/ToolButton.qml 
new/qqc2-desktop-style-5.88.0/org.kde.desktop/ToolButton.qml
--- old/qqc2-desktop-style-5.87.0/org.kde.desktop/ToolButton.qml        
2021-10-02 14:24:05.000000000 +0200
+++ new/qqc2-desktop-style-5.88.0/org.kde.desktop/ToolButton.qml        
2021-11-05 15:32:42.000000000 +0100
@@ -14,7 +14,6 @@
 T.ToolButton {
     id: controlRoot
 
-    palette: Kirigami.Theme.palette
     Kirigami.Theme.colorSet: flat ? Kirigami.Theme.Window : 
Kirigami.Theme.Button
     Kirigami.Theme.inherit: flat
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qqc2-desktop-style-5.87.0/org.kde.desktop/ToolSeparator.qml 
new/qqc2-desktop-style-5.88.0/org.kde.desktop/ToolSeparator.qml
--- old/qqc2-desktop-style-5.87.0/org.kde.desktop/ToolSeparator.qml     
2021-10-02 14:24:05.000000000 +0200
+++ new/qqc2-desktop-style-5.88.0/org.kde.desktop/ToolSeparator.qml     
2021-11-05 15:32:42.000000000 +0100
@@ -19,7 +19,7 @@
 
     contentItem: Kirigami.Separator {
         // implicitHeight is the same as ToolBar implicitHeight minus ToolBar 
padding if not horizontal
-        implicitHeight: horizontal ? 
Math.floor(Kirigami.Units.devicePixelRatio) : 40 - (Kirigami.Units.smallSpacing 
* 2)
-        implicitWidth: horizontal ? 40 - (Kirigami.Units.smallSpacing * 2) : 
Math.floor(Kirigami.Units.devicePixelRatio)
+        implicitHeight: horizontal ? 1 : 40 - (Kirigami.Units.smallSpacing * 2)
+        implicitWidth: !horizontal ? 1 : 40 - (Kirigami.Units.smallSpacing * 2)
     }
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qqc2-desktop-style-5.87.0/org.kde.desktop/ToolTip.qml 
new/qqc2-desktop-style-5.88.0/org.kde.desktop/ToolTip.qml
--- old/qqc2-desktop-style-5.87.0/org.kde.desktop/ToolTip.qml   2021-10-02 
14:24:05.000000000 +0200
+++ new/qqc2-desktop-style-5.88.0/org.kde.desktop/ToolTip.qml   2021-11-05 
15:32:42.000000000 +0100
@@ -14,7 +14,6 @@
 T.ToolTip {
     id: controlRoot
 
-    palette: Kirigami.Theme.palette
     Kirigami.Theme.colorSet: Kirigami.Theme.Tooltip
     Kirigami.Theme.inherit: false
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qqc2-desktop-style-5.87.0/org.kde.desktop/private/TextFieldContextMenu.qml 
new/qqc2-desktop-style-5.88.0/org.kde.desktop/private/TextFieldContextMenu.qml
--- 
old/qqc2-desktop-style-5.87.0/org.kde.desktop/private/TextFieldContextMenu.qml  
    2021-10-02 14:24:05.000000000 +0200
+++ 
new/qqc2-desktop-style-5.88.0/org.kde.desktop/private/TextFieldContextMenu.qml  
    2021-11-05 15:32:42.000000000 +0100
@@ -1,13 +1,15 @@
 /*
     SPDX-FileCopyrightText: 2020 Devin Lin <espi...@gmail.com>
+    SPDX-FileCopyrightText: 2021 Carl Schwan <carlsch...@kde.org>
 
     SPDX-License-Identifier: LGPL-2.0-or-later
-*/ 
+*/
 
 pragma Singleton
 
 import QtQuick 2.6
-import QtQuick.Controls @QQC2_VERSION@ 
+import QtQml 2.2
+import QtQuick.Controls @QQC2_VERSION@
 import org.kde.kirigami 2.5 as Kirigami
 
 Menu {
@@ -19,9 +21,11 @@
     property int restoredSelectionStart
     property int restoredSelectionEnd
     property bool persistentSelectionSetting
+    property var spellcheckhighlighter: null
+    property var suggestions: []
     Component.onCompleted: persistentSelectionSetting = 
persistentSelectionSetting // break binding
 
-    property var runOnMenuClose 
+    property var runOnMenuClose: () => {}
 
     parent: Overlay.overlay
 
@@ -32,14 +36,16 @@
     }
 
     // target is pressed with mouse
-    function targetClick(handlerPoint, newTarget) {
+    function targetClick(handlerPoint, newTarget, spellcheckhighlighter, 
mousePosition) {
         if (handlerPoint.pressedButtons === Qt.RightButton) { // only accept 
just right click
             if (contextMenu.visible) {
                 deselectWhenMenuClosed = false; // don't deselect text if menu 
closed by right click on textfield
                 dismiss();
             } else {
                 contextMenu.target = newTarget;
-                target.persistentSelection = true; // persist selection when 
menu is opened
+                contextMenu.target.persistentSelection = true; // persist 
selection when menu is opened
+                contextMenu.spellcheckhighlighter = spellcheckhighlighter
+                contextMenu.suggestions = mousePosition ? 
spellcheckhighlighter.suggestions(mousePosition) : [];
                 storeCursorAndSelection();
                 popup(contextMenu.target);
                 // slightly locate context menu away from mouse so no item is 
selected when menu is opened
@@ -88,38 +94,97 @@
         target.cursorPosition = restoredCursorPosition;
         target.select(restoredSelectionStart, restoredSelectionEnd);
 
-        // run action
+        // run action, and free memory
         runOnMenuClose();
+        runOnMenuClose = () => {};
     }
 
     onOpened: {
-        runOnMenuClose = function() {};
+        runOnMenuClose = () => {};
+    }
+
+    Instantiator {
+        active: target !== null && !target.readOnly && spellcheckhighlighter 
!== null && spellcheckhighlighter.active && 
spellcheckhighlighter.wordIsMisspelled
+        model: suggestions
+        delegate: MenuItem {
+            text: modelData
+            onClicked: {
+                deselectWhenMenuClosed = false;
+                runOnMenuClose = () => 
spellcheckhighlighter.replaceWord(modelData);
+            }
+        }
+        onObjectAdded: {
+            contextMenu.insertItem(0, object)
+        }
+        onObjectRemoved: contextMenu.removeItem(0)
+    }
+
+    MenuItem {
+        visible: target !== null && !target.readOnly && spellcheckhighlighter 
!== null && spellcheckhighlighter.active && 
spellcheckhighlighter.wordIsMisspelled && suggestions.length === 0
+        action: Action {
+            text: spellcheckhighlighter ? qsTr("No suggestions for 
\"%1\"").arg(spellcheckhighlighter.wordUnderMouse) : ''
+            enabled: false
+        }
+    }
+
+    MenuItem {
+        visible: target !== null && !target.readOnly && spellcheckhighlighter 
!== null && spellcheckhighlighter.active && 
spellcheckhighlighter.wordIsMisspelled
+        action: Action {
+            text: spellcheckhighlighter ? qsTr("Add \"%1\" to 
dictionary").arg(spellcheckhighlighter.wordUnderMouse) : ''
+            onTriggered: {
+                deselectWhenMenuClosed = false;
+                runOnMenuClose = () => 
spellcheckhighlighter.addWordToDictionary(spellcheckhighlighter.wordUnderMouse);
+            }
+        }
+    }
+
+    MenuItem {
+        visible: target !== null && !target.readOnly && spellcheckhighlighter 
!== null && spellcheckhighlighter.active && 
spellcheckhighlighter.wordIsMisspelled
+        action: Action {
+            text: qsTr("Ignore")
+            onTriggered: {
+                deselectWhenMenuClosed = false;
+                runOnMenuClose = () => 
spellcheckhighlighter.ignoreWord(spellcheckhighlighter.wordUnderMouse);
+            }
+        }
+    }
+
+    MenuItem {
+        visible: target !== null && !target.readOnly && spellcheckhighlighter 
!== null && spellcheckhighlighter.activable
+        checkable: true
+        checked: spellcheckhighlighter ? spellcheckhighlighter.active : false
+        text: spellcheckhighlighter ? qsTr("Enable Spellchecker") : ''
+        onCheckedChanged: spellcheckhighlighter.active = checked
+    }
+
+    MenuSeparator {
+        visible: target !== null && !target.readOnly
     }
 
     MenuItem {
         visible: target !== null && !target.readOnly
         action: Action {
             icon.name: "edit-undo-symbolic"
-            text: i18nc("@action:inmenu", "Undo")
+            text: qsTr("Undo")
             shortcut: StandardKey.Undo
         }
         enabled: target !== null && target.canUndo
         onTriggered: {
             deselectWhenMenuClosed = false;
-            runOnMenuClose = function() {target.undo()};
+            runOnMenuClose = () => target.undo();
         }
     }
     MenuItem {
         visible: target !== null && !target.readOnly
         action: Action {
             icon.name: "edit-redo-symbolic"
-            text: i18nc("@action:inmenu", "Redo")
+            text: qsTr("Redo")
             shortcut: StandardKey.Redo
         }
         enabled: target !== null && target.canRedo
         onTriggered: {
             deselectWhenMenuClosed = false;
-            runOnMenuClose = function() {target.redo()};
+            runOnMenuClose = () => target.redo();
         }
     }
     MenuSeparator {
@@ -129,52 +194,52 @@
         visible: target !== null && !target.readOnly && !targetIsPassword
         action: Action {
             icon.name: "edit-cut-symbolic"
-            text: i18nc("@action:inmenu", "Cut")
+            text: qsTr("Cut")
             shortcut: StandardKey.Cut
         }
         enabled: target !== null && target.selectedText
         onTriggered: {
             deselectWhenMenuClosed = false;
-            runOnMenuClose = function() {target.cut()}
+            runOnMenuClose = () => target.cut();
         }
     }
     MenuItem {
         action: Action {
             icon.name: "edit-copy-symbolic"
-            text: i18nc("@action:inmenu", "Copy")
+            text: qsTr("Copy")
             shortcut: StandardKey.Copy
         }
         enabled: target !== null && target.selectedText
         visible: !targetIsPassword
         onTriggered: {
             deselectWhenMenuClosed = false;
-            runOnMenuClose = function() {target.copy()}
+            runOnMenuClose = () => target.copy();
         }
     }
     MenuItem {
         visible: target !== null && !target.readOnly
         action: Action {
             icon.name: "edit-paste-symbolic"
-            text: i18nc("@action:inmenu", "Paste")
+            text: qsTr("Paste")
             shortcut: StandardKey.Paste
         }
         enabled: target !== null && target.canPaste
         onTriggered: {
             deselectWhenMenuClosed = false;
-            runOnMenuClose = function() {target.paste()};
+            runOnMenuClose = () => target.paste();
         }
     }
     MenuItem {
         visible: target !== null && !target.readOnly
         action: Action {
             icon.name: "edit-delete-symbolic"
-            text: i18nc("@action:inmenu", "Delete")
+            text: qsTr("Delete")
             shortcut: StandardKey.Delete
         }
         enabled: target !== null && target.selectedText
         onTriggered: {
             deselectWhenMenuClosed = false;
-            runOnMenuClose = function() {target.remove(target.selectionStart, 
target.selectionEnd)};
+            runOnMenuClose = () => target.remove(target.selectionStart, 
target.selectionEnd);
         }
     }
     MenuSeparator {
@@ -183,13 +248,13 @@
     MenuItem {
         action: Action {
             icon.name: "edit-select-all-symbolic"
-            text: i18nc("@action:inmenu", "Select All")
+            text: qsTr("Select All")
             shortcut: StandardKey.SelectAll
         }
         visible: !targetIsPassword
         onTriggered: {
             deselectWhenMenuClosed = false;
-            runOnMenuClose = function() {target.selectAll()};
+            runOnMenuClose = () => target.selectAll();
         }
     }
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qqc2-desktop-style-5.87.0/plugin/kquickstyleitem.cpp 
new/qqc2-desktop-style-5.88.0/plugin/kquickstyleitem.cpp
--- old/qqc2-desktop-style-5.87.0/plugin/kquickstyleitem.cpp    2021-10-02 
14:24:05.000000000 +0200
+++ new/qqc2-desktop-style-5.88.0/plugin/kquickstyleitem.cpp    2021-11-05 
15:32:42.000000000 +0100
@@ -183,7 +183,10 @@
         QStyleOptionButton *opt = qstyleoption_cast<QStyleOptionButton 
*>(m_styleoption);
         opt->text = text();
 
-        opt->icon = iconFromIconProperty();
+        if (m_iconDirty || opt->icon.isNull()) {
+            opt->icon = iconFromIconProperty();
+            m_iconDirty = false;
+        }
 
         auto iconSize = 
QSize(m_properties[QStringLiteral("iconWidth")].toInt(), 
m_properties[QStringLiteral("iconHeight")].toInt());
         if (iconSize.isEmpty()) {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qqc2-desktop-style-5.87.0/plugin/kquickstyleitem_p.h 
new/qqc2-desktop-style-5.88.0/plugin/kquickstyleitem_p.h
--- old/qqc2-desktop-style-5.87.0/plugin/kquickstyleitem_p.h    2021-10-02 
14:24:05.000000000 +0200
+++ new/qqc2-desktop-style-5.88.0/plugin/kquickstyleitem_p.h    2021-11-05 
15:32:42.000000000 +0100
@@ -348,6 +348,7 @@
     {
         if (m_properties != props) {
             m_properties = props;
+            m_iconDirty = true;
             Q_EMIT propertiesChanged();
         }
     }
@@ -484,6 +485,7 @@
     bool m_horizontal;
     bool m_transient;
     bool m_sharedWidget;
+    bool m_iconDirty = true;
 
     int m_minimum;
     int m_maximum;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qqc2-desktop-style-5.87.0/tests/CheckBox.qml 
new/qqc2-desktop-style-5.88.0/tests/CheckBox.qml
--- old/qqc2-desktop-style-5.87.0/tests/CheckBox.qml    2021-10-02 
14:24:05.000000000 +0200
+++ new/qqc2-desktop-style-5.88.0/tests/CheckBox.qml    2021-11-05 
15:32:42.000000000 +0100
@@ -11,6 +11,10 @@
 
         CheckBox {
         }
+        CheckBox {
+            checked: true
+            enabled: false
+        }
 
         CheckBox {
             text: "text"

Reply via email to