diff --git a/platform/ukui/dt-theme.cpp b/platform/ukui/dt-theme.cpp index 82402497a4b3608daf576a72c790f8e842e76a7b..f98dc99df6dea01e9f212518bd12f3118d4a8589 100644 --- a/platform/ukui/dt-theme.cpp +++ b/platform/ukui/dt-theme.cpp @@ -57,12 +57,18 @@ namespace UkuiQuick { } \ } else { \ if(d->m_##token != gra) { \ + if(gra->colorType() == DtColorType::Pure && gra->gradientStart() == gra->gradientEnd()) {\ + QColor color = gra->mixBackGroundColor(gra->gradientStart(), gra->gradientBackground(), 1);\ + d->m_##token.setPureColor(color); \ + d->m_##token.setColorType(DtColorType::Pure);\ + } else { \ + d->m_##token.setPureColor(QColor(0,0,0,0)); \ + d->m_##token.setColorType(DtColorType::Gradient);\ + } \ d->m_##token.setGradientDeg(gra->gradientDeg());\ d->m_##token.setGradientStart(gra->gradientStart());\ d->m_##token.setGradientEnd(gra->gradientEnd());\ d->m_##token.setGradientBackground(gra->gradientBackground());\ - d->m_##token.setPureColor(QColor(0,0,0,0)); \ - d->m_##token.setColorType(DtColorType::Gradient);\ Q_EMIT token##Changed(); \ } \ } \