Fix popup menu rendering in OS X 10.6-10.7. #2839

This commit is contained in:
John Preston 2017-01-15 16:12:35 +03:00
parent 8a8e0c1182
commit c58df19b93
2 changed files with 12 additions and 0 deletions

View File

@ -107,6 +107,12 @@ PopupMenu::Actions &PopupMenu::actions() {
void PopupMenu::paintEvent(QPaintEvent *e) {
Painter p(this);
#ifdef OS_MAC_OLD
p.setCompositionMode(QPainter::CompositionMode_Source);
p.fillRect(e->rect(), Qt::transparent);
p.setCompositionMode(QPainter::CompositionMode_SourceOver);
#endif // OS_MAC_OLD
auto ms = getms();
if (_a_show.animating(ms)) {
if (auto opacity = _a_opacity.current(ms, _hiding ? 0. : 1.)) {

View File

@ -156,6 +156,12 @@ void Tooltip::popup(const QPoint &m, const QString &text, const style::Tooltip *
void Tooltip::paintEvent(QPaintEvent *e) {
Painter p(this);
#ifdef OS_MAC_OLD
p.setCompositionMode(QPainter::CompositionMode_Source);
p.fillRect(e->rect(), Qt::transparent);
p.setCompositionMode(QPainter::CompositionMode_SourceOver);
#endif // OS_MAC_OLD
if (_useTransparency) {
p.setPen(_st->textBorder);
p.setBrush(_st->textBg);