diff options
| author | Ivan Molodetskikh <yalterz@gmail.com> | 2024-06-01 12:27:30 +0300 |
|---|---|---|
| committer | Ivan Molodetskikh <yalterz@gmail.com> | 2024-06-10 18:08:00 +0300 |
| commit | 3c63be6261f3420008366b41b3df6d57b3ec3867 (patch) | |
| tree | c937af80e68e25d6a0d18aeae9338a4a161d83ab /src/niri.rs | |
| parent | e3406ac2556c7f68cd00f11b5856222dcce7f680 (diff) | |
| download | niri-3c63be6261f3420008366b41b3df6d57b3ec3867.tar.gz niri-3c63be6261f3420008366b41b3df6d57b3ec3867.tar.bz2 niri-3c63be6261f3420008366b41b3df6d57b3ec3867.zip | |
Implement our own TextureBuffer/RenderElement
Supports fractional texture scale + has some getters.
Diffstat (limited to 'src/niri.rs')
| -rw-r--r-- | src/niri.rs | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/niri.rs b/src/niri.rs index 8e9e11bd..e7bab37d 100644 --- a/src/niri.rs +++ b/src/niri.rs @@ -20,7 +20,6 @@ use smithay::backend::renderer::element::solid::{SolidColorBuffer, SolidColorRen use smithay::backend::renderer::element::surface::{ render_elements_from_surface_tree, WaylandSurfaceRenderElement, }; -use smithay::backend::renderer::element::texture::TextureBuffer; use smithay::backend::renderer::element::utils::{ select_dmabuf_feedback, Relocate, RelocateRenderElement, }; @@ -115,6 +114,7 @@ use crate::pw_utils::{Cast, PipeWire}; use crate::render_helpers::debug::draw_opaque_regions; use crate::render_helpers::primary_gpu_texture::PrimaryGpuTextureRenderElement; use crate::render_helpers::renderer::NiriRenderer; +use crate::render_helpers::texture::TextureBuffer; use crate::render_helpers::{ render_to_shm, render_to_texture, render_to_vec, shaders, RenderTarget, }; @@ -1870,7 +1870,7 @@ impl Niri { let transform = output.current_transform(); let output_mode = output.current_mode().unwrap(); let size = transform.transform_size(output_mode.size); - let scale = output.current_scale().integer_scale(); + let scale = output.current_scale().fractional_scale(); // FIXME: scale changes and transform flips shouldn't matter but they currently do since // I haven't quite figured out how to draw the screenshot textures in // physical coordinates. @@ -3898,9 +3898,9 @@ impl Niri { TextureBuffer::from_texture( renderer, texture, - output.current_scale().integer_scale(), + output.current_scale().fractional_scale(), Transform::Normal, - None, // We want windows below to get frame callbacks. + Vec::new(), // We want windows below to get frame callbacks. ) }); |
