Handle toplevel info updates
This commit is contained in:
parent
b5931cd240
commit
4ca7c9fb56
4 changed files with 17 additions and 3 deletions
|
|
@ -329,6 +329,13 @@ impl Application for App {
|
|||
img: None,
|
||||
});
|
||||
}
|
||||
wayland::Event::UpdateToplevel(handle, info) => {
|
||||
if let Some(toplevel) =
|
||||
self.toplevels.iter_mut().find(|x| x.handle == handle)
|
||||
{
|
||||
toplevel.info = info;
|
||||
}
|
||||
}
|
||||
wayland::Event::CloseToplevel(handle) => {
|
||||
if let Some(idx) = self.toplevels.iter().position(|x| x.handle == handle) {
|
||||
self.toplevels.remove(idx);
|
||||
|
|
@ -341,7 +348,7 @@ impl Application for App {
|
|||
}
|
||||
wayland::Event::ToplevelCapture(handle, image) => {
|
||||
if let Some(toplevel) = self.toplevel_for_handle_mut(&handle) {
|
||||
println!("Got toplevel image!");
|
||||
//println!("Got toplevel image!");
|
||||
toplevel.img = Some(image);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -67,6 +67,10 @@ pub enum Event {
|
|||
zcosmic_toplevel_handle_v1::ZcosmicToplevelHandleV1,
|
||||
ToplevelInfo,
|
||||
),
|
||||
UpdateToplevel(
|
||||
zcosmic_toplevel_handle_v1::ZcosmicToplevelHandleV1,
|
||||
ToplevelInfo,
|
||||
),
|
||||
CloseToplevel(zcosmic_toplevel_handle_v1::ZcosmicToplevelHandleV1),
|
||||
ToplevelCapture(
|
||||
zcosmic_toplevel_handle_v1::ZcosmicToplevelHandleV1,
|
||||
|
|
|
|||
|
|
@ -93,6 +93,8 @@ impl ScreencopyHandler for AppData {
|
|||
) {
|
||||
// TODO
|
||||
println!("Failed");
|
||||
let capture = Capture::for_session(session).unwrap();
|
||||
capture.cancel();
|
||||
session.destroy();
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -32,9 +32,10 @@ impl ToplevelInfoHandler for AppData {
|
|||
&mut self,
|
||||
_conn: &Connection,
|
||||
_qh: &QueueHandle<Self>,
|
||||
_toplevel: &zcosmic_toplevel_handle_v1::ZcosmicToplevelHandleV1,
|
||||
toplevel: &zcosmic_toplevel_handle_v1::ZcosmicToplevelHandleV1,
|
||||
) {
|
||||
// TODO
|
||||
let info = self.toplevel_info_state.info(toplevel).unwrap();
|
||||
self.send_event(Event::UpdateToplevel(toplevel.clone(), info.clone()));
|
||||
}
|
||||
|
||||
fn toplevel_closed(
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue