@@ -204,15 +204,8 @@ impl OutputState {
204204 let name = pending_info. id ;
205205
206206 let version = wl_output. version ( ) ;
207- let pending_xdg = self . xdg . get ( ) . is_ok ( ) ;
208207
209- let xdg_output = if pending_xdg {
210- let xdg = self . xdg . get ( ) . unwrap ( ) ;
211-
212- Some ( xdg. get_xdg_output ( & wl_output, qh, data) )
213- } else {
214- None
215- } ;
208+ let xdg_output = self . xdg . get ( ) . ok ( ) . map ( |xdg| xdg. get_xdg_output ( & wl_output, qh, data) ) ;
216209
217210 let inner = OutputInner {
218211 name,
@@ -225,7 +218,6 @@ impl OutputState {
225218
226219 pending_info,
227220 pending_wl : true ,
228- pending_xdg,
229221 } ;
230222
231223 self . outputs . push ( inner) ;
@@ -495,16 +487,6 @@ where
495487 inner. current_info = Some ( info. clone ( ) ) ;
496488 inner. pending_wl = false ;
497489
498- if inner
499- . xdg_output
500- . as_ref ( )
501- . map ( Proxy :: version)
502- . map ( |v| v > 3 ) // version 3 of xdg_output deprecates xdg_output::done
503- . unwrap_or ( false )
504- {
505- inner. pending_xdg = false ;
506- }
507-
508490 // Set the user data, see if we need to run scale callbacks
509491 let run_callbacks = data. set ( info) ;
510492
@@ -568,32 +550,27 @@ where
568550 match event {
569551 zxdg_output_v1:: Event :: LogicalPosition { x, y } => {
570552 inner. pending_info . logical_position = Some ( ( x, y) ) ;
571- inner. pending_xdg = true ;
572553 }
573554 zxdg_output_v1:: Event :: LogicalSize { width, height } => {
574555 inner. pending_info . logical_size = Some ( ( width, height) ) ;
575- inner. pending_xdg = true ;
576556 }
577557 zxdg_output_v1:: Event :: Name { name } => {
578558 if inner. wl_output . version ( ) < 4 {
579559 inner. pending_info . name = Some ( name) ;
580560 }
581- inner. pending_xdg = true ;
582561 }
583562
584563 zxdg_output_v1:: Event :: Description { description } => {
585564 if inner. wl_output . version ( ) < 4 {
586565 inner. pending_info . description = Some ( description) ;
587566 }
588- inner. pending_xdg = true ;
589567 }
590568
591569 zxdg_output_v1:: Event :: Done => {
592570 // This event is deprecated starting in version 3, wl_output::done should be sent instead.
593571 if output. version ( ) < 3 {
594572 let info = inner. pending_info . clone ( ) ;
595573 inner. current_info = Some ( info. clone ( ) ) ;
596- inner. pending_xdg = false ;
597574
598575 // Set the user data
599576 data. set ( info) ;
@@ -718,5 +695,4 @@ struct OutputInner {
718695 current_info : Option < OutputInfo > ,
719696 pending_info : OutputInfo ,
720697 pending_wl : bool ,
721- pending_xdg : bool ,
722698}
0 commit comments