From 8a05c7576b3cea2a191a7f13b9ef3e7853e68c74 Mon Sep 17 00:00:00 2001 From: Mavridis Philippe Date: Sun, 29 Oct 2023 14:54:54 +0200 Subject: [PATCH] Added "Follow Kicker panel style" feature This option overrides existing TastyMenu-specific transparency and blur options by using the appearance options for Kicker (transparency, blur, tint). This option works with both Kicker transparency enabled and disabled but ignores the background image option by design. Signed-off-by: Mavridis Philippe --- src/appearance.ui | 100 +++++++++++++++++++++++++++----------------- src/menuhandler.cpp | 30 ++++++++++++- src/menuhandler.h | 3 ++ src/tastymenu.kcfg | 5 +++ 4 files changed, 97 insertions(+), 41 deletions(-) diff --git a/src/appearance.ui b/src/appearance.ui index ef4728a..99fad35 100644 --- a/src/appearance.ui +++ b/src/appearance.ui @@ -9,7 +9,7 @@ 0 0 647 - 734 + 608 @@ -19,7 +19,7 @@ unnamed - + menuSize @@ -35,7 +35,7 @@ AlignBottom - + menuStyleLabel @@ -51,7 +51,7 @@ AlignBottom - + Icons @@ -67,7 +67,7 @@ AlignBottom - + MenuButton @@ -83,7 +83,7 @@ AlignBottom - + layout2 @@ -281,7 +281,7 @@ - + spacer6_2 @@ -315,7 +315,7 @@ - + layout3 @@ -508,7 +508,7 @@ Empty means default. - + spacer6_4 @@ -525,7 +525,7 @@ Empty means default. - + layout4 @@ -638,7 +638,7 @@ Empty means default. - + spacer6_6 @@ -655,33 +655,7 @@ Empty means default. - - - layout5 - - - - unnamed - - - - kcfg_Transparent - - - Transparent background - - - - - kcfg_BlurBackground - - - Blur transparent background - - - - - + spacer6_7 @@ -698,7 +672,7 @@ Empty means default. - + spacer6_7_2 @@ -715,8 +689,44 @@ Empty means default. + + + layout6 + + + + unnamed + + + + kcfg_Transparent + + + Transparent background + + + + + kcfg_BlurBackground + + + Blur transparent background + + + + + kcfg_UseKickerStyle + + + Follow Kicker panel style + + + + + + kcfg_MenuButtonText @@ -748,6 +758,18 @@ Empty means default. Appearance iconChanged(TQString) + + kcfg_UseKickerStyle + toggled(bool) + kcfg_BlurBackground + setDisabled(bool) + + + kcfg_UseKickerStyle + toggled(bool) + kcfg_Transparent + setDisabled(bool) + kicondialog.h diff --git a/src/menuhandler.cpp b/src/menuhandler.cpp index 1899029..f461e7c 100644 --- a/src/menuhandler.cpp +++ b/src/menuhandler.cpp @@ -1150,6 +1150,7 @@ void MenuHandler::slotModKickerConf() fillMoreUsed(); else if( currentMenuMode == RecentlyUsed ) fillRecentlyUsed(); + setBackground(); } @@ -1703,10 +1704,17 @@ void MenuHandler::setBackground() rootPix = nullptr; } - if (prefSkel->transparent()) { + if (isTransparent()) { rootPix = new KRootPixmap(this); rootPix->setCustomPainting(true); - rootPix->setBlurEffect(0.0, prefSkel->blurBackground() ? 4.0 : 0.0); + rootPix->setBlurEffect(0.0, isBlurred() ? 4.0 : 0.0); + + if (prefSkel->useKickerStyle()) { + kickerConf->setGroup("General"); + double tint = double(kickerConf->readDoubleNumEntry("TintValue")) / 100; + rootPix->setFadeEffect(tint, kickerConf->readColorEntry("TintColor")); + } + connect(rootPix, TQT_SIGNAL(backgroundUpdated(const TQPixmap&)), TQT_SLOT(updateBackground(const TQPixmap&))); rootPix->start(); @@ -1718,5 +1726,23 @@ void MenuHandler::updateBackground(const TQPixmap &pix) menu->setPaletteBackgroundPixmap(pix); } +bool MenuHandler::isTransparent() +{ + if (prefSkel->useKickerStyle()) { + kickerConf->setGroup("General"); + return kickerConf->readBoolEntry("Transparent", false); + } + return prefSkel->transparent(); +} + +bool MenuHandler::isBlurred() +{ + if (prefSkel->useKickerStyle()) { + kickerConf->setGroup("General"); + return kickerConf->readBoolEntry("MenubarPanelBlurred", false); + } + return prefSkel->blurBackground(); +} + #include "menuhandler.moc" //EOF diff --git a/src/menuhandler.h b/src/menuhandler.h index e020f60..d430c12 100644 --- a/src/menuhandler.h +++ b/src/menuhandler.h @@ -69,6 +69,9 @@ public: prefSkel->setNewInstalledApps( newInstalledList ); prefSkel->setNewInstalledAppsTimeStamps( newInstalledTimeStamps );} + bool isTransparent(); + bool isBlurred(); + signals: void newApplications(int); void kickerConfChanged(); diff --git a/src/tastymenu.kcfg b/src/tastymenu.kcfg index e896a36..8e0b664 100644 --- a/src/tastymenu.kcfg +++ b/src/tastymenu.kcfg @@ -111,6 +111,11 @@ false + + + + false +