24 #ifndef VLC_VOUT_WINDOW_H 25 #define VLC_VOUT_WINDOW_H 1 157 #if defined(__APPLE__) || defined(_WIN32) 202 void (*resized)(
struct vout_window_t *,
unsigned width,
unsigned height);
252 void (*fullscreened)(
struct vout_window_t *,
const char *id);
275 void (*keyboard_event)(
struct vout_window_t *,
unsigned key);
290 const char *id,
const char *desc);
362 struct wl_surface *wl;
375 struct wl_display *wl;
382 bool has_double_click;
463 unsigned width,
unsigned height)
466 window->
ops->
resize(window, width, height);
541 unsigned width,
unsigned height)
static void vout_window_SetTitle(vout_window_t *window, const char *title)
Request a new window title.
Definition: vlc_vout_window.h:500
Win32 or OS/2 window.
Definition: vlc_vout_window.h:63
const struct vout_window_operations * ops
operations handled by the window.
Definition: vlc_vout_window.h:379
void(* unset_fullscreen)(struct vout_window_t *)
Definition: vlc_vout_window.h:318
void vout_window_Disable(vout_window_t *window)
Disables a window.
Definition: window.c:113
static void vout_window_ReportMouseMoved(vout_window_t *window, int x, int y)
Reports a pointer movement.
Definition: vlc_vout_window.h:606
int y
Pointer ordinate.
Definition: vlc_vout_window.h:129
Normal stacking.
Definition: vlc_vout_window.h:76
Window event callbacks structure.
Definition: vlc_vout_window.h:191
void(* mouse_event)(struct vout_window_t *, const vout_window_mouse_event_t *mouse)
Callback for pointer input events.
Definition: vlc_vout_window.h:263
macOS/iOS view
Definition: vlc_vout_window.h:64
X11 window.
Definition: vlc_vout_window.h:62
int x
Pointer abscissa.
Definition: vlc_vout_window.h:115
static void vout_window_ReportMouseDoubleClick(vout_window_t *window, int button)
Reports a mouse double-click.
Definition: vlc_vout_window.h:651
static thread_local struct @77 state
void(* closed)(struct vout_window_t *)
Callback for window closing.
Definition: vlc_vout_window.h:217
Double click.
Definition: vlc_vout_window.h:91
static void vout_window_SendMouseEvent(vout_window_t *window, const vout_window_mouse_event_t *mouse)
Definition: vlc_vout_window.h:589
This file is a collection of common definitions and types.
vout_window_type
Window handle type.
Definition: vlc_vout_window.h:60
static void vout_window_ReportMousePressed(vout_window_t *window, int button)
Reports a mouse button press.
Definition: vlc_vout_window.h:621
int button_mask
Pressed button.
Definition: vlc_vout_window.h:138
void(* keyboard_event)(struct vout_window_t *, unsigned key)
Callback for keyboard input events.
Definition: vlc_vout_window.h:276
Android native window.
Definition: vlc_vout_window.h:65
int vout_window_Enable(vout_window_t *window, const vout_window_cfg_t *cfg)
Enables a window.
void(* state_changed)(struct vout_window_t *, unsigned state)
Callback for window state change.
Definition: vlc_vout_window.h:230
Window implementation callbacks.
Definition: vlc_vout_window.h:305
struct vout_window_cfg_t vout_window_cfg_t
Window (desired) configuration.
void(* set_title)(struct vout_window_t *, const char *id)
Definition: vlc_vout_window.h:320
enum vout_window_mouse_event_type type
Event type.
Definition: vlc_vout_window.h:101
static void vout_window_UnsetFullScreen(vout_window_t *window)
Requests windowed mode.
Definition: vlc_vout_window.h:488
Stacking above (a.k.a.
Definition: vlc_vout_window.h:77
vout_window_owner_t owner
Definition: vlc_vout_window.h:393
void vout_window_SetInhibition(vout_window_t *window, bool enabled)
Inhibits or deinhibits the screensaver.
Definition: window.c:159
static void vout_window_SetState(vout_window_t *window, unsigned state)
Requests a new window state.
Definition: vlc_vout_window.h:438
struct vlc_object_marker * obj
Definition: vlc_objects.h:48
static void vout_window_ReportState(vout_window_t *window, unsigned state)
Reports the current window state.
Definition: vlc_vout_window.h:567
Stacking below (a.k.a.
Definition: vlc_vout_window.h:78
static void vout_window_SetSize(vout_window_t *window, unsigned width, unsigned height)
Requests a new window size.
Definition: vlc_vout_window.h:463
void(* resize)(struct vout_window_t *, unsigned width, unsigned height)
Definition: vlc_vout_window.h:308
void(* set_state)(struct vout_window_t *, unsigned state)
Definition: vlc_vout_window.h:317
Window callbacks and opaque data.
Definition: vlc_vout_window.h:297
struct vout_window_owner vout_window_owner_t
Window callbacks and opaque data.
const char name[16]
Definition: httpd.c:1269
Wayland surface.
Definition: vlc_vout_window.h:66
static void vout_window_ReportOutputDevice(vout_window_t *window, const char *id, const char *name)
Adds/removes a fullscreen output.
Definition: vlc_vout_window.h:685
vout_window_state
Window states.
Definition: vlc_vout_window.h:75
struct vout_window_t vout_window_t
Window object.
vout_window_mouse_event_type
Window mouse event types.
Definition: vlc_vout_window.h:87
Window (desired) configuration.
Definition: vlc_vout_window.h:147
#define VLC_API
Definition: fourcc_gen.c:31
void vout_window_ReportWindowed(vout_window_t *wnd)
Reports that the window is not in full screen.
Definition: window.c:170
static void vout_window_ReportMouseReleased(vout_window_t *window, int button)
Reports a mouse button release.
Definition: vlc_vout_window.h:636
Window mouse event.
Definition: vlc_vout_window.h:99
Pointer position change.
Definition: vlc_vout_window.h:88
static void vout_window_ReportSize(vout_window_t *window, unsigned width, unsigned height)
Reports the current window size.
Definition: vlc_vout_window.h:541
Pointer button press or single click.
Definition: vlc_vout_window.h:89
void(* resized)(struct vout_window_t *, unsigned width, unsigned height)
Callback for window size changes.
Definition: vlc_vout_window.h:203
Dummy window (not an actual window)
Definition: vlc_vout_window.h:61
struct vout_window_mouse_event_t vout_window_mouse_event_t
Window mouse event.
static void vout_window_SetFullScreen(vout_window_t *window, const char *id)
Requests fullscreen mode.
Definition: vlc_vout_window.h:476
static void vout_window_ReportClose(vout_window_t *window)
Reports a request to close the window.
Definition: vlc_vout_window.h:553
Window object.
Definition: vlc_vout_window.h:336
void(* output_event)(struct vout_window_t *, const char *id, const char *desc)
Callback for fullscreen output enumeration.
Definition: vlc_vout_window.h:290
VLC object common members.
Definition: vlc_objects.h:43
const struct vout_window_callbacks * cbs
Callbacks.
Definition: vlc_vout_window.h:298
void vout_window_Delete(vout_window_t *window)
Deletes a window.
Definition: window.c:121
vout_window_t * vout_window_New(vlc_object_t *obj, const char *module, const vout_window_owner_t *owner)
Creates a new window.
Definition: window.c:62
void vout_window_ReportFullscreen(vout_window_t *wnd, const char *id)
Reports that the window is in full screen.
Definition: window.c:186
Pointer button release.
Definition: vlc_vout_window.h:90
static void vout_window_ReportKeyPress(vout_window_t *window, int key)
Reports a keyboard key press.
Definition: vlc_vout_window.h:666
void(* set_fullscreen)(struct vout_window_t *, const char *id)
Definition: vlc_vout_window.h:319