panels:fix switch to explicit screens and back

--some improvements introduced to 0.10.7 broke the
screen switching codepath for panels. With this
fix users can again move panels around for their
screens

BUG:448569
FIXED-IN:0.10.8
pull/27/head
Michail Vourlakos 3 years ago
parent 57ec2b3851
commit d346e54d41

@ -972,10 +972,16 @@ void Positioner::initSignalingForLocationChangeSliding()
//! SCREEN
connect(m_view, &QQuickView::screenChanged, this, [&]() {
if (!m_view || !m_nextScreen) {
return;
}
//if panels are not excluded from confirmed geometry check then they are stuck in sliding out end
//and they do not switch to new screen geometry
bool confirmedgeometry = m_view->behaveAsPlasmaPanel() || (!m_view->behaveAsPlasmaPanel() && m_nextScreen->geometry().contains(m_view->geometry().center()));
if (m_nextScreen
&& m_nextScreen == m_view->screen()
&& m_nextScreen->geometry().contains(m_view->geometry().center())) {
&& confirmedgeometry) {
bool isrelocationlastevent = isLastHidingRelocationEvent();
m_nextScreen = nullptr;
m_nextScreenName = "";

Loading…
Cancel
Save