* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
*****************************************************************************/
-#if defined(__PLUGIN__) || defined(__BUILTIN__) || !defined(__LIBVLC__)
-# error This header file can only be included from LibVLC.
-#endif
-
#include <vlc_common.h>
#include <vlc_playlist.h>
#include <math.h>
}
static inline void vout_SendEventMouseMoved(vout_thread_t *vout, int x, int y)
{
- var_SetInteger(vout, "mouse-x", x);
- var_SetInteger(vout, "mouse-y", y);
- var_SetBool(vout, "mouse-moved", true);
+ var_SetCoords(vout, "mouse-moved", x, y);
}
static inline void vout_SendEventMousePressed(vout_thread_t *vout, int button)
{
+ int key;
var_OrInteger(vout, "mouse-button-down", 1 << button);
switch (button)
{
case MOUSE_BUTTON_LEFT:
- var_SetBool(vout, "mouse-clicked", true);
+ {
+ /* FIXME? */
+ int x, y;
+ var_GetCoords(vout, "mouse-moved", &x, &y);
+ var_SetCoords(vout, "mouse-clicked", x, y);
var_SetBool(vout->p_libvlc, "intf-popupmenu", false);
- break;
+ return;
+ }
case MOUSE_BUTTON_CENTER:
var_ToggleBool(vout->p_libvlc, "intf-show");
- break;
+ return;
case MOUSE_BUTTON_RIGHT:
var_SetBool(vout->p_libvlc, "intf-popupmenu", true);
- break;
+ return;
+ case MOUSE_BUTTON_WHEEL_UP: key = KEY_MOUSEWHEELUP; break;
+ case MOUSE_BUTTON_WHEEL_DOWN: key = KEY_MOUSEWHEELDOWN; break;
+ case MOUSE_BUTTON_WHEEL_LEFT: key = KEY_MOUSEWHEELLEFT; break;
+ case MOUSE_BUTTON_WHEEL_RIGHT: key = KEY_MOUSEWHEELRIGHT; break;
}
+ vout_SendEventKey(vout, key);
}
static inline void vout_SendEventMouseReleased(vout_thread_t *vout, int button)
{
static inline void vout_SendEventMouseDoubleClick(vout_thread_t *vout)
{
//vout_ControlSetFullscreen(vout, !var_GetBool(vout, "fullscreen"));
- var_ToggleBool(vout, "fullscreen");
+ //var_ToggleBool(vout, "fullscreen");
+ var_SetInteger(vout->p_libvlc, "key-action", ACTIONID_TOGGLE_FULLSCREEN);
}
static inline void vout_SendEventMouseVisible(vout_thread_t *vout)
{
static inline void vout_SendEventFullscreen(vout_thread_t *vout, bool is_fullscreen)
{
- if (!var_GetBool(vout, "fullscreen") != !is_fullscreen)
- var_SetBool(vout, "fullscreen", is_fullscreen);
+ var_SetBool(vout, "fullscreen", is_fullscreen);
}
static inline void vout_SendEventDisplayFilled(vout_thread_t *vout, bool is_display_filled)