aboutsummaryrefslogtreecommitdiff
path: root/src/render_helpers/resize.rs
diff options
context:
space:
mode:
authorIvan Molodetskikh <yalterz@gmail.com>2024-05-03 21:21:58 +0400
committerIvan Molodetskikh <yalterz@gmail.com>2024-05-03 21:23:32 +0400
commit8ab50f9d1ca5795f4eef84ad423dc0d63d990b98 (patch)
tree547387d5d17f565791abf9ec3b5bd863a1257162 /src/render_helpers/resize.rs
parent5c32031111223cdfb7ad5e9c2766204445ac6492 (diff)
downloadniri-8ab50f9d1ca5795f4eef84ad423dc0d63d990b98.tar.gz
niri-8ab50f9d1ca5795f4eef84ad423dc0d63d990b98.tar.bz2
niri-8ab50f9d1ca5795f4eef84ad423dc0d63d990b98.zip
shader_element: Store program type instead of shader
Diffstat (limited to 'src/render_helpers/resize.rs')
-rw-r--r--src/render_helpers/resize.rs13
1 files changed, 7 insertions, 6 deletions
diff --git a/src/render_helpers/resize.rs b/src/render_helpers/resize.rs
index c728689a..021c59bc 100644
--- a/src/render_helpers/resize.rs
+++ b/src/render_helpers/resize.rs
@@ -8,8 +8,8 @@ use smithay::backend::renderer::utils::{CommitCounter, DamageSet};
use smithay::utils::{Buffer, Logical, Physical, Rectangle, Scale, Size, Transform};
use super::renderer::{AsGlesFrame, NiriRenderer};
-use super::shader_element::{ShaderProgram, ShaderRenderElement};
-use super::shaders::{mat3_uniform, Shaders};
+use super::shader_element::ShaderRenderElement;
+use super::shaders::{mat3_uniform, ProgramType, Shaders};
use crate::backend::tty::{TtyFrame, TtyRenderer, TtyRendererError};
#[derive(Debug)]
@@ -18,7 +18,6 @@ pub struct ResizeRenderElement(ShaderRenderElement);
impl ResizeRenderElement {
#[allow(clippy::too_many_arguments)]
pub fn new(
- shader: ShaderProgram,
area: Rectangle<i32, Logical>,
scale: Scale<f64>,
texture_prev: (GlesTexture, Rectangle<i32, Physical>),
@@ -92,7 +91,7 @@ impl ResizeRenderElement {
// Create the shader.
Self(ShaderRenderElement::new(
- Some(shader),
+ ProgramType::Resize,
area,
size,
None,
@@ -117,8 +116,10 @@ impl ResizeRenderElement {
))
}
- pub fn shader(renderer: &mut impl NiriRenderer) -> Option<ShaderProgram> {
- Shaders::get(renderer).resize()
+ pub fn has_shader(renderer: &mut impl NiriRenderer) -> bool {
+ Shaders::get(renderer)
+ .program(ProgramType::Resize)
+ .is_some()
}
}