Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
V
vlc
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Redmine
Redmine
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Metrics
Environments
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
videolan
vlc
Commits
9c8ec043
Commit
9c8ec043
authored
Jul 24, 2010
by
Juho Vähä-Herttua
Committed by
Rémi Denis-Courmont
Jul 25, 2010
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
osx: Add vout_window_t support to macosx vout module
Signed-off-by:
Rémi Denis-Courmont
<
remi@remlab.net
>
parent
cc82ee52
Changes
1
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
27 additions
and
4 deletions
+27
-4
modules/video_output/macosx.m
modules/video_output/macosx.m
+27
-4
No files found.
modules/video_output/macosx.m
View file @
9c8ec043
...
...
@@ -98,6 +98,7 @@ struct vout_display_sys_t
VLCOpenGLVideoView
*
glView
;
id
<
VLCOpenGLVideoViewEmbedding
>
container
;
vout_window_t
*
embed
;
vout_opengl_t
gl
;
vout_display_opengl_t
vgl
;
...
...
@@ -118,15 +119,35 @@ static int Open(vlc_object_t *this)
vd
->
sys
=
sys
;
sys
->
pool
=
NULL
;
sys
->
gl
.
sys
=
NULL
;
sys
->
embed
=
NULL
;
/* Get the drawable object */
id
container
=
var_CreateGetAddress
(
vd
,
"drawable-nsobject"
);
if
(
container
)
{
vout_display_DeleteWindow
(
vd
,
NULL
);
}
else
{
vout_window_cfg_t
wnd_cfg
;
memset
(
&
wnd_cfg
,
0
,
sizeof
(
wnd_cfg
));
wnd_cfg
.
type
=
VOUT_WINDOW_TYPE_NSOBJECT
;
wnd_cfg
.
x
=
var_InheritInteger
(
vd
,
"video-x"
);
wnd_cfg
.
y
=
var_InheritInteger
(
vd
,
"video-y"
);
wnd_cfg
.
width
=
vd
->
cfg
->
display
.
width
;
wnd_cfg
.
height
=
vd
->
cfg
->
display
.
height
;
sys
->
embed
=
vout_display_NewWindow
(
vd
,
&
wnd_cfg
);
if
(
sys
->
embed
)
container
=
sys
->
embed
->
handle
.
nsobject
;
if
(
!
container
)
{
msg_Dbg
(
vd
,
"No drawable-nsobject
, passing over."
);
msg_Dbg
(
vd
,
"No drawable-nsobject nor vout_window_t found
, passing over."
);
goto
error
;
}
vout_display_DeleteWindow
(
vd
,
NULL
);
}
/* This will be released in Close(), on
* main thread, after we are done using it. */
...
...
@@ -220,6 +241,8 @@ void Close(vlc_object_t *this)
if
(
sys
->
gl
.
sys
!=
NULL
)
vout_display_opengl_Clean
(
&
sys
->
vgl
);
if
(
sys
->
embed
)
vout_display_DeleteWindow
(
vd
,
sys
->
embed
);
free
(
sys
);
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment