diff options
author | Jani Hautakangas <jani.hautakangas@nokia.com> | 2011-05-12 10:54:46 (GMT) |
---|---|---|
committer | Jani Hautakangas <jani.hautakangas@nokia.com> | 2011-05-12 12:12:16 (GMT) |
commit | 708fcbe457304ac8035c20302e6dc6628a0f6aa4 (patch) | |
tree | fb45e219cddadca8e196c402c60bc748ef87930a | |
parent | 877bb2132bdd94a62526a5fea6a7e5f6f813395e (diff) | |
download | Qt-708fcbe457304ac8035c20302e6dc6628a0f6aa4.zip Qt-708fcbe457304ac8035c20302e6dc6628a0f6aa4.tar.gz Qt-708fcbe457304ac8035c20302e6dc6628a0f6aa4.tar.bz2 |
Fix for rounded corners bug in QMenu
Currently QMenus have opaque black corners in cases
where theme supports rounded corners. This patch fixes
it by setting WA_TranslucentBackground flag to QMenu
widget.
Task-number: QTBUG-16857
Reviewed-by: Sami Merila
-rw-r--r-- | src/gui/widgets/qmenu.cpp | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/gui/widgets/qmenu.cpp b/src/gui/widgets/qmenu.cpp index 2f4bb4b..d573ebf 100644 --- a/src/gui/widgets/qmenu.cpp +++ b/src/gui/widgets/qmenu.cpp @@ -82,6 +82,10 @@ # include <private/qt_cocoa_helpers_mac_p.h> #endif +#ifdef Q_WS_S60 +# include "private/qt_s60_p.h" +#endif + QT_BEGIN_NAMESPACE @@ -172,6 +176,14 @@ void QMenuPrivate::init() q->addAction(selectAction); q->addAction(cancelAction); #endif + +#ifdef Q_WS_S60 + if (S60->avkonComponentsSupportTransparency) { + bool noSystemBackground = q->testAttribute(Qt::WA_NoSystemBackground); + q->setAttribute(Qt::WA_TranslucentBackground); // also sets WA_NoSystemBackground + q->setAttribute(Qt::WA_NoSystemBackground, noSystemBackground); // restore system background attribute + } +#endif } int QMenuPrivate::scrollerHeight() const |