kwin: Don't hold an X server grab while painting the screen
According to Pierre-Loup Griffais (Plagman on IRC) this is causing choppy VDPAU video playback when compositing is enabled. Removing these calls doesn't seem to cause any regressions, and the commit that added them doesn't give a reason. So let's just get rid of them for now. (cherry picked from commit 20e6349843d9bb838673a301330d7dc5d08401a5)
This commit is contained in:
parent
e262d4fde6
commit
e4d970ef5f
2 changed files with 1 additions and 4 deletions
|
@ -200,14 +200,13 @@ int SceneOpenGL::paint(QRegion damage, ToplevelList toplevels)
|
|||
stacking_order.append(windows[ c ]);
|
||||
}
|
||||
|
||||
grabXServer();
|
||||
XSync(display(), false);
|
||||
int mask = 0;
|
||||
paintScreen(&mask, &damage); // call generic implementation
|
||||
m_lastMask = mask;
|
||||
m_lastDamage = damage;
|
||||
glFlush();
|
||||
ungrabXServer();
|
||||
|
||||
if (m_overlayWindow->window()) // show the window only after the first pass, since
|
||||
m_overlayWindow->show(); // that pass may take long
|
||||
|
||||
|
|
|
@ -468,7 +468,6 @@ int SceneOpenGL::paint(QRegion damage, ToplevelList toplevels)
|
|||
stacking_order.append(windows[ c ]);
|
||||
}
|
||||
|
||||
grabXServer();
|
||||
glXWaitX();
|
||||
if (m_resetModelViewProjectionMatrix) {
|
||||
// reset model view projection matrix if required
|
||||
|
@ -487,7 +486,6 @@ int SceneOpenGL::paint(QRegion damage, ToplevelList toplevels)
|
|||
|
||||
glFlush();
|
||||
|
||||
ungrabXServer();
|
||||
if (m_overlayWindow->window()) // show the window only after the first pass,
|
||||
m_overlayWindow->show(); // since that pass may take long
|
||||
|
||||
|
|
Loading…
Reference in a new issue