Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package qt6ct for openSUSE:Factory checked 
in at 2023-01-28 21:07:23
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/qt6ct (Old)
 and      /work/SRC/openSUSE:Factory/.qt6ct.new.32243 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "qt6ct"

Sat Jan 28 21:07:23 2023 rev:2 rq:1061783 version:0.7

Changes:
--------
--- /work/SRC/openSUSE:Factory/qt6ct/qt6ct.changes      2022-10-08 
01:23:31.949996746 +0200
+++ /work/SRC/openSUSE:Factory/.qt6ct.new.32243/qt6ct.changes   2023-01-28 
21:09:18.366409948 +0100
@@ -1,0 +2,9 @@
+Sat Jan 28 14:05:30 UTC 2023 - kh Lai <[email protected]>
+
+- Update to 0.7
+  * fixed crash when loading default font
+  * changed font configuration format
+  * improved icon loader
+  * updated Czech translation
+
+-------------------------------------------------------------------

Old:
----
  qt6ct-0.6.tar.xz

New:
----
  qt6ct-0.7.tar.xz

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

Other differences:
------------------
++++++ qt6ct.spec ++++++
--- /var/tmp/diff_new_pack.BI5LIw/_old  2023-01-28 21:09:18.950413242 +0100
+++ /var/tmp/diff_new_pack.BI5LIw/_new  2023-01-28 21:09:18.954413264 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package qt6ct
 #
-# Copyright (c) 2022 SUSE LLC
+# Copyright (c) 2023 SUSE LLC
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -17,7 +17,7 @@
 
 
 Name:           qt6ct
-Version:        0.6
+Version:        0.7
 Release:        0
 Summary:        Qt 6 Configuration Tool
 License:        BSD-2-Clause

++++++ qt6ct-0.6.tar.xz -> qt6ct-0.7.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qt6ct-0.6/ChangeLog new/qt6ct-0.7/ChangeLog
--- old/qt6ct-0.6/ChangeLog     2022-09-29 21:52:13.000000000 +0200
+++ new/qt6ct-0.7/ChangeLog     2022-10-29 19:43:57.000000000 +0200
@@ -44,3 +44,9 @@
 * updated Russian translation
 * updated Spanish translation (Toni Estévez)
 * updated Greek translation (Dimitrios Glentadakis)
+
+Version 0.7
+* fixed crash when loading default font
+* changed font configuration format
+* improved icon loader
+* updated Czech translation (fri)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qt6ct-0.6/src/qt6ct/appearancepage.cpp 
new/qt6ct-0.7/src/qt6ct/appearancepage.cpp
--- old/qt6ct-0.6/src/qt6ct/appearancepage.cpp  2022-09-29 21:52:13.000000000 
+0200
+++ new/qt6ct-0.7/src/qt6ct/appearancepage.cpp  2022-10-29 19:43:57.000000000 
+0200
@@ -50,6 +50,7 @@
     QStringList keys = QStyleFactory::keys();
     keys.removeAll("qt6ct-style"); //hide qt6ct proxy style
     keys.removeAll("qt5gtk2"); //hide qt5gtk2 alias
+    keys.removeAll("gtk2"); //hide gtk2 alias
     m_ui->styleComboBox->addItems(keys);
 
     connect(m_ui->paletteComboBox, SIGNAL(activated(int)), 
SLOT(updatePalette()));
@@ -445,5 +446,4 @@
     settings.setValue("disabled_colors",disabledColors);
 
     settings.endGroup();
-
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qt6ct-0.6/src/qt6ct/fontspage.cpp 
new/qt6ct-0.7/src/qt6ct/fontspage.cpp
--- old/qt6ct-0.6/src/qt6ct/fontspage.cpp       2022-09-29 21:52:13.000000000 
+0200
+++ new/qt6ct-0.7/src/qt6ct/fontspage.cpp       2022-10-29 19:43:57.000000000 
+0200
@@ -62,8 +62,8 @@
 {
     QSettings settings(Qt6CT::configFile(), QSettings::IniFormat);
     settings.beginGroup("Fonts");
-    settings.setValue("general", m_ui->generalFontLabel->font());
-    settings.setValue("fixed", m_ui->fixedFontLabel->font());
+    settings.setValue("general", m_ui->generalFontLabel->font().toString());
+    settings.setValue("fixed", m_ui->fixedFontLabel->font().toString());
     settings.endGroup();
 }
 
@@ -89,8 +89,9 @@
 
 void FontsPage::loadFont(QSettings *settings, QLabel *label, const QString 
&key)
 {
-    QFont font = settings->value(key, QApplication::font()).value<QFont>();
-    label->setText(font.family () + " " + QString::number(font.pointSize ()));
+    QFont font = QApplication::font();
+    font.fromString(settings->value(key, 
QApplication::font().toString()).toString());
+    label->setText(font.family() + " " + QString::number(font.pointSize()));
     label->setFont(font);
 }
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qt6ct-0.6/src/qt6ct/iconthemepage.cpp 
new/qt6ct-0.7/src/qt6ct/iconthemepage.cpp
--- old/qt6ct-0.6/src/qt6ct/iconthemepage.cpp   2022-09-29 21:52:13.000000000 
+0200
+++ new/qt6ct-0.7/src/qt6ct/iconthemepage.cpp   2022-10-29 19:43:57.000000000 
+0200
@@ -33,6 +33,7 @@
 #include <QTreeWidgetItem>
 #include <QProgressBar>
 #include <QMetaObject>
+#include <QThread>
 #include "qt6ct.h"
 #include "iconthemepage.h"
 #include "ui_iconthemepage.h"
@@ -46,14 +47,20 @@
     m_progressBar->resize(200, m_progressBar->height());
     m_progressBar->setRange(0, 100);
 
-    QThread *thread = QThread::create(&IconThemePage::loadThemes, this);
-    thread->setParent(this);
-    connect(thread, SIGNAL(finished()), this, SLOT(onFinished()));
-    thread->start();
+    m_thread = QThread::create(&IconThemePage::loadThemes, this);
+    m_thread->setParent(this);
+    connect(m_thread, SIGNAL(finished()), SLOT(onFinished()));
+    m_thread->start();
 }
 
 IconThemePage::~IconThemePage()
 {
+    if(m_thread->isRunning())
+    {
+        m_stopped = true;
+        m_thread->wait();
+    }
+
     delete m_ui;
 }
 
@@ -67,14 +74,14 @@
 
 void IconThemePage::onFinished()
 {
-   m_ui->treeWidget->addTopLevelItems(m_items);
-   m_ui->treeWidget->resizeColumnToContents(0);
-   m_ui->treeWidget->resizeColumnToContents(1);
-   m_ui->treeWidget->resizeColumnToContents(2);
-   m_ui->treeWidget->resizeColumnToContents(3);
-   m_progressBar->hide();
-   m_items.clear();
-   readSettings();
+    m_ui->treeWidget->addTopLevelItems(m_items);
+    m_ui->treeWidget->resizeColumnToContents(0);
+    m_ui->treeWidget->resizeColumnToContents(1);
+    m_ui->treeWidget->resizeColumnToContents(2);
+    m_ui->treeWidget->resizeColumnToContents(3);
+    m_progressBar->hide();
+    m_items.clear();
+    readSettings();
 }
 
 void IconThemePage::resizeEvent(QResizeEvent *event)
@@ -105,7 +112,9 @@
 
 void IconThemePage::loadThemes()
 {
+    m_ui->treeWidget->clear();
     m_items.clear();
+    m_stopped = false;
 
     QFileInfoList themeFileList;
     for(const QString &path : Qt6CT::iconPaths())
@@ -117,6 +126,9 @@
             QDir themeDir(info.absoluteFilePath());
             themeFileList << themeDir.entryInfoList(QStringList() << 
"index.theme", QDir::Files);
         }
+
+        if(m_stopped)
+            return;
     }
 
     int i = 0;
@@ -125,6 +137,14 @@
         QTreeWidgetItem *item = loadTheme(info.canonicalFilePath());
         if(item)
             m_items << item;
+
+        if(m_stopped)
+        {
+            qDeleteAll(m_items);
+            m_items.clear();
+            return;
+        }
+
         QMetaObject::invokeMethod(m_progressBar, "setValue", 
Qt::QueuedConnection, Q_ARG(int, ++i * 100 / themeFileList.count()));
     }
 }
@@ -177,10 +197,17 @@
 
 QIcon IconThemePage::findIcon(const QString &themePath, int size, const 
QString &name)
 {
+    QStringList visited;
+    return findIconHelper(themePath, size, name, &visited);
+}
+
+QIcon IconThemePage::findIconHelper(const QString &themePath, int size, const 
QString &name, QStringList *visited)
+{
     QSettings config(themePath, QSettings::IniFormat);
     config.beginGroup("Icon Theme");
     QStringList dirs = config.value("Directories").toStringList();
     QStringList parents = config.value("Inherits").toStringList();
+    visited->append(config.value("Name").toString());
     bool haveInherits = !parents.isEmpty();
     config.endGroup();
 
@@ -237,10 +264,10 @@
     {
         QString parentThemePath = QDir(QFileInfo(themePath).path() + "/../" + 
parent).canonicalPath() + "/index.theme";
 
-        if(!QFile::exists(parentThemePath) || parentThemePath == themePath)
+        if(!QFile::exists(parentThemePath) || visited->contains(parent)) 
//protect against recursion
             continue;
 
-        QIcon icon = findIcon(parentThemePath, size, name);
+        QIcon icon = findIconHelper(parentThemePath, size, name, visited);
         if(!icon.isNull())
             return icon;
     }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qt6ct-0.6/src/qt6ct/iconthemepage.h 
new/qt6ct-0.7/src/qt6ct/iconthemepage.h
--- old/qt6ct-0.6/src/qt6ct/iconthemepage.h     2022-09-29 21:52:13.000000000 
+0200
+++ new/qt6ct-0.7/src/qt6ct/iconthemepage.h     2022-10-29 19:43:57.000000000 
+0200
@@ -30,7 +30,7 @@
 #define ICONTHEMEPAGE_H
 
 #include <QIcon>
-#include <QFutureWatcher>
+#include <atomic>
 #include "tabpage.h"
 
 namespace Ui {
@@ -39,6 +39,7 @@
 
 class QTreeWidgetItem;
 class QProgressBar;
+class QThread;
 
 class IconThemePage : public TabPage
 {
@@ -59,9 +60,12 @@
     void loadThemes();
     QTreeWidgetItem *loadTheme(const QString &path);
     QIcon findIcon(const QString &themePath, int size, const QString &name);
+    QIcon findIconHelper(const QString &themePath, int size, const QString 
&name, QStringList *visited);
     Ui::IconThemePage *m_ui;
     QProgressBar *m_progressBar;
+    QThread *m_thread;
     QList<QTreeWidgetItem *> m_items;
+    std::atomic_bool m_stopped = ATOMIC_VAR_INIT(false);
 };
 
 #endif // ICONTHEMEPAGE_H
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qt6ct-0.6/src/qt6ct/qt6ct.h 
new/qt6ct-0.7/src/qt6ct/qt6ct.h
--- old/qt6ct-0.6/src/qt6ct/qt6ct.h     2022-09-29 21:52:13.000000000 +0200
+++ new/qt6ct-0.7/src/qt6ct/qt6ct.h     2022-10-29 19:43:57.000000000 +0200
@@ -30,7 +30,7 @@
 #define QT6CT_H
 
 #define QT6CT_VERSION_MAJOR 0
-#define QT6CT_VERSION_MINOR 6
+#define QT6CT_VERSION_MINOR 7
 
 #define QT6CT_TOSTRING(s) #s
 #define QT6CT_STRINGIFY(s)         QT6CT_TOSTRING(s)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qt6ct-0.6/src/qt6ct/translations/qt6ct_cs.ts 
new/qt6ct-0.7/src/qt6ct/translations/qt6ct_cs.ts
--- old/qt6ct-0.6/src/qt6ct/translations/qt6ct_cs.ts    2022-09-29 
21:52:13.000000000 +0200
+++ new/qt6ct-0.7/src/qt6ct/translations/qt6ct_cs.ts    2022-10-29 
19:43:57.000000000 +0200
@@ -455,7 +455,7 @@
     <message>
         <location filename="../mainwindow.cpp" line="58"/>
         <source>Troubleshooting</source>
-        <translation type="unfinished"></translation>
+        <translation>Řešení potíží</translation>
     </message>
     <message>
         <location filename="../mainwindow.cpp" line="65"/>
@@ -475,12 +475,12 @@
     <message>
         <location filename="../mainwindow.cpp" line="125"/>
         <source>The &lt;b&gt;QT_QPA_PLATFORMTHEME&lt;/b&gt; environment 
variable is not set (required values: &lt;b&gt;qt6ct&lt;/b&gt; or 
&lt;b&gt;qt5ct&lt;/b&gt;).</source>
-        <translation type="unfinished"></translation>
+        <translation>Proměnná prostředí 
&lt;b&gt;QT_QPA_PLATFORMTHEME&lt;/b&gt; není nastavena (požadované hodnoty: 
&lt;b&gt;qt6ct&lt;/b&gt; nebo &lt;b&gt;qt5ct&lt;/b&gt;).</translation>
     </message>
     <message>
         <location filename="../mainwindow.cpp" line="130"/>
         <source>The &lt;b&gt;QT_QPA_PLATFORMTHEME&lt;/b&gt; environment 
variable is not set correctly (current value: &lt;b&gt;%1&lt;/b&gt;, required 
values: &lt;b&gt;qt6ct&lt;/b&gt; or &lt;b&gt;qt5ct&lt;/b&gt;).</source>
-        <translation type="unfinished"></translation>
+        <translation>Proměnná prostředí 
&lt;b&gt;QT_QPA_PLATFORMTHEME&lt;/b&gt; environment není nastavena správně 
(nynější hodnota: &lt;b&gt;%1&lt;/b&gt;, požadované hodnoty: 
&lt;b&gt;qt6ct&lt;/b&gt; nebo &lt;b&gt;qt5ct&lt;/b&gt;).</translation>
     </message>
     <message>
         <location filename="../mainwindow.cpp" line="137"/>
@@ -490,7 +490,7 @@
     <message>
         <location filename="../mainwindow.cpp" line="143"/>
         <source>The &lt;b&gt;%1&lt;/b&gt; plugin is compiled against 
incompatible Qt version (%2).</source>
-        <translation type="unfinished"></translation>
+        <translation>Přídavný modul &lt;b&gt;%1&lt;/b&gt; je zkompilován 
proti nekompatibilní verzi Qt (%2).</translation>
     </message>
 </context>
 <context>
@@ -796,12 +796,12 @@
     <message>
         <location filename="../troubleshootingpage.ui" line="20"/>
         <source>Ignored applications:</source>
-        <translation type="unfinished"></translation>
+        <translation>Přehlížené programy:</translation>
     </message>
     <message>
         <location filename="../troubleshootingpage.ui" line="29"/>
         <source>Add...</source>
-        <translation type="unfinished"></translation>
+        <translation>Přidat...</translation>
     </message>
     <message>
         <location filename="../troubleshootingpage.ui" line="40"/>
@@ -811,27 +811,27 @@
     <message>
         <location filename="../troubleshootingpage.ui" line="73"/>
         <source>Do not apply any styles and color schemes for the listed 
applications.</source>
-        <translation type="unfinished"></translation>
+        <translation>Pro uvedené aplikace nepoužívat žádné styly a 
barevná schémata.</translation>
     </message>
     <message>
         <location filename="../troubleshootingpage.ui" line="82"/>
         <source>Make top-level widgets use pure raster surfaces, and do not 
support non-native GL-based child widgets.</source>
-        <translation type="unfinished"></translation>
+        <translation>Doplňky nejvyšší úrovně používají čistě 
rastrové povrchy a nepodporují podřízené doplňky, které nejsou založeny 
na nativním GL.</translation>
     </message>
     <message>
         <location filename="../troubleshootingpage.ui" line="85"/>
         <source>Force raster surface</source>
-        <translation type="unfinished"></translation>
+        <translation>Vynutit rastrový povrch</translation>
     </message>
     <message>
         <location filename="../troubleshootingpage.cpp" line="64"/>
         <source>Select Application</source>
-        <translation type="unfinished"></translation>
+        <translation>Vybrat program</translation>
     </message>
     <message>
         <location filename="../troubleshootingpage.cpp" line="64"/>
         <source>Executable files (*)</source>
-        <translation type="unfinished"></translation>
+        <translation>Spustitelné soubory (*)</translation>
     </message>
 </context>
 </TS>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qt6ct-0.6/src/qt6ct-qtplugin/qt6ctplatformtheme.cpp 
new/qt6ct-0.7/src/qt6ct-qtplugin/qt6ctplatformtheme.cpp
--- old/qt6ct-0.6/src/qt6ct-qtplugin/qt6ctplatformtheme.cpp     2022-09-29 
21:52:13.000000000 +0200
+++ new/qt6ct-0.7/src/qt6ct-qtplugin/qt6ctplatformtheme.cpp     2022-10-29 
19:43:57.000000000 +0200
@@ -285,8 +285,10 @@
     settings.endGroup();
 
     settings.beginGroup("Fonts");
-    m_generalFont = settings.value("general", 
QVariant::fromValue(QPlatformTheme::font(QPlatformTheme::SystemFont))).value<QFont>();
-    m_fixedFont = settings.value("fixed", 
QVariant::fromValue(QPlatformTheme::font(QPlatformTheme::FixedFont))).value<QFont>();
+    m_generalFont = QGuiApplication::font();
+    m_generalFont.fromString(settings.value("general", 
QGuiApplication::font()).toString());
+    m_fixedFont = QGuiApplication::font();
+    m_fixedFont.fromString(settings.value("fixed", 
QGuiApplication::font()).toString());
     settings.endGroup();
 
     settings.beginGroup("Interface");

Reply via email to