Commit graph

7 commits

Author SHA1 Message Date
Seungha Yang
fd830868bf gst-play: Handle KeyDown event instead of KeyUp on Win32 keyboard handler
To handle long press case, KeyDown input should be handled instead of KeyUp.
Note that OS will take care of the sensitivity of KeyDown event, so we can safely
assume one KeyDown as one input. That will not break user experience.
2019-11-19 17:48:26 +09:00
Seungha Yang
60d58038df gst-play: Remove timer GSource from Win32 keyboard handler
Use WaitForMultipleObjects to handle keyboard input only if pending
keyboard input exists.
2019-11-19 17:48:22 +09:00
Matthew Waters
56b0ced0bc build: fix werror build on windows
_isatty() is in the io.h header
2019-10-01 01:29:47 +00:00
Seungha Yang
f1d3307e03 gst-play: Add support for interacting console input on Windows
Add Windows keyboard input handler. This could make gst-play UX
consistent between *nix and Windows.
2019-09-26 03:02:31 +09:00
Antonio Ospite
cfc1be0d61 tools: play: fix leaving STDIN in non-blocking mode after exit
gst-play-1.0 sets STDIN to non-blocking mode to have the input
characters read as soon as they arrive.

However, when gst_play_kb_set_key_handler() gets called from
restore_terminal() it forgets to restore the STDIN blocking status.

This can result in broken behavior for cli command executed in the same
terminal after gst-play-1.0 exited.

It turns out that putting STDIN in non-blocking mode is not even the
proper way to achieve the desired effect, instead VMIN and VTIME in
struct termios should be set to 0.

Let's do that, and don't mess with the STDIN blocking mode now that it's
not necessary.

https://bugzilla.gnome.org/show_bug.cgi?id=794591
2018-03-26 11:59:56 +01:00
Tim-Philipp Müller
da6d3cfacf tools: play: fix compiler warning on windows 2013-12-09 13:55:28 +00:00
Tim-Philipp Müller
5a36b793d6 tools: play: add --interactive switch and basic keyboard handling
Only pause/play with spacebar for now.
2013-11-24 01:08:48 +00:00