diff --git a/0004-fix-fix-sonarqube-bugs.patch b/0004-fix-fix-sonarqube-bugs.patch new file mode 100644 index 0000000000000000000000000000000000000000..3400498910aa790faeb6e95ec1cc2dae0e94d717 --- /dev/null +++ b/0004-fix-fix-sonarqube-bugs.patch @@ -0,0 +1,299 @@ +From fe2e4820df3462e81fc49077c73e9ec064f71e89 Mon Sep 17 00:00:00 2001 +From: yuanxing +Date: Thu, 27 Mar 2025 09:53:27 +0800 +Subject: [PATCH] fix(*):fix sonarqube bugs +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +- 修复sonarqube扫描失败项 + +Relates #76290 +--- + .../kiran-application-private.cpp | 2 +- + .../kiran-hover-tips/kiran-hover-tips.cpp | 3 ++- + .../kiran-icon-line-edit-private.cpp | 19 ++++++++------- + .../kiran-image-selector/kiran-image-list.cpp | 4 ++-- + .../kiran-line-edit-private.cpp | 12 ++++++---- + .../kiran-message-box-private.h | 1 + + .../kiran-siderbar-delegate.cpp | 4 ---- + .../kiran-siderbar-widget-private.cpp | 24 ++++++++++--------- + src/widgets/kiran-tips/kiran-tips-private.h | 4 ++-- + .../kiran-titlebar-window-private.cpp | 16 +++++++++---- + 10 files changed, 49 insertions(+), 40 deletions(-) + +diff --git a/src/widgets/kiran-application/kiran-application-private.cpp b/src/widgets/kiran-application/kiran-application-private.cpp +index acdfefb..c0b88dd 100644 +--- a/src/widgets/kiran-application/kiran-application-private.cpp ++++ b/src/widgets/kiran-application/kiran-application-private.cpp +@@ -18,7 +18,7 @@ + #include + #include + +-KiranApplicationPrivate::KiranApplicationPrivate(KiranApplication* ptr) ++KiranApplicationPrivate::KiranApplicationPrivate(KiranApplication* ptr) : q_ptr(ptr) + { + } + +diff --git a/src/widgets/kiran-hover-tips/kiran-hover-tips.cpp b/src/widgets/kiran-hover-tips/kiran-hover-tips.cpp +index 785aceb..7087f9f 100644 +--- a/src/widgets/kiran-hover-tips/kiran-hover-tips.cpp ++++ b/src/widgets/kiran-hover-tips/kiran-hover-tips.cpp +@@ -96,6 +96,8 @@ void KiranHoverTips::setTimeout(quint32 ms) + KiranHoverTipsPrivate::KiranHoverTipsPrivate(KiranHoverTips *ptr) : QObject(ptr) + { + q_ptr = ptr; ++ m_iconLabel = nullptr; ++ m_textLabel = nullptr; + } + + KiranHoverTipsPrivate::~KiranHoverTipsPrivate() +@@ -125,7 +127,6 @@ void KiranHoverTipsPrivate::init() + + bool KiranHoverTipsPrivate::event(QEvent *event) + { +- QEvent::Type eventType = event->type(); + if (event->type() == QEvent::Timer) + { + auto timerEvent = dynamic_cast(event); +diff --git a/src/widgets/kiran-icon-line-edit/kiran-icon-line-edit-private.cpp b/src/widgets/kiran-icon-line-edit/kiran-icon-line-edit-private.cpp +index 1a5a687..2cb4dc5 100644 +--- a/src/widgets/kiran-icon-line-edit/kiran-icon-line-edit-private.cpp ++++ b/src/widgets/kiran-icon-line-edit/kiran-icon-line-edit-private.cpp +@@ -1,21 +1,22 @@ + /** +- * Copyright (c) 2020 ~ 2021 KylinSec Co., Ltd. ++ * Copyright (c) 2020 ~ 2021 KylinSec Co., Ltd. + * kiranwidgets-qt5 is licensed under Mulan PSL v2. +- * You can use this software according to the terms and conditions of the Mulan PSL v2. ++ * You can use this software according to the terms and conditions of the Mulan PSL v2. + * You may obtain a copy of Mulan PSL v2 at: +- * http://license.coscl.org.cn/MulanPSL2 +- * THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND, +- * EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT, +- * MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE. +- * See the Mulan PSL v2 for more details. +- * ++ * http://license.coscl.org.cn/MulanPSL2 ++ * THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND, ++ * EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT, ++ * MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE. ++ * See the Mulan PSL v2 for more details. ++ * + * Author: liuxinhao + */ + + #include "kiran-icon-line-edit-private.h" + + KiranIconLineEditPrivate::KiranIconLineEditPrivate(QObject* parent) +- : QObject(parent) ++ : QObject(parent), ++ q_ptr(nullptr) + { + } + +diff --git a/src/widgets/kiran-image-selector/kiran-image-list.cpp b/src/widgets/kiran-image-selector/kiran-image-list.cpp +index d7756df..722239f 100644 +--- a/src/widgets/kiran-image-selector/kiran-image-list.cpp ++++ b/src/widgets/kiran-image-selector/kiran-image-list.cpp +@@ -99,7 +99,7 @@ void KiranImageList::removeImageItem(const QString &imagePath) { + + for( QList::iterator iter=m_itemList.begin(); + iter!=m_itemList.end(); +- iter++ ){ ++ ++iter ){ + if((*iter)->imagePath()==imagePath){ + deletePos = iter; + break; +@@ -123,7 +123,7 @@ void KiranImageList::removeImageItem(KiranImageItem *item) { + auto deletePos = m_itemList.end(); + for( QList::iterator iter=m_itemList.begin(); + iter!=m_itemList.end(); +- iter++){ ++ ++iter ){ + if( *iter == item ){ + deletePos = iter; + break; +diff --git a/src/widgets/kiran-line-edit/kiran-line-edit-private.cpp b/src/widgets/kiran-line-edit/kiran-line-edit-private.cpp +index 8e1c5f3..aaadaad 100644 +--- a/src/widgets/kiran-line-edit/kiran-line-edit-private.cpp ++++ b/src/widgets/kiran-line-edit/kiran-line-edit-private.cpp +@@ -3,24 +3,26 @@ + // + + #include "kiran-line-edit-private.h" ++#include + #include + #include +-#include + +-KiranLineEditPrivate::KiranLineEditPrivate(QObject *parent) : QObject(parent) ++KiranLineEditPrivate::KiranLineEditPrivate(QObject *parent) ++ : QObject(parent), ++ q_ptr(nullptr), ++ m_lineEdit(nullptr), ++ m_layout(nullptr) + { +- + } + + KiranLineEditPrivate::~KiranLineEditPrivate() + { +- + } + + void KiranLineEditPrivate::init() + { + m_layout = new QHBoxLayout(q_ptr); +- m_layout->setContentsMargins(1,1,1,1); ++ m_layout->setContentsMargins(1, 1, 1, 1); + m_layout->setSpacing(0); + + m_lineEdit = new QLineEdit(q_ptr); +diff --git a/src/widgets/kiran-message-box/kiran-message-box-private.h b/src/widgets/kiran-message-box/kiran-message-box-private.h +index b9dd2ab..ff5fddf 100644 +--- a/src/widgets/kiran-message-box/kiran-message-box-private.h ++++ b/src/widgets/kiran-message-box/kiran-message-box-private.h +@@ -34,6 +34,7 @@ using ButtonRole = QDialogButtonBox::ButtonRole; + class KiranMessageBoxPrivate + { + Q_DECLARE_PUBLIC(KiranMessageBox); ++ Q_DISABLE_COPY(KiranMessageBoxPrivate); + private: + KiranMessageBoxPrivate(KiranMessageBox* ptr); + ~KiranMessageBoxPrivate() = default; +diff --git a/src/widgets/kiran-sidebar-widget/kiran-siderbar-delegate.cpp b/src/widgets/kiran-sidebar-widget/kiran-siderbar-delegate.cpp +index 2ad8fbe..7f91c63 100644 +--- a/src/widgets/kiran-sidebar-widget/kiran-siderbar-delegate.cpp ++++ b/src/widgets/kiran-sidebar-widget/kiran-siderbar-delegate.cpp +@@ -239,10 +239,6 @@ void KiranSiderbarDelegate::doLayout(const QStyleOptionViewItem &option, const Q + QRect &pixmapRect, QRect &textRect, + QRect &statusDescRect, QRect &indicatorRect) const + { +- const QStyle::State &styleState = option.state; +- const QWidget *widget = option.widget; +- QStyle *style = widget ? widget->style() : QApplication::style(); +- + QSize pixmapSize, textSize, statusDescSize, indicatorSize; + sizeFromContents(option, index, pixmapSize, textSize, statusDescSize, indicatorSize); + +diff --git a/src/widgets/kiran-sidebar-widget/kiran-siderbar-widget-private.cpp b/src/widgets/kiran-sidebar-widget/kiran-siderbar-widget-private.cpp +index 6838def..2933cff 100644 +--- a/src/widgets/kiran-sidebar-widget/kiran-siderbar-widget-private.cpp ++++ b/src/widgets/kiran-sidebar-widget/kiran-siderbar-widget-private.cpp +@@ -1,23 +1,25 @@ + /** +- * Copyright (c) 2020 ~ 2021 KylinSec Co., Ltd. ++ * Copyright (c) 2020 ~ 2021 KylinSec Co., Ltd. + * kiranwidgets-qt5 is licensed under Mulan PSL v2. +- * You can use this software according to the terms and conditions of the Mulan PSL v2. ++ * You can use this software according to the terms and conditions of the Mulan PSL v2. + * You may obtain a copy of Mulan PSL v2 at: +- * http://license.coscl.org.cn/MulanPSL2 +- * THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND, +- * EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT, +- * MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE. +- * See the Mulan PSL v2 for more details. +- * ++ * http://license.coscl.org.cn/MulanPSL2 ++ * THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND, ++ * EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT, ++ * MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE. ++ * See the Mulan PSL v2 for more details. ++ * + * Author: liuxinhao + */ + + #include "kiran-siderbar-widget-private.h" +-#include "kiran-siderbar-delegate.h" + #include ++#include "kiran-siderbar-delegate.h" + + KiranSidebarWidgetPrivate::KiranSidebarWidgetPrivate(QObject* parent) +- : QObject(parent) ++ : QObject(parent), ++ q_ptr(nullptr), ++ m_delegate(nullptr) + { + } + +@@ -29,7 +31,7 @@ void KiranSidebarWidgetPrivate::init(KiranSidebarWidget* ptr) + { + q_ptr = ptr; + q_ptr->setSpacing(8); +- q_ptr->setViewportMargins(8,8,8,8); ++ q_ptr->setViewportMargins(8, 8, 8, 8); + q_ptr->setSelectionBehavior(QListView::SelectRows); + q_ptr->setSelectionMode(QListView::SingleSelection); + q_ptr->setAlternatingRowColors(false); +diff --git a/src/widgets/kiran-tips/kiran-tips-private.h b/src/widgets/kiran-tips/kiran-tips-private.h +index 4f72b15..1ab41ef 100644 +--- a/src/widgets/kiran-tips/kiran-tips-private.h ++++ b/src/widgets/kiran-tips/kiran-tips-private.h +@@ -35,8 +35,8 @@ public: + + private: + KiranTips *q_ptr; +- bool m_hideOnClicked; +- bool m_animationEnable; ++ bool m_hideOnClicked = true; ++ bool m_animationEnable = false; + + KiranTips::ShowPostionHint m_showPostion = KiranTips::POSITION_RIGHT; + QPropertyAnimation *m_EnterAnimation = nullptr; +diff --git a/src/widgets/kiran-titlebar-window/kiran-titlebar-window-private.cpp b/src/widgets/kiran-titlebar-window/kiran-titlebar-window-private.cpp +index cc378c3..e34a85e 100644 +--- a/src/widgets/kiran-titlebar-window/kiran-titlebar-window-private.cpp ++++ b/src/widgets/kiran-titlebar-window/kiran-titlebar-window-private.cpp +@@ -45,7 +45,7 @@ const int KiranTitlebarWindowPrivate::shadowRadius = 15; + const QColor KiranTitlebarWindowPrivate::shadowActiveColor = QColor(0, 0, 0, 150); + const QColor KiranTitlebarWindowPrivate::shadowInactiveColor = QColor(0, 0, 0, 75); + +-const QSize KiranTitlebarWindowPrivate::iconSize = QSize(24,24); ++const QSize KiranTitlebarWindowPrivate::iconSize = QSize(24, 24); + + extern void qt_blurImage(QPainter *p, QImage &blurImage, qreal radius, bool quality, bool alphaOnly, int transposed = 0); + +@@ -55,10 +55,16 @@ KiranTitlebarWindowPrivate::KiranTitlebarWindowPrivate(KiranTitlebarWindow *ptr) + : q_ptr(ptr), + m_layout(nullptr), + m_frame(nullptr), ++ m_frameLayout(nullptr), ++ m_titlebarColorBlock(nullptr), + m_titlebarWidget(nullptr), ++ m_titleBarLayout(nullptr), ++ m_tittlebarSpliteLine(nullptr), + m_titleIcon(nullptr), + m_title(nullptr), ++ m_titlebarCenterWidget(nullptr), + m_customLayout(nullptr), ++ m_titlebarRirghtWidget(nullptr), + m_buttonHints(KiranTitlebarWindow::TitlebarMinMaxCloseHints), + m_btnMin(nullptr), + m_btnMax(nullptr), +@@ -101,10 +107,10 @@ void KiranTitlebarWindowPrivate::init() + + void KiranTitlebarWindowPrivate::setIcon(const QIcon &icon) + { +- QPixmap pixmap = icon.pixmap(16,16); +- if( pixmap.isNull() ) ++ QPixmap pixmap = icon.pixmap(16, 16); ++ if (pixmap.isNull()) + { +- m_titleIcon->setFixedSize(QSize(0,0)); ++ m_titleIcon->setFixedSize(QSize(0, 0)); + } + else + { +@@ -328,7 +334,7 @@ void KiranTitlebarWindowPrivate::initOtherWidget() + m_titleIcon = new QLabel(m_titlebarWidget); + m_titleIcon->setObjectName("KiranTitlebarIcon"); + m_titleIcon->setAccessibleName("WindowTitlebarIcon"); +- m_titleIcon->setFixedSize(QSize(0,0)); ++ m_titleIcon->setFixedSize(QSize(0, 0)); + m_titleBarLayout->setTitleBarIconLabel(m_titleIcon); + m_titleBarLayout->setTitleBarIconMargin(QMargins(12, 0, 0, 0)); + +-- +2.33.0 + diff --git a/kiran-widgets-qt5.spec b/kiran-widgets-qt5.spec index 837548335d4c45b5b95e4bc3029f7c13aa79cd84..51e9d6c7529314fb2b07f043c63b8104e61e6679 100644 --- a/kiran-widgets-qt5.spec +++ b/kiran-widgets-qt5.spec @@ -1,6 +1,6 @@ Name: kiran-widgets-qt5 Version: 2.4.2 -Release: 6%{?dist} +Release: 7%{?dist} Summary: Encapsulated QT Widget Summary(zh_CN): 封装的Qt小部件 @@ -11,6 +11,7 @@ Patch0000: 0000-fix-KiranPasswordEdit-default-password-input-does-no.patch Patch0001: 0001-feat-KiranTitlebarWindow-Customize-title-bar-to-send.patch Patch0002: 0002-fix-KiranTitlebarWindow-Fix-the-issue-of-blank-icons.patch Patch0003: 0003-fix-KiranColorBlock-Fix-the-issue-of-invalid-set-rad.patch +Patch0004: 0004-fix-fix-sonarqube-bugs.patch BuildRequires: cmake >= 3.5 BuildRequires: gcc-c++ @@ -77,6 +78,9 @@ Requires: %{name}%{?_isa} = %{version}-%{release} %{_datadir}/kiranwidgets-qt5/examples/* %changelog +* Thu Mar 27 2025 yuanxing - 2.4.2-7 +- KYOS-F: Fix the sonarqube bugs.(#76290) + * Wed Nov 20 2024 Funda Wang - 2.4.2-6 - adopt to new cmake macro