aboutsummaryrefslogtreecommitdiff
path: root/src/ui
diff options
context:
space:
mode:
Diffstat (limited to 'src/ui')
-rw-r--r--src/ui/screen_transition.rs9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/ui/screen_transition.rs b/src/ui/screen_transition.rs
index ecec1f1e..3b5c2159 100644
--- a/src/ui/screen_transition.rs
+++ b/src/ui/screen_transition.rs
@@ -2,6 +2,7 @@ use std::time::Duration;
use smithay::backend::renderer::element::Kind;
use smithay::backend::renderer::gles::GlesTexture;
+use smithay::utils::{Scale, Transform};
use crate::render_helpers::primary_gpu_texture::PrimaryGpuTextureRenderElement;
use crate::render_helpers::texture::{TextureBuffer, TextureRenderElement};
@@ -43,6 +44,14 @@ impl ScreenTransition {
self.alpha == 0.
}
+ pub fn update_render_elements(&mut self, scale: Scale<f64>, transform: Transform) {
+ // These textures should remain full-screen, even if scale or transform changes.
+ for buffer in &mut self.from_texture {
+ buffer.set_texture_scale(scale);
+ buffer.set_texture_transform(transform);
+ }
+ }
+
pub fn render(&self, target: RenderTarget) -> PrimaryGpuTextureRenderElement {
let idx = match target {
RenderTarget::Output => 0,