render: Reset buffers after non-space-tracked rendering
This commit is contained in:
parent
81374ed282
commit
969cc8dae5
4 changed files with 51 additions and 6 deletions
|
|
@ -612,11 +612,23 @@ impl Surface {
|
|||
return Ok(());
|
||||
}
|
||||
|
||||
let nodes = state
|
||||
if render::needs_buffer_reset(&self.output, state) {
|
||||
self.surface.as_mut().unwrap().reset_buffers();
|
||||
}
|
||||
|
||||
let workspace = state
|
||||
.shell
|
||||
.active_space(&self.output)
|
||||
.space
|
||||
.windows()
|
||||
.active_space(&self.output);
|
||||
let nodes = workspace
|
||||
.get_fullscreen(&self.output)
|
||||
.map(|w| vec![w])
|
||||
.unwrap_or_else(||
|
||||
workspace
|
||||
.space
|
||||
.windows()
|
||||
.collect::<Vec<_>>()
|
||||
)
|
||||
.into_iter()
|
||||
.flat_map(|w| {
|
||||
w.toplevel()
|
||||
.get_surface()?
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue