From 62527f4f8876c00e96fce97193eb8c9739d14d87 Mon Sep 17 00:00:00 2001 From: Yuhang Zhao <2546789017@qq.com> Date: Tue, 20 Dec 2022 11:59:25 +0800 Subject: [PATCH] minor code tidies Signed-off-by: Yuhang Zhao <2546789017@qq.com> --- src/core/micamaterial.cpp | 25 +++++++++++++------------ src/core/utils_linux.cpp | 2 +- 2 files changed, 14 insertions(+), 13 deletions(-) diff --git a/src/core/micamaterial.cpp b/src/core/micamaterial.cpp index f5b6cc8..f4d9258 100644 --- a/src/core/micamaterial.cpp +++ b/src/core/micamaterial.cpp @@ -35,7 +35,6 @@ #include #include #ifndef FRAMELESSHELPER_CORE_NO_PRIVATE -# include # include #endif // FRAMELESSHELPER_CORE_NO_PRIVATE @@ -87,14 +86,7 @@ struct MicaMaterialData Q_GLOBAL_STATIC(MicaMaterialData, g_micaMaterialData) -#ifdef FRAMELESSHELPER_CORE_NO_PRIVATE -[[nodiscard]] static inline Qt::Alignment visualAlignment - (const Qt::LayoutDirection direction, const Qt::Alignment alignment) -{ - Q_UNUSED(direction); - return alignment; -} -#else // !FRAMELESSHELPER_CORE_NO_PRIVATE +#ifndef FRAMELESSHELPER_CORE_NO_PRIVATE template [[nodiscard]] static inline constexpr int qt_static_shift(const int value) { @@ -437,6 +429,7 @@ static inline void expblur(QImage &img, qreal radius, const bool improvedQuality expblur<12, 10, false>(blurImage, radius, quality, transposed); } } +#endif // FRAMELESSHELPER_CORE_NO_PRIVATE /*! Transforms an \a alignment of Qt::AlignLeft or Qt::AlignRight @@ -450,11 +443,19 @@ static inline void expblur(QImage &img, qreal radius, const bool improvedQuality \sa QWidget::layoutDirection */ [[nodiscard]] static inline Qt::Alignment visualAlignment - (const Qt::LayoutDirection direction, const Qt::Alignment alignment) + (const Qt::LayoutDirection direction, Qt::Alignment alignment) { - return QGuiApplicationPrivate::visualAlignment(direction, alignment); + if (!(alignment & Qt::AlignHorizontal_Mask)) { + alignment |= Qt::AlignLeft; + } + if (!(alignment & Qt::AlignAbsolute) && (alignment & (Qt::AlignLeft | Qt::AlignRight))) { + if (direction == Qt::RightToLeft) { + alignment ^= (Qt::AlignLeft | Qt::AlignRight); + } + alignment |= Qt::AlignAbsolute; + } + return alignment; } -#endif // FRAMELESSHELPER_CORE_NO_PRIVATE /*! Returns a new rectangle of the specified \a size that is aligned to the given diff --git a/src/core/utils_linux.cpp b/src/core/utils_linux.cpp index 0be4cf0..2e2e257 100644 --- a/src/core/utils_linux.cpp +++ b/src/core/utils_linux.cpp @@ -413,7 +413,7 @@ bool Utils::setBlurBehindWindowEnabled(const WId windowId, const BlurMode mode, return false; } static const xcb_atom_t deepinAtom = internAtom(ATOM_NET_WM_DEEPIN_BLUR_REGION_MASK); - if (deepinAtom != XCB_NONE) { + if ((deepinAtom != XCB_NONE) && isSupportedByWindowManager(deepinAtom)) { clearWindowProperty(windowId, deepinAtom); } const auto blurMode = [mode]() -> BlurMode {