summaryrefslogtreecommitdiffstats
path: root/input
Commit message (Collapse)AuthorAgeFilesLines
* cleanup: silence most of the clang warningsClément Bœsch2011-07-091-2/+2
|
* Merge branch 'mplayer1_changes'Uoti Urpala2011-06-292-2/+42
|\
| * input: support up to 20 mouse buttonsreimar2011-06-292-2/+42
| | | | | | | | | | | | | | Increase the number of supported mouse buttons from 10 to 20. There really seem to be input devices with at least 12. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@33391 b3059339-0415-0410-9bf9-f77b7e298cf2
* | input: clean up messages with button combination namesUoti Urpala2011-06-291-34/+23
|/ | | | | | | | | | | | | | Previously messages that printed key/button names would have extra names in button combinations appended after the main message, resulting in output like: No bind found for key 'MOUSE_BTN1'.-MOUSE_BTN3 Add a function that creates a complete combination name and use that for all such messages. The above example changes to: No bind found for key 'MOUSE_BTN1-MOUSE_BTN3'. Other affected messages are a input.conf parsing error message and a message about a bound command being invalid.
* input: add useful default pointer button bindingsGrigori Goronzy2011-06-141-0/+2
| | | | | | Add two mouse button bindings: 1) left button double click toggles fullscreen 2) right button pauses/unpauses
* input: make slave command file descriptors nonblockingUoti Urpala2011-05-041-2/+2
| | | | | | | Neither fd 0 slave input (-slave) nor additional opened fds (-input file=X) were set to nonblocking mode as they should have been. Fix. Also rename the horribly generic USE_SELECT #define used for a specific slave input detail.
* input/joystick.c: add #include missing from 23cb829072Uoti Urpala2011-05-031-0/+1
| | | | | There was a '#include "keycodes.h"' line missing from commit 23cb829072, which broke build with --enable-joystick.
* cleanup: remove more warningsClément Bœsch2011-05-021-1/+1
|
* input: rewrite -key-fifo-size limiting logicUoti Urpala2011-05-022-2/+14
| | | | | | | | | | | | | | | | | | Instead of strictly limiting the number of total entries in the internal fifo, make the overall buffer bigger and try to limit entries based on how many bound commands they're expected to generate. Now doubleclick and button down events aren't counted for that limit. Normally the sequence down-doubleclick-up generates at most one command, so this better matches the quantity we actually want to limit. Also add a mechanism to clear the button combination state kept by input.c when the fifo is full; this avoids "stuck button" problems due to button release events being dropped. The key combination state clearing is partially based on MPlayer 1 changes by Reimar Döffinger (though overall the effects of this commit are quite different). It still doesn't make "stuck button" problems completely impossible; at least if the VO gets closed while a button was down then nothing will send a button up event or reset state.
* input: modify interpretation of doubleclick eventsUoti Urpala2011-05-021-0/+13
| | | | | | | | | | | | | The code combining button presses into multibutton commands prevented single click commands from triggering if a doubleclick event had been generated from the same button press. As a result using the mouse wheel to seek worked very badly. Special-case doubleclick events in the event interpretation code to avoid this issue. This changes the sequence of generated "keys" for press-release-press-release from MOUSE_BTN0 MOUSE_BTN0-MOUSE_BTN0_DBL MOUSE_BTN0_DBL to MOUSE_BTN0 MOUSE_BTN0_DBL MOUSE_BTN0. "Keys" like MOUSE_BTN0-MOUSE_BTN0_DBL will never be generated now; any existing configuration files using those need to be changed.
* cleanup: input.c: simplify some string handling codeUoti Urpala2011-05-021-17/+11
| | | | Replace manual loops with strspn() / strcspn().
* cleanup: reformat input.cUoti Urpala2011-05-021-921/+957
|
* input: move all key code lists to input/keycodes.hUoti Urpala2011-05-028-101/+200
| | | | | | | | | | | | | Move the definitions of all special key codes (those not passed by ASCII value) to input/keycodes.h. Before they were spread between osdep/keycodes.h, input/joystick.h, input/mouse.h and input/ar.h, plus some special values in input.h. This was especially inconvenient as the codes had to be coordinated to not conflict between the files. The change requires a bit of ugliness as appleir.c includes <linux/input.h> which contains various conflicting KEY_* definitions. Work around this by adding a special preprocessor variable which can be used to avoid defining these in keycodes.h.
* input: don't interrupt processing at unbound eventsUoti Urpala2011-05-011-6/+7
| | | | | | | | | | The input code read at most one event per input or command fd. If this event was not bound to any recognized command then no command was returned, and higher-level code could not distinguish this case from there being no pending events left. As a result unbound events would cause extra latency in event processing. Change the input code to continue reading events until it either finds one that maps to a command or hits EOF/error.
* input: sleep in event loop even if there are no input fdsUoti Urpala2011-04-221-19/+14
| | | | | | | | | The input loop select() call was only run if there was at least one input file descriptor. However other code uses the input loop to wait; this could result in the wait becoming a busy loop when running with -noconsolecontrols (without that there is at least one input fd for terminal input). Make the input loop call select() to sleep even if there are no input file descriptors.
* input: accept Shift modifier for Enter and Tab keysUoti Urpala2011-02-051-1/+2
| | | | | | Enter and Tab are the only named keys (rather than identified by the printable character they produce) with code below 256. Add a special case to recognize the Shift modifier with them.
* input: remove incorrect "CTRL" keyname alias for backspaceUoti Urpala2011-02-051-1/+0
| | | | | | | | | | | The keycodes.h file contains a KEY_CTRL define, then various control keys expressed as "KEY_CTRL + 0" and so on. Back in 2002 when the key name table in input.c was created this KEY_CTRL define was mistakenly interpreted as a key name, apparently confusing it with the Ctrl key (even though the input system didn't handle that key back then). As a result there was an incorrect key name entry with the same key code as backspace and name "CTRL". This incorrect entry was used when printing the name of the key. Delete it.
* Merge branch 'hr-seek'Uoti Urpala2010-12-201-49/+94
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * hr-seek: input: add default keybindings Shift+[arrow] for small exact seeks input: support bindings with modifier keys for X input core: audio: make ogg missing audio timing workaround more complex core: add support for precise non-keyframe-limited seeks core: add struct for queued seek info commands: add generic option -> property wrapper options: add "choice" option type, use for -pts-association-mode core: remove looping in update_video(), modify command handling a bit core: seek: use accurate seek mode with audio-only files core: avoid using sh_video->pts as "current pts" libvo: register X11 connection fd in input event system core: timing: add special handling of long frame intervals core: move central play loop to a separate function Conflicts: DOCS/tech/slave.txt
| * input: add default keybindings Shift+[arrow] for small exact seeksUoti Urpala2010-12-201-0/+4
| |
| * input: support bindings with modifier keys for X inputUoti Urpala2010-12-201-48/+89
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add support for binding commands to modifier+key combinations like "Shift+Left" or "Ctrl+Alt+x", and support reading such combinations from the output window of X VOs. The recognized modifier names are Shift, Ctrl, Alt and Meta. Any combination of those and then a non-modifier key name, separated by '+', is accepted as a key name in input.conf. For non-special keys that produce characters shift is ignored as a modifier. For example "A" is handled as a key without modifiers even if you use shift to write the capital letter; 'a' vs 'A' already distinguishes the combinations with a normal keymap, and having separate 'a', 'Shift+A' and 'A' (written with caps lock for example) would bring more confusion than benefit. Currently reading the modifier+key combinations is only supported in the output window of those VOs that use x11_common.c event handling. It's not possible to input the key combinations in other VOs or in a terminal window.
| * core: add support for precise non-keyframe-limited seeksUoti Urpala2010-12-201-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | Add support for seeking to an arbitrary non-keyframe position by decoding video starting from the previous keyframe. Whether to use this functionality when seeking is controlled by the new option -hr-seek and a new third argument to the "seek" command. The default is to use it for absolute seeks (like chapter seeks) but not for relative ones. Because there's currently no support for cutting encoded audio some desync is expected if encoded audio passthrough is used. Currently precise seeks always go to the first frame with timestamp equal to or greater than the target position; there's no support for "matching or earlier" backwards seeks at frame level.
* | cosmetics: remove unused code, small formatting tweaksUoti Urpala2010-12-201-7/+0
| |
* | commands: Allow cycling subtitles backwards with 'J'reimar2010-12-161-0/+1
|/ | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@32680 b3059339-0415-0410-9bf9-f77b7e298cf2 git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@32714 b3059339-0415-0410-9bf9-f77b7e298cf2
* cleanup: remove NULL checks before free() all over the codecboesch2010-11-143-18/+9
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@32624 b3059339-0415-0410-9bf9-f77b7e298cf2
* options: add OPT_MAKE_FLAGS macro, creates "opt/noopt" flag pairClément Bœsch2010-11-041-10/+5
|
* Add a simple capture feature (-capture)Uoti Urpala2010-11-022-0/+3
| | | | | | | | | | | | | | | | | If a specified key is pressed during playback, the current stream is captured to a file, similar to what -dumpstream achieves. original patch by Pásztor Szilárd, don tricon hu Taken from the following svn commits, but with several fixes and modifications (one obvious user-visible difference is that the default key binding is 'C', not 'c'): git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@32524 b3059339-0415-0410-9bf9-f77b7e298cf2 git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@32529 b3059339-0415-0410-9bf9-f77b7e298cf2 git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@32530 b3059339-0415-0410-9bf9-f77b7e298cf2
* new slave command: af_cmdline, for changing audio filter optionsreimar2010-11-022-0/+2
| | | | | | | | | Add experimental af_cmdline slave command to allow changing filter options at runtime. Patch by Adrian Stutz [adrian sttz ch] git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@32505 b3059339-0415-0410-9bf9-f77b7e298cf2
* input: try to open "-input -file=" file even if stat() failsreimar2010-11-021-12/+13
| | | | | | | | | | | Do not fail opening a -input file= file just because stat failed, but try to call "open" in any case. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@32497 b3059339-0415-0410-9bf9-f77b7e298cf2 Make code clearer by putting the "special case hack" inside the if. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@32499 b3059339-0415-0410-9bf9-f77b7e298cf2
* cosmetics: input/ar.c: Mark is_mplayer_front() staticdiego2010-11-021-1/+1
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@32153 b3059339-0415-0410-9bf9-f77b7e298cf2
* Merge svn changes up to r31256Uoti Urpala2010-05-301-0/+6
|\
| * Document that time argument is in milliseconds.reimar2010-05-281-0/+6
| | | | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@31252 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Drop pointles _st suffix from struct mp_cmd_filter and mp_cmd_bind_section.diego2010-05-271-4/+4
| | | | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@31246 b3059339-0415-0410-9bf9-f77b7e298cf2
* | Merge svn changes up to r31033Uoti Urpala2010-04-262-0/+15
|\|
| * Add slave commands for loading and unloading audio filters at runtime.cehoyos2010-04-112-0/+12
| | | | | | | | | | | | | | Patch by Jehan Hysseo, hysseo zemarmot net git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@31030 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Add osd_show_progression: Show progress bar and elapsed/total time.cehoyos2010-04-092-0/+3
| | | | | | | | | | | | | | Patch by Hugo Chargois, hugo D chargois A free fr git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@31028 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Mark input-related m_option_t arrays as const.diego2010-04-041-2/+2
| | | | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@31002 b3059339-0415-0410-9bf9-f77b7e298cf2
* | Merge svn changes up to r30967Uoti Urpala2010-04-261-1/+1
|\|
| * Rename get_path.[ch] --> path.[ch].diego2010-03-201-1/+1
| | | | | | | | | | | | | | These files now contain different functions related to path handling. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30943 b3059339-0415-0410-9bf9-f77b7e298cf2
* | input: remove unused "paused" arguments from some functionsUoti Urpala2010-04-252-17/+15
| |
* | Delete things related to old translation systemUoti Urpala2010-03-104-4/+0
| | | | | | | | | | Remove the help/ subdirectory, configure code to create toplevel help_mp.h, and all the '#include "help_mp.h"' lines from .c files.
* | Merge svn changes up to r30798Uoti Urpala2010-03-102-0/+3
|\|
| * Support all line ending types in mp_input_read_cmd.reimar2010-02-271-0/+2
| | | | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30779 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Include lirc.h in lirc.c to add missing prototypes.cehoyos2010-02-271-0/+1
| | | | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30767 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Mark some more functions that are not used outside of their files as static.diego2010-02-181-2/+2
| | | | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30632 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Declare mp_input_register_options() in input/input.h.diego2010-02-141-0/+4
| | | | | | | | | | | | | | This also avoids a forward declaration in mplayer.c. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30572 b3059339-0415-0410-9bf9-f77b7e298cf2
* | Merge svn changes up to r29912Uoti Urpala2009-11-161-4/+0
|\|
| * Remove CONFIG_TV_TELETEXT.cehoyos2009-11-071-4/+0
| | | | | | | | | | | | | | | | DVB teletext support is nearly finished, it will be possible to read teletext from file, it will not be depending on reception any more. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29851 b3059339-0415-0410-9bf9-f77b7e298cf2
* | Add yuv_colorspace property, implemented in vo_vdpau and vo_xvUoti Urpala2009-11-151-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a property to select YUV colorspace. Currently implemented only in vo_vdpau and vo_xv. Allows switching between BT.601, BT.709 and SMPTE-240M (vdpau only). The xv support uses the "XV_ITURBT_709" attribute. At least my NVIDIA card supports that; I don't know whether other xv implementations do. Bind the colorspace switch to the 'c' key by default. 'c' is currently used by vo_sdl for some fullscreen mode change thing, but at the moment that does not conflict and if it will in the future then vo_sdl can change. VDPAU part based on a patch from Lauri Mylläri <lauri.myllari@gmail.com>
* | UI: Make the 'D' key print the new deinterlace statusUoti Urpala2009-09-191-1/+1
| | | | | | | | | | | | | | Define a way to show the property on the OSD and use step_property_osd instead of step_property. Also change the mp_property_deinterlace() function to use m_property_flag_ro() to make it print 'enabled/disabled' instead of 'yes/no'.
* | commands: Add set_property_osd and step_property_osdUoti Urpala2009-09-192-0/+4
| |
* | Remove the internal GUIAnton Khirnov2009-07-072-46/+2
| | | | | | | | | | | | | | | | | | The GUI is badly designed and too closely coupled to the internal details of other code. The GUI code is in bad shape and unmaintained for years. There is no indication that anyone would maintain it in the future either. Even if someone did volunteer to implement a better integrated GUI having the current code in the tree probably wouldn't help much. So get rid of it.
* | Merge svn changes up to r29412Uoti Urpala2009-07-071-1/+1
|\|
| * Increase slave mode buffer so that one can load files with a deeperben2009-06-261-1/+1
| | | | | | | | | | | | | | | | | | path (or bigger URLs). Patch by Mathieu Schroeter (mathieu DOT schroeter AT gamesover DOT ch). git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29403 b3059339-0415-0410-9bf9-f77b7e298cf2
| * whitespace cosmetics: Remove all trailing whitespace.diego2009-05-136-45/+45
| | | | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29305 b3059339-0415-0410-9bf9-f77b7e298cf2
* | Remove trailing whitespace from most filesUoti Urpala2009-07-076-40/+40
| |
* | Translation system changes part 2: replace macros by stringsAmar Takhar2009-07-074-45/+45
| | | | | | | | | | Replace all MSGTR_ macros in the source by the corresponding English string.
* | Translation system changes part 1: wrap translated stringsAmar Takhar2009-07-074-46/+46
| | | | | | | | | | Replace mp_msg() calls which have a translated string as the format argument with mp_tmsg and add _() around all other translated strings.
* | Merge svn changes up to r29277Uoti Urpala2009-05-081-1/+1
|\|
| * Add missing 'void' to parameterless function declarations.diego2009-05-041-1/+1
| | | | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29254 b3059339-0415-0410-9bf9-f77b7e298cf2
* | Merge svn changes up to r29117Uoti Urpala2009-04-01<