aboutsummaryrefslogtreecommitdiff
path: root/src/niri.rs
diff options
context:
space:
mode:
authorIvan Molodetskikh <yalterz@gmail.com>2024-06-01 12:27:30 +0300
committerIvan Molodetskikh <yalterz@gmail.com>2024-06-10 18:08:00 +0300
commit3c63be6261f3420008366b41b3df6d57b3ec3867 (patch)
treec937af80e68e25d6a0d18aeae9338a4a161d83ab /src/niri.rs
parente3406ac2556c7f68cd00f11b5856222dcce7f680 (diff)
downloadniri-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.rs8
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.
)
});