Merge branch 'Plasma/5.14'
This commit is contained in:
commit
8971af19e3
3 changed files with 13 additions and 1 deletions
|
@ -372,6 +372,12 @@ void DimInactiveEffect::windowClosed(EffectWindow *w)
|
||||||
void DimInactiveEffect::windowDeleted(EffectWindow *w)
|
void DimInactiveEffect::windowDeleted(EffectWindow *w)
|
||||||
{
|
{
|
||||||
m_forceDim.remove(w);
|
m_forceDim.remove(w);
|
||||||
|
|
||||||
|
// FIXME: Sometimes we can miss the window close signal because KWin
|
||||||
|
// can activate a window that is not ready for painting and the window
|
||||||
|
// gets destroyed immediately. So, we have to remove active transitions
|
||||||
|
// for that window here, otherwise we'll crash in postPaintScreen.
|
||||||
|
m_transitions.remove(w);
|
||||||
}
|
}
|
||||||
|
|
||||||
void DimInactiveEffect::activeFullScreenEffectChanged()
|
void DimInactiveEffect::activeFullScreenEffectChanged()
|
||||||
|
|
|
@ -205,11 +205,17 @@ QPlatformOpenGLContext *Integration::createPlatformOpenGLContext(QOpenGLContext
|
||||||
void Integration::initScreens()
|
void Integration::initScreens()
|
||||||
{
|
{
|
||||||
QVector<Screen*> newScreens;
|
QVector<Screen*> newScreens;
|
||||||
|
newScreens.reserve(qMax(screens()->count(), 1));
|
||||||
for (int i = 0; i < screens()->count(); i++) {
|
for (int i = 0; i < screens()->count(); i++) {
|
||||||
auto screen = new Screen(i);
|
auto screen = new Screen(i);
|
||||||
screenAdded(screen);
|
screenAdded(screen);
|
||||||
newScreens << screen;
|
newScreens << screen;
|
||||||
}
|
}
|
||||||
|
if (newScreens.isEmpty()) {
|
||||||
|
auto dummyScreen = new Screen(-1);
|
||||||
|
screenAdded(dummyScreen);
|
||||||
|
newScreens << dummyScreen;
|
||||||
|
}
|
||||||
while (!m_screens.isEmpty()) {
|
while (!m_screens.isEmpty()) {
|
||||||
destroyScreen(m_screens.takeLast());
|
destroyScreen(m_screens.takeLast());
|
||||||
}
|
}
|
||||||
|
|
|
@ -178,7 +178,7 @@ void UserActionsMenu::show(const QRect &pos, const QWeakPointer<AbstractClient>
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (!m_client.isNull())
|
if (!m_client.isNull())
|
||||||
m_client.data()->blockActivityUpdates(true);
|
m_client.data()->blockActivityUpdates(false);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue