diff options
Diffstat (limited to 'source/kde/kdelibs/fixPopupForPlasmaboard.diff')
-rw-r--r-- | source/kde/kdelibs/fixPopupForPlasmaboard.diff | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/source/kde/kdelibs/fixPopupForPlasmaboard.diff b/source/kde/kdelibs/fixPopupForPlasmaboard.diff new file mode 100644 index 00000000..cf6dec7c --- /dev/null +++ b/source/kde/kdelibs/fixPopupForPlasmaboard.diff @@ -0,0 +1,43 @@ +Index: kdelibs/plasma/popupapplet.cpp +=================================================================== +--- kdelibs/plasma/popupapplet.cpp (Revision 976120) ++++ kdelibs/plasma/popupapplet.cpp (Arbeitskopie) +@@ -275,11 +275,7 @@ + //stuff out of your Dialog (extenders). Monitor WindowDeactivate events so we can + //emulate the same kind of behavior as Qt::Popup (close when you click somewhere + //else. +- dialog->setWindowFlags(Qt::FramelessWindowHint | Qt::WindowStaysOnTopHint); +- updateDialogFlags(); +- KWindowSystem::setState(dialog->winId(), NET::SkipTaskbar | NET::SkipPager); +- dialog->installEventFilter(q); +- ++ + q->setMinimumSize(QSize(0, 0)); + if (gWidget) { + Corona *corona = qobject_cast<Corona *>(gWidget->scene()); +@@ -289,14 +285,25 @@ + corona->addOffscreenWidget(gWidget); + dialog->setGraphicsWidget(gWidget); + } ++ ++ dialog->setWindowFlags(Qt::FramelessWindowHint | Qt::WindowStaysOnTopHint | (gWidget->windowFlags() & Qt::X11BypassWindowManagerHint)); + } else if (qWidget) { + QVBoxLayout *l_layout = new QVBoxLayout(dialog); + l_layout->setSpacing(0); + l_layout->setMargin(0); + l_layout->addWidget(qWidget); + dialog->adjustSize(); ++ ++ dialog->setWindowFlags(Qt::FramelessWindowHint | Qt::WindowStaysOnTopHint | (qWidget->windowFlags() & Qt::X11BypassWindowManagerHint)); + } ++ else { ++ dialog->setWindowFlags(Qt::FramelessWindowHint | Qt::WindowStaysOnTopHint); ++ } ++ updateDialogFlags(); ++ KWindowSystem::setState(dialog->winId(), NET::SkipTaskbar | NET::SkipPager); ++ dialog->installEventFilter(q); + ++ + QObject::connect(dialog, SIGNAL(dialogResized()), q, SLOT(dialogSizeChanged())); + QObject::connect(dialog, SIGNAL(dialogVisible(bool)), q, SLOT(dialogStatusChanged(bool))); + } |