diff --git a/applets/notifications/package/contents/ui/global/Globals.qml b/applets/notifications/package/contents/ui/global/Globals.qml --- a/applets/notifications/package/contents/ui/global/Globals.qml +++ b/applets/notifications/package/contents/ui/global/Globals.qml @@ -279,7 +279,7 @@ if (popupLocation & Qt.AlignTop) { // We want to calculate the new position based on its original target position to avoid positioning it and then // positioning it again, hence the temporary Qt.rect with explicit "y" and not just the popup as a whole - if (focusDialog && focusDialog.visible && focusDialog !== popup + if (focusDialog && focusDialog.visible && !(focusDialog instanceof NotificationPopup) && rectIntersect(focusDialog, Qt.rect(popup.x, y, popup.width, popup.height))) { y = focusDialog.y + focusDialog.height + popupEdgeDistance; } @@ -289,7 +289,7 @@ y += popup.height + (popup.height > 0 ? popupSpacing : 0); } else { y -= popup.height; - if (focusDialog && focusDialog.visible && focusDialog !== popup + if (focusDialog && focusDialog.visible && !(focusDialog instanceof NotificationPopup) && rectIntersect(focusDialog, Qt.rect(popup.x, y, popup.width, popup.height))) { y = focusDialog.y - popup.height - popupEdgeDistance; }