VLC  4.0.0-dev
Data Structures | Macros | Typedefs | Functions | Variables
window.c File Reference
Include dependency graph for window.c:

Data Structures

struct  window_t
 
struct  vout_window_ack_data
 
struct  vout_display_window
 

Macros

#define DOUBLE_CLICK_TIME   VLC_TICK_FROM_MS(300)
 

Typedefs

typedef struct vout_display_window vout_display_window_t
 

Functions

static int vout_window_start (void *func, bool forced, va_list ap)
 
vout_window_tvout_window_New (vlc_object_t *obj, const char *module, const vout_window_owner_t *owner)
 Creates a new window. More...
 
int vout_window_Enable (vout_window_t *window, const vout_window_cfg_t *restrict cfg)
 
void vout_window_Disable (vout_window_t *window)
 Disables a window. More...
 
void vout_window_Delete (vout_window_t *window)
 Deletes a window. More...
 
static void vout_window_UpdateInhibitionUnlocked (vout_window_t *window)
 
void vout_window_SetInhibition (vout_window_t *window, bool enabled)
 Inhibits or deinhibits the screensaver. More...
 
void vout_window_ReportWindowed (vout_window_t *window)
 Reports that the window is not in full screen. More...
 
void vout_window_ReportFullscreen (vout_window_t *window, const char *id)
 Reports that the window is in full screen. More...
 
static void vout_window_Ack (void *data)
 
static void vout_display_window_ResizeNotify (vout_window_t *window, unsigned width, unsigned height, vout_window_ack_cb cb, void *opaque)
 
static void vout_display_window_CloseNotify (vout_window_t *window)
 
static void vout_display_window_StateNotify (vout_window_t *window, unsigned window_state)
 
static void vout_display_window_FullscreenNotify (vout_window_t *window, const char *id)
 
static void vout_display_window_WindowingNotify (vout_window_t *window)
 
static void vout_display_window_MouseEvent (vout_window_t *window, const vout_window_mouse_event_t *ev)
 
static void vout_display_window_KeyboardEvent (vout_window_t *window, unsigned key)
 
static void vout_display_window_OutputEvent (vout_window_t *window, const char *name, const char *desc)
 
vout_window_tvout_display_window_New (vout_thread_t *vout)
 Creates a video window, initially without any attached display. More...
 
void vout_display_window_Delete (vout_window_t *window)
 Destroys a video window. More...
 

Variables

static const struct vout_window_callbacks vout_display_window_cbs
 

Macro Definition Documentation

◆ DOUBLE_CLICK_TIME

#define DOUBLE_CLICK_TIME   VLC_TICK_FROM_MS(300)

Typedef Documentation

◆ vout_display_window_t

Function Documentation

◆ vout_display_window_CloseNotify()

static void vout_display_window_CloseNotify ( vout_window_t window)
static

◆ vout_display_window_Delete()

void vout_display_window_Delete ( vout_window_t window)

Destroys a video window.

Note
The window must be detached.

References vout_window_t::owner, state, vout_window_owner::sys, var_Destroy(), and vout_window_Delete().

Referenced by vout_Release().

◆ vout_display_window_FullscreenNotify()

static void vout_display_window_FullscreenNotify ( vout_window_t window,
const char *  id 
)
static

◆ vout_display_window_KeyboardEvent()

static void vout_display_window_KeyboardEvent ( vout_window_t window,
unsigned  key 
)
static

◆ vout_display_window_MouseEvent()

static void vout_display_window_MouseEvent ( vout_window_t window,
const vout_window_mouse_event_t ev 
)
static

◆ vout_display_window_New()

vout_window_t* vout_display_window_New ( vout_thread_t vout)

Creates a video window, initially without any attached display.

References vout_window_owner::cbs, state, var_Create(), var_InheritString(), vlc_mouse_Init(), VLC_VAR_BOOL, VLC_VAR_INTEGER, VLC_VAR_STRING, vout_display_window_cbs, and vout_window_New().

Referenced by vout_Create().

◆ vout_display_window_OutputEvent()

static void vout_display_window_OutputEvent ( vout_window_t window,
const char *  name,
const char *  desc 
)
static

◆ vout_display_window_ResizeNotify()

static void vout_display_window_ResizeNotify ( vout_window_t window,
unsigned  width,
unsigned  height,
vout_window_ack_cb  cb,
void *  opaque 
)
static

◆ vout_display_window_StateNotify()

static void vout_display_window_StateNotify ( vout_window_t window,
unsigned  window_state 
)
static

◆ vout_display_window_WindowingNotify()

static void vout_display_window_WindowingNotify ( vout_window_t window)
static

◆ vout_window_Ack()

static void vout_window_Ack ( void *  data)
static

◆ vout_window_Enable()

int vout_window_Enable ( vout_window_t window,
const vout_window_cfg_t *restrict  cfg 
)

◆ vout_window_start()

static int vout_window_start ( void *  func,
bool  forced,
va_list  ap 
)
static

References VLC_OBJECT, and vlc_objres_clear().

Referenced by vout_window_New().

◆ vout_window_UpdateInhibitionUnlocked()

static void vout_window_UpdateInhibitionUnlocked ( vout_window_t window)
static

Variable Documentation

◆ vout_display_window_cbs

const struct vout_window_callbacks vout_display_window_cbs
static
Initial value:
= {
}
static void vout_display_window_WindowingNotify(vout_window_t *window)
Definition: window.c:283
static void vout_display_window_FullscreenNotify(vout_window_t *window, const char *id)
Definition: window.c:270
static void vout_display_window_MouseEvent(vout_window_t *window, const vout_window_mouse_event_t *ev)
Definition: window.c:292
static void vout_display_window_KeyboardEvent(vout_window_t *window, unsigned key)
Definition: window.c:344
static void vout_display_window_ResizeNotify(vout_window_t *window, unsigned width, unsigned height, vout_window_ack_cb cb, void *opaque)
Definition: window.c:233
static void vout_display_window_StateNotify(vout_window_t *window, unsigned window_state)
Definition: window.c:253
static void vout_display_window_CloseNotify(vout_window_t *window)
Definition: window.c:246
static void vout_display_window_OutputEvent(vout_window_t *window, const char *name, const char *desc)
Definition: window.c:350

Referenced by vout_display_window_New().