From 57a73476207bd33a26b39964feb01bb673be8a2b Mon Sep 17 00:00:00 2001 From: Ivan Molodetskikh Date: Wed, 3 Jan 2024 11:16:47 +0400 Subject: Move import_dmabuf to backends --- src/backend/winit.rs | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) (limited to 'src/backend/winit.rs') diff --git a/src/backend/winit.rs b/src/backend/winit.rs index 7c16aaf2..3adecd4b 100644 --- a/src/backend/winit.rs +++ b/src/backend/winit.rs @@ -5,9 +5,10 @@ use std::rc::Rc; use std::sync::{Arc, Mutex}; use std::time::Duration; +use smithay::backend::allocator::dmabuf::Dmabuf; use smithay::backend::renderer::damage::OutputDamageTracker; use smithay::backend::renderer::gles::GlesRenderer; -use smithay::backend::renderer::{DebugFlags, ImportEgl, Renderer}; +use smithay::backend::renderer::{DebugFlags, ImportDma, ImportEgl, Renderer}; use smithay::backend::winit::{self, WinitEvent, WinitGraphicsBackend}; use smithay::output::{Mode, Output, PhysicalProperties, Scale, Subpixel}; use smithay::reexports::calloop::LoopHandle; @@ -199,6 +200,16 @@ impl Winit { renderer.set_debug_flags(renderer.debug_flags() ^ DebugFlags::TINT); } + pub fn import_dmabuf(&mut self, dmabuf: &Dmabuf) -> Result<(), ()> { + match self.backend.renderer().import_dmabuf(dmabuf, None) { + Ok(_texture) => Ok(()), + Err(err) => { + debug!("error importing dmabuf: {err:?}"); + Err(()) + } + } + } + pub fn connectors(&self) -> Arc>> { self.connectors.clone() } -- cgit