don't always do the "dialog inside panel"

if a window is not outsideParentWindow or all the borders are enabled, don't do the trick
this fixes positioning of systray tooltips
This commit is contained in:
Marco Martin 2014-03-05 17:45:36 +01:00
parent 1dc6d98aa3
commit 0f4654643f

View File

@ -340,7 +340,7 @@ QPoint DialogProxy::popupPosition(QQuickItem *item, const QSize &size, Qt::Align
//not actually the current window. See QWindow::screen() documentation
QRect avail = screenForItem(item)->availableGeometry();
if (outsideParentWindow && m_frameSvgItem->enabledBorders() != Plasma::FrameSvg::AllBorders) {
//make the panel look it's inside the panel, in order to not make it look cutted
switch (m_location) {
case Plasma::Types::LeftEdge:
@ -353,6 +353,7 @@ QPoint DialogProxy::popupPosition(QQuickItem *item, const QSize &size, Qt::Align
avail.setRight(qMin(avail.right(), parentGeometryBounds.right()));
break;
}
}
if (dialogPos.x() < avail.left()) {
// popup hits lhs