]> git.nihav.org Git - nihav-player.git/blobdiff - videoplayer/src/main.rs
videoplayer: allow diplaying time indefinitely long
[nihav-player.git] / videoplayer / src / main.rs
index d3aef1babb219e53b4240452c1b009e62b7f6e4a..56c311237ff6cf06aeb0ec6171bb4907d9f5b81a 100644 (file)
@@ -488,7 +488,7 @@ impl Player {
                         println!();
                         return Ok(true);
                     },
-                    Keycode::Return => return Ok(true),
+                    Keycode::Return | Keycode::KpEnter => return Ok(true),
                     Keycode::Right      => { self.seek(10, true,  dmx, disp_queue)?; },
                     Keycode::Left       => { self.seek(10, false, dmx, disp_queue)?; },
                     Keycode::Up         => { self.seek(60, true,  dmx, disp_queue)?; },
@@ -523,7 +523,11 @@ impl Player {
                         self.vcontrol.try_send_video(PktSendEvent::HurryUp);
                     },
                     Keycode::O => {
-                        self.osd.toggle();
+                        if keymod.contains(Mod::RSHIFTMOD) || keymod.contains(Mod::LSHIFTMOD) {
+                            self.osd.toggle_perm();
+                        } else {
+                            self.osd.toggle();
+                        }
                     },
                     _ => {},
                 };
@@ -720,13 +724,15 @@ impl Player {
         let wname = if let Some(fname) = fname {
                 // workaround for libSDL2 workaround for non-UTF8 windowing systems
                 // see https://github.com/libsdl-org/SDL/pull/4290 for detais
-                let nname = fname.to_str().expect("should be able to set window title").replace('\u{2013}', "-");
+                let nname = fname.to_str().expect("should be able to set window title").replace('\u{2013}', "-").replace('\u{2014}', "-");
                 "NihAV player - ".to_owned() + &nname
             } else {
                 "NihAV player".to_owned()
             };
         window.set_title(&wname).expect("set window title");
-        window.set_size(width as u32, height as u32).expect("resize window");
+        if window.size() != (width as u32, height as u32) {
+            window.set_size(width as u32, height as u32).expect("resize window");
+        }
         window.show();
         let mut canvas = window.into_canvas().build().expect("should be able to build canvas");
         let texture_creator = canvas.texture_creator();