core: first cleaning of input_thread_t variables/event
commit2ef7696e96f5c55a4801335820c79df7f1a52fd0
authorThomas Guillem <thomas@gllm.fr>
Fri, 6 Jul 2018 11:43:55 +0000 (6 13:43 +0200)
committerThomas Guillem <thomas@gllm.fr>
Thu, 12 Jul 2018 14:13:22 +0000 (12 16:13 +0200)
treec5148894a4c4390f03c8ddb5774113ab6ca4e3b9
parente86e9e59c2dd243fd3780f7791fba57b2ca9d65e
core: first cleaning of input_thread_t variables/event

Currently, the input_thread_t is controllable by either input_Control, specific
functions, by variables or by the 3 previous solutions.

The goal of this commit is to remove variables usage when it's not necessary.
This commit doesn't remove variables that should be used to pass users settings
(cf.  input_ConfigVarInit).

The "intf-event" callback is replaced by the new callback
input_thread_events_cb that pass a new event: struct vlc_input_event. There can
be only one listener: the creator of the input_thread_t. In the future, the new
vlc input controller will receive these events and forward them to all
listeners.

In the meantime, I added input_LegacyVarInit, input_LegacyVarStop, and
input_LegacyEvents, 3 helpers functions that reproduce the legacy variable
behavior (transform new vlc_input_event to old intf-event events). These 3
functions are meant to be removed for 4.0 release (when vlc input controller is
added).

For now, the playlist, the media_player, VLM and modules still use the legacy
variables.
16 files changed:
include/vlc_input.h
lib/media_player.c
modules/misc/fingerprinter.c
modules/services_discovery/podcast.c
src/input/control.c
src/input/es_out.c
src/input/event.c
src/input/event.h
src/input/input.c
src/input/input_interface.h
src/input/input_internal.h
src/input/var.c
src/input/vlm.c
src/libvlccore.sym
src/playlist/thread.c
src/preparser/preparser.c