render: force black background color for fullscreen nodes
This commit is contained in:
parent
609f6f99cd
commit
41754e268f
6 changed files with 46 additions and 4 deletions
|
|
@ -8,7 +8,7 @@ use {
|
|||
scale::Scale,
|
||||
state::State,
|
||||
theme::Color,
|
||||
tree::Node,
|
||||
tree::{Node, OutputNode},
|
||||
utils::numcell::NumCell,
|
||||
video::{dmabuf::DmaBuf, gbm::GbmDevice, Modifier},
|
||||
},
|
||||
|
|
@ -211,6 +211,7 @@ impl dyn GfxFramebuffer {
|
|||
result: Option<&mut RenderResult>,
|
||||
scale: Scale,
|
||||
render_hardware_cursor: bool,
|
||||
black_background: bool,
|
||||
) -> GfxRenderPass {
|
||||
let mut ops = self.take_render_ops();
|
||||
let (width, height) = self.size();
|
||||
|
|
@ -251,7 +252,10 @@ impl dyn GfxFramebuffer {
|
|||
}
|
||||
}
|
||||
}
|
||||
let c = state.theme.colors.background.get();
|
||||
let c = match black_background {
|
||||
true => Color::SOLID_BLACK,
|
||||
false => state.theme.colors.background.get(),
|
||||
};
|
||||
GfxRenderPass {
|
||||
ops,
|
||||
clear: Some(c),
|
||||
|
|
@ -262,6 +266,26 @@ impl dyn GfxFramebuffer {
|
|||
self.render(pass.ops, pass.clear.as_ref())
|
||||
}
|
||||
|
||||
pub fn render_output(
|
||||
&self,
|
||||
node: &OutputNode,
|
||||
state: &State,
|
||||
cursor_rect: Option<Rect>,
|
||||
result: Option<&mut RenderResult>,
|
||||
scale: Scale,
|
||||
render_hardware_cursor: bool,
|
||||
) {
|
||||
self.render_node(
|
||||
node,
|
||||
state,
|
||||
cursor_rect,
|
||||
result,
|
||||
scale,
|
||||
render_hardware_cursor,
|
||||
node.has_fullscreen(),
|
||||
)
|
||||
}
|
||||
|
||||
pub fn render_node(
|
||||
&self,
|
||||
node: &dyn Node,
|
||||
|
|
@ -270,6 +294,7 @@ impl dyn GfxFramebuffer {
|
|||
result: Option<&mut RenderResult>,
|
||||
scale: Scale,
|
||||
render_hardware_cursor: bool,
|
||||
black_background: bool,
|
||||
) {
|
||||
let pass = self.create_render_pass(
|
||||
node,
|
||||
|
|
@ -278,6 +303,7 @@ impl dyn GfxFramebuffer {
|
|||
result,
|
||||
scale,
|
||||
render_hardware_cursor,
|
||||
black_background,
|
||||
);
|
||||
self.perform_render_pass(pass);
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue