1
0
mirror of https://github.com/mpv-player/mpv synced 2024-12-23 15:22:09 +00:00

vo_gl: cocoa: decouple cocoa_common from gl_common

Remove the useless dependency on MPGLContext from cocoa_common, since
it was used just to access the vo struct. Change gl_common to pass the
vo struct directly to all the cocoa_common functions.
This commit is contained in:
Stefano Pigozzi 2011-12-04 18:52:16 +01:00
parent 82118dc35e
commit bd8ba89cca
3 changed files with 16 additions and 13 deletions

View File

@ -1,15 +1,15 @@
#ifndef MPLAYER_COCOA_COMMON_H
#define MPLAYER_COCOA_COMMON_H
#include "gl_common.h"
#include "video_out.h"
int vo_cocoa_init(struct vo *vo);
void vo_cocoa_uninit(struct vo *vo);
void vo_cocoa_update_xinerama_info(struct vo *vo);
int vo_cocoa_change_attributes(struct MPGLContext *ctx);
int vo_cocoa_create_window(struct MPGLContext *ctx, uint32_t d_width,
int vo_cocoa_change_attributes(struct vo *vo);
int vo_cocoa_create_window(struct vo *vo, uint32_t d_width,
uint32_t d_height, uint32_t flags);
void vo_cocoa_swap_buffers(void);

View File

@ -3,7 +3,6 @@
#import <QuartzCore/QuartzCore.h>
#import <CoreServices/CoreServices.h> // for CGDisplayHideCursor
#include "cocoa_common.h"
#include "gl_common.h"
#include "options.h"
#include "video_out.h"
@ -130,9 +129,9 @@ void vo_cocoa_update_xinerama_info(struct vo *vo)
aspect_save_screenres(vo, s->screen_frame.size.width, s->screen_frame.size.height);
}
int vo_cocoa_change_attributes(struct MPGLContext *ctx)
int vo_cocoa_change_attributes(struct vo *vo)
{
return SET_WINDOW_OK;
return 0;
}
void resize_window(struct vo *vo)
@ -142,7 +141,7 @@ void resize_window(struct vo *vo)
[s->glContext update];
}
int vo_cocoa_create_window(struct MPGLContext *ctx, uint32_t d_width,
int vo_cocoa_create_window(struct vo *vo, uint32_t d_width,
uint32_t d_height, uint32_t flags)
{
if (s->current_video_size.width > 0 || s->current_video_size.height > 0)
@ -187,7 +186,7 @@ int vo_cocoa_create_window(struct MPGLContext *ctx, uint32_t d_width,
}
if (flags & VOFLAG_FULLSCREEN)
vo_cocoa_fullscreen(ctx->vo);
vo_cocoa_fullscreen(vo);
} else {
if (s->current_video_size.width != s->previous_video_size.width ||
s->current_video_size.height != s->previous_video_size.height) {
@ -203,15 +202,15 @@ int vo_cocoa_create_window(struct MPGLContext *ctx, uint32_t d_width,
}
}
resize_window(ctx->vo);
resize_window(vo);
if (s->window_title)
[s->window_title release];
s->window_title = [[NSString alloc] initWithUTF8String:vo_get_window_title(ctx->vo)];
s->window_title = [[NSString alloc] initWithUTF8String:vo_get_window_title(vo)];
[s->window setTitle: s->window_title];
return SET_WINDOW_OK;
return 0;
}
void vo_cocoa_swap_buffers()

View File

@ -1615,11 +1615,15 @@ void glDrawTex(GL *gl, GLfloat x, GLfloat y, GLfloat w, GLfloat h,
static int create_window_cocoa(struct MPGLContext *ctx, uint32_t d_width,
uint32_t d_height, uint32_t flags)
{
return vo_cocoa_create_window(ctx, d_width, d_height, flags);
if (vo_cocoa_create_window(ctx->vo, d_width, d_height, flags) == 0) {
return SET_WINDOW_OK;
} else {
return SET_WINDOW_FAILED;
}
}
static int setGlWindow_cocoa(MPGLContext *ctx)
{
vo_cocoa_change_attributes(ctx);
vo_cocoa_change_attributes(ctx->vo);
getFunctions(ctx->gl, (void *)getdladdr, NULL);
return SET_WINDOW_OK;
}