Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
Plasma
KWin
Commits
648dab44
Commit
648dab44
authored
Oct 30, 2020
by
Vlad Zahorodnii
Browse files
platforms/drm: Don't intersect the final output damage twice
parent
dbcf43ab
Changes
1
Hide whitespace changes
Inline
Side-by-side
plugins/platforms/drm/egl_gbm_backend.cpp
View file @
648dab44
...
...
@@ -568,7 +568,8 @@ void EglGbmBackend::endRenderingFrameForScreen(int screenId,
Output
&
output
=
m_outputs
[
screenId
];
renderFramebufferToSurface
(
output
);
if
(
damagedRegion
.
intersected
(
output
.
output
->
geometry
()).
isEmpty
())
{
const
QRegion
dirty
=
damagedRegion
.
intersected
(
output
.
output
->
geometry
());
if
(
dirty
.
isEmpty
())
{
// If the damaged region of a window is fully occluded, the only
// rendering done, if any, will have been to repair a reused back
...
...
@@ -589,7 +590,7 @@ void EglGbmBackend::endRenderingFrameForScreen(int screenId,
if
(
output
.
damageHistory
.
count
()
>
10
)
{
output
.
damageHistory
.
removeLast
();
}
output
.
damageHistory
.
prepend
(
d
amagedRegion
.
intersected
(
output
.
output
->
geometry
())
);
output
.
damageHistory
.
prepend
(
d
irty
);
}
}
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment