Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Menu
Open sidebar
Steve Lhomme
VLC
Commits
92b48ad4
Commit
92b48ad4
authored
Sep 30, 2012
by
David Fuhrmann
Browse files
macosx: add own video view for each window
Note that this commit will break some stuff for non-embedded cases, for now. refs #6814
parent
b9dc8922
Changes
9
Expand all
Hide whitespace changes
Inline
Side-by-side
extras/package/macosx/Resources/English.lproj/DetachedVideoWindow.xib
View file @
92b48ad4
This diff is collapsed.
Click to expand it.
extras/package/macosx/Resources/English.lproj/MainMenu.xib
View file @
92b48ad4
...
@@ -21,6 +21,7 @@
...
@@ -21,6 +21,7 @@
</object>
</object>
<object class="NSMutableArray" key="IBDocument.EditedObjectIDs">
<object class="NSMutableArray" key="IBDocument.EditedObjectIDs">
<bool key="EncodedWithXMLCoder">YES</bool>
<bool key="EncodedWithXMLCoder">YES</bool>
<integer value="2"/>
</object>
</object>
<object class="NSArray" key="IBDocument.PluginDependencies">
<object class="NSArray" key="IBDocument.PluginDependencies">
<bool key="EncodedWithXMLCoder">YES</bool>
<bool key="EncodedWithXMLCoder">YES</bool>
...
@@ -53,7 +54,7 @@
...
@@ -53,7 +54,7 @@
<nil key="NSUserInterfaceItemIdentifier"/>
<nil key="NSUserInterfaceItemIdentifier"/>
<string key="NSWindowContentMaxSize">{1.7976931348623157e+308, 1.7976931348623157e+308}</string>
<string key="NSWindowContentMaxSize">{1.7976931348623157e+308, 1.7976931348623157e+308}</string>
<object class="NSView" key="NSWindowView" id="429932428">
<object class="NSView" key="NSWindowView" id="429932428">
<
nil
key="NSNextResponder"/>
<
reference
key="NSNextResponder"/>
<int key="NSvFlags">256</int>
<int key="NSvFlags">256</int>
<object class="NSMutableArray" key="NSSubviews">
<object class="NSMutableArray" key="NSSubviews">
<bool key="EncodedWithXMLCoder">YES</bool>
<bool key="EncodedWithXMLCoder">YES</bool>
...
@@ -191,6 +192,7 @@
...
@@ -191,6 +192,7 @@
</object>
</object>
<string key="NSFrame">{{1, 1}, {199, 272}}</string>
<string key="NSFrame">{{1, 1}, {199, 272}}</string>
<reference key="NSSuperview" ref="979766179"/>
<reference key="NSSuperview" ref="979766179"/>
<reference key="NSNextKeyView" ref="1064884668"/>
<reference key="NSDocView" ref="1064884668"/>
<reference key="NSDocView" ref="1064884668"/>
<reference key="NSBGColor" ref="885475112"/>
<reference key="NSBGColor" ref="885475112"/>
<int key="NScvFlags">4</int>
<int key="NScvFlags">4</int>
...
@@ -219,6 +221,7 @@
...
@@ -219,6 +221,7 @@
</object>
</object>
<string key="NSFrameSize">{201, 274}</string>
<string key="NSFrameSize">{201, 274}</string>
<reference key="NSSuperview" ref="824340487"/>
<reference key="NSSuperview" ref="824340487"/>
<reference key="NSNextKeyView" ref="18556274"/>
<int key="NSsFlags">133650</int>
<int key="NSsFlags">133650</int>
<reference key="NSVScroller" ref="252983915"/>
<reference key="NSVScroller" ref="252983915"/>
<reference key="NSHScroller" ref="11557666"/>
<reference key="NSHScroller" ref="11557666"/>
...
@@ -449,6 +452,7 @@
...
@@ -449,6 +452,7 @@
</object>
</object>
<string key="NSFrame">{{1, 17}, {402, 236}}</string>
<string key="NSFrame">{{1, 17}, {402, 236}}</string>
<reference key="NSSuperview" ref="915491793"/>
<reference key="NSSuperview" ref="915491793"/>
<reference key="NSNextKeyView" ref="23448837"/>
<reference key="NSDocView" ref="23448837"/>
<reference key="NSDocView" ref="23448837"/>
<reference key="NSBGColor" ref="885475112"/>
<reference key="NSBGColor" ref="885475112"/>
<int key="NScvFlags">4</int>
<int key="NScvFlags">4</int>
...
@@ -483,6 +487,7 @@
...
@@ -483,6 +487,7 @@
</object>
</object>
<string key="NSFrame">{{1, 0}, {402, 17}}</string>
<string key="NSFrame">{{1, 0}, {402, 17}}</string>
<reference key="NSSuperview" ref="915491793"/>
<reference key="NSSuperview" ref="915491793"/>
<reference key="NSNextKeyView" ref="823165105"/>
<reference key="NSDocView" ref="823165105"/>
<reference key="NSDocView" ref="823165105"/>
<reference key="NSBGColor" ref="885475112"/>
<reference key="NSBGColor" ref="885475112"/>
<int key="NScvFlags">4</int>
<int key="NScvFlags">4</int>
...
@@ -490,6 +495,7 @@
...
@@ -490,6 +495,7 @@
</object>
</object>
<string key="NSFrameSize">{404, 254}</string>
<string key="NSFrameSize">{404, 254}</string>
<reference key="NSSuperview" ref="440594360"/>
<reference key="NSSuperview" ref="440594360"/>
<reference key="NSNextKeyView" ref="343242432"/>
<int key="NSsFlags">133682</int>
<int key="NSsFlags">133682</int>
<reference key="NSVScroller" ref="573737110"/>
<reference key="NSVScroller" ref="573737110"/>
<reference key="NSHScroller" ref="297523533"/>
<reference key="NSHScroller" ref="297523533"/>
...
@@ -1056,6 +1062,7 @@
...
@@ -1056,6 +1062,7 @@
</object>
</object>
</object>
</object>
<string key="NSFrameSize">{604, 310}</string>
<string key="NSFrameSize">{604, 310}</string>
<reference key="NSSuperview"/>
</object>
</object>
<string key="NSScreenRect">{{0, 0}, {1280, 778}}</string>
<string key="NSScreenRect">{{0, 0}, {1280, 778}}</string>
<string key="NSMaxSize">{1.7976931348623157e+308, 1.7976931348623157e+308}</string>
<string key="NSMaxSize">{1.7976931348623157e+308, 1.7976931348623157e+308}</string>
...
@@ -15118,7 +15125,6 @@ LCAuLi4</string>
...
@@ -15118,7 +15125,6 @@ LCAuLi4</string>
<string>o_sidebar_scrollview</string>
<string>o_sidebar_scrollview</string>
<string>o_sidebar_view</string>
<string>o_sidebar_view</string>
<string>o_split_view</string>
<string>o_split_view</string>
<string>o_video_view</string>
</object>
</object>
<object class="NSMutableArray" key="dict.values">
<object class="NSMutableArray" key="dict.values">
<bool key="EncodedWithXMLCoder">YES</bool>
<bool key="EncodedWithXMLCoder">YES</bool>
...
@@ -15151,7 +15157,6 @@ LCAuLi4</string>
...
@@ -15151,7 +15157,6 @@ LCAuLi4</string>
<string>id</string>
<string>id</string>
<string>id</string>
<string>id</string>
<string>id</string>
<string>id</string>
<string>id</string>
</object>
</object>
</object>
</object>
<object class="NSMutableDictionary" key="toOneOutletInfosByName">
<object class="NSMutableDictionary" key="toOneOutletInfosByName">
...
@@ -15187,7 +15192,6 @@ LCAuLi4</string>
...
@@ -15187,7 +15192,6 @@ LCAuLi4</string>
<string>o_sidebar_scrollview</string>
<string>o_sidebar_scrollview</string>
<string>o_sidebar_view</string>
<string>o_sidebar_view</string>
<string>o_split_view</string>
<string>o_split_view</string>
<string>o_video_view</string>
</object>
</object>
<object class="NSMutableArray" key="dict.values">
<object class="NSMutableArray" key="dict.values">
<bool key="EncodedWithXMLCoder">YES</bool>
<bool key="EncodedWithXMLCoder">YES</bool>
...
@@ -15307,10 +15311,6 @@ LCAuLi4</string>
...
@@ -15307,10 +15311,6 @@ LCAuLi4</string>
<string key="name">o_split_view</string>
<string key="name">o_split_view</string>
<string key="candidateClassName">id</string>
<string key="candidateClassName">id</string>
</object>
</object>
<object class="IBToOneOutletInfo">
<string key="name">o_video_view</string>
<string key="candidateClassName">id</string>
</object>
</object>
</object>
</object>
</object>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<object class="IBClassDescriptionSource" key="sourceIdentifier">
...
@@ -15917,11 +15917,13 @@ LCAuLi4</string>
...
@@ -15917,11 +15917,13 @@ LCAuLi4</string>
<bool key="EncodedWithXMLCoder">YES</bool>
<bool key="EncodedWithXMLCoder">YES</bool>
<string>o_controls_bar</string>
<string>o_controls_bar</string>
<string>o_titlebar_view</string>
<string>o_titlebar_view</string>
<string>o_video_view</string>
</object>
</object>
<object class="NSMutableArray" key="dict.values">
<object class="NSMutableArray" key="dict.values">
<bool key="EncodedWithXMLCoder">YES</bool>
<bool key="EncodedWithXMLCoder">YES</bool>
<string>VLCControlsBarCommon</string>
<string>VLCControlsBarCommon</string>
<string>id</string>
<string>id</string>
<string>VLCVoutView</string>
</object>
</object>
</object>
</object>
<object class="NSMutableDictionary" key="toOneOutletInfosByName">
<object class="NSMutableDictionary" key="toOneOutletInfosByName">
...
@@ -15930,6 +15932,7 @@ LCAuLi4</string>
...
@@ -15930,6 +15932,7 @@ LCAuLi4</string>
<bool key="EncodedWithXMLCoder">YES</bool>
<bool key="EncodedWithXMLCoder">YES</bool>
<string>o_controls_bar</string>
<string>o_controls_bar</string>
<string>o_titlebar_view</string>
<string>o_titlebar_view</string>
<string>o_video_view</string>
</object>
</object>
<object class="NSMutableArray" key="dict.values">
<object class="NSMutableArray" key="dict.values">
<bool key="EncodedWithXMLCoder">YES</bool>
<bool key="EncodedWithXMLCoder">YES</bool>
...
@@ -15941,6 +15944,10 @@ LCAuLi4</string>
...
@@ -15941,6 +15944,10 @@ LCAuLi4</string>
<string key="name">o_titlebar_view</string>
<string key="name">o_titlebar_view</string>
<string key="candidateClassName">id</string>
<string key="candidateClassName">id</string>
</object>
</object>
<object class="IBToOneOutletInfo">
<string key="name">o_video_view</string>
<string key="candidateClassName">VLCVoutView</string>
</object>
</object>
</object>
</object>
</object>
<object class="IBClassDescriptionSource" key="sourceIdentifier" id="615738430">
<object class="IBClassDescriptionSource" key="sourceIdentifier" id="615738430">
...
...
modules/gui/macosx/MainWindow.h
View file @
92b48ad4
...
@@ -28,7 +28,10 @@
...
@@ -28,7 +28,10 @@
#import "CompatibilityFixes.h"
#import "CompatibilityFixes.h"
#import "PXSourceList.h"
#import "PXSourceList.h"
#import "PXSourceListDataSource.h"
#import "PXSourceListDataSource.h"
#import <vlc_input.h>
#import <vlc_input.h>
#import <vlc_vout_window.h>
#import "Windows.h"
#import "Windows.h"
#import "misc.h"
#import "misc.h"
#import "fspanel.h"
#import "fspanel.h"
...
@@ -36,13 +39,13 @@
...
@@ -36,13 +39,13 @@
@class
VLCDetachedVideoWindow
;
@class
VLCDetachedVideoWindow
;
@class
VLCMainWindowControlsBar
;
@class
VLCMainWindowControlsBar
;
@class
VLCVoutView
;
@interface
VLCMainWindow
:
VLCVideoWindowCommon
<
PXSourceListDataSource
,
PXSourceListDelegate
,
NSWindowDelegate
,
NSAnimationDelegate
,
NSSplitViewDelegate
>
{
@interface
VLCMainWindow
:
VLCVideoWindowCommon
<
PXSourceListDataSource
,
PXSourceListDelegate
,
NSWindowDelegate
,
NSAnimationDelegate
,
NSSplitViewDelegate
>
{
IBOutlet
id
o_search_fld
;
IBOutlet
id
o_search_fld
;
IBOutlet
id
o_playlist_table
;
IBOutlet
id
o_playlist_table
;
IBOutlet
id
o_video_view
;
IBOutlet
id
o_split_view
;
IBOutlet
id
o_split_view
;
IBOutlet
id
o_left_split_view
;
IBOutlet
id
o_left_split_view
;
IBOutlet
id
o_right_split_view
;
IBOutlet
id
o_right_split_view
;
...
@@ -104,7 +107,7 @@
...
@@ -104,7 +107,7 @@
VLCColorView
*
o_color_backdrop
;
VLCColorView
*
o_color_backdrop
;
NSInteger
i_originalLevel
;
NSInteger
i_originalLevel
;
VLCWindow
*
o_extra_video_window
;
VLC
Video
Window
Common
*
o_extra_video_window
;
id
o_current_video_window
;
id
o_current_video_window
;
NSRect
frameBeforePlayback
;
NSRect
frameBeforePlayback
;
...
@@ -136,8 +139,7 @@
...
@@ -136,8 +139,7 @@
-
(
void
)
setPlay
;
-
(
void
)
setPlay
;
-
(
void
)
updateVolumeSlider
;
-
(
void
)
updateVolumeSlider
;
-
(
id
)
videoView
;
-
(
VLCVoutView
*
)
setupVout
:(
vout_window_t
*
)
p_wnd
;
-
(
void
)
setupVideoView
;
-
(
void
)
setVideoplayEnabled
;
-
(
void
)
setVideoplayEnabled
;
-
(
void
)
resizeWindow
;
-
(
void
)
resizeWindow
;
-
(
void
)
setNativeVideoSize
:(
NSSize
)
size
;
-
(
void
)
setNativeVideoSize
:(
NSSize
)
size
;
...
...
modules/gui/macosx/MainWindow.m
View file @
92b48ad4
...
@@ -43,6 +43,7 @@
...
@@ -43,6 +43,7 @@
#import <vlc_aout_intf.h>
#import <vlc_aout_intf.h>
#import "ControlsBar.h"
#import "ControlsBar.h"
#import "VideoView.h"
@interface
VLCMainWindow
()
@interface
VLCMainWindow
()
...
@@ -142,6 +143,11 @@ static VLCMainWindow *_o_sharedInstance = nil;
...
@@ -142,6 +143,11 @@ static VLCMainWindow *_o_sharedInstance = nil;
o_extra_video_window
=
nil
;
o_extra_video_window
=
nil
;
}
}
if
(
o_detached_video_window
)
{
[
o_detached_video_window
release
];
o_detached_video_window
=
nil
;
}
[
super
dealloc
];
[
super
dealloc
];
}
}
...
@@ -727,15 +733,13 @@ static VLCMainWindow *_o_sharedInstance = nil;
...
@@ -727,15 +733,13 @@ static VLCMainWindow *_o_sharedInstance = nil;
#pragma mark -
#pragma mark -
#pragma mark Video Output handling
#pragma mark Video Output handling
-
(
id
)
videoView
{
return
o_video_view
;
}
-
(
void
)
setupVideoView
-
(
VLCVoutView
*
)
setupVout
:(
vout_window_t
*
)
p_wnd
{
{
BOOL
b_video_deco
=
var_InheritBool
(
VLCIntf
,
"video-deco"
);
BOOL
b_video_deco
=
var_InheritBool
(
VLCIntf
,
"video-deco"
);
BOOL
b_video_wallpaper
=
var_InheritBool
(
VLCIntf
,
"video-wallpaper"
);
BOOL
b_video_wallpaper
=
var_InheritBool
(
VLCIntf
,
"video-wallpaper"
);
VLCVoutView
*
o_vout_view
;
VLCVideoWindowCommon
*
o_new_video_window
;
// TODO: make lion fullscreen compatible with video-wallpaper and !embedded-video
// TODO: make lion fullscreen compatible with video-wallpaper and !embedded-video
if
((
b_video_wallpaper
||
!
b_video_deco
)
&&
!
b_nativeFullscreenMode
)
{
if
((
b_video_wallpaper
||
!
b_video_deco
)
&&
!
b_nativeFullscreenMode
)
{
...
@@ -769,17 +773,16 @@ static VLCMainWindow *_o_sharedInstance = nil;
...
@@ -769,17 +773,16 @@ static VLCMainWindow *_o_sharedInstance = nil;
[
o_extra_video_window
setBackgroundColor
:
[
NSColor
blackColor
]];
[
o_extra_video_window
setBackgroundColor
:
[
NSColor
blackColor
]];
[
o_extra_video_window
setCanBecomeKeyWindow
:
!
b_video_wallpaper
];
[
o_extra_video_window
setCanBecomeKeyWindow
:
!
b_video_wallpaper
];
[
o_extra_video_window
setCanBecomeMainWindow
:
!
b_video_wallpaper
];
[
o_extra_video_window
setCanBecomeMainWindow
:
!
b_video_wallpaper
];
[
o_extra_video_window
setAcceptsMouseMovedEvents
:
!
b_video_wallpaper
];
[
o_extra_video_window
setAcceptsMouseMovedEvents
:
!
b_video_wallpaper
];
[
o_extra_video_window
setMovableByWindowBackground
:
!
b_video_wallpaper
];
[
o_extra_video_window
setMovableByWindowBackground
:
!
b_video_wallpaper
];
[
o_extra_video_window
useOptimizedDrawing
:
YES
];
[
o_extra_video_window
useOptimizedDrawing
:
YES
];
[
o_video_view
retain
];
o_vout_view
=
[[
VLCVoutView
alloc
]
initWithFrame
:[[
o_extra_video_window
contentView
]
bounds
]];
if
([
o_video_view
superview
]
!=
NULL
)
[
o_vout_view
setAutoresizingMask
:
NSViewWidthSizable
|
NSViewHeightSizable
];
[
o_video_view
removeFromSuperviewWithoutNeedingDisplay
];
[[
o_extra_video_window
contentView
]
addSubview
:
o_vout_view
positioned
:
NSWindowAbove
relativeTo
:
nil
];
window_rect
.
origin
.
x
=
window_rect
.
origin
.
y
=
0
;
[
o_extra_video_window
setVideoView
:
o_vout_view
];
[
o_video_view
setFrame
:
window_rect
];
[[
o_extra_video_window
contentView
]
addSubview
:
o_video_view
positioned
:
NSWindowAbove
relativeTo
:
nil
];
o_new_video_window
=
o_extra_video_window
;
[
o_video_view
release
];
if
(
b_video_wallpaper
)
if
(
b_video_wallpaper
)
[
o_extra_video_window
orderBack
:
nil
];
[
o_extra_video_window
orderBack
:
nil
];
...
@@ -792,20 +795,14 @@ static VLCMainWindow *_o_sharedInstance = nil;
...
@@ -792,20 +795,14 @@ static VLCMainWindow *_o_sharedInstance = nil;
b_nonembedded
=
YES
;
b_nonembedded
=
YES
;
}
else
{
}
else
{
if
(
var_InheritBool
(
VLCIntf
,
"embedded-video"
)
||
b_nativeFullscreenMode
)
{
if
(
var_InheritBool
(
VLCIntf
,
"embedded-video"
)
||
b_nativeFullscreenMode
)
{
if
([
o_video_view
window
]
!=
self
)
{
o_vout_view
=
[
o_video_view
retain
];
[
o_video_view
removeFromSuperviewWithoutNeedingDisplay
];
o_new_video_window
=
self
;
[
o_video_view
setFrame
:
[
o_split_view
frame
]];
[[
self
contentView
]
addSubview
:
o_video_view
positioned
:
NSWindowAbove
relativeTo
:
nil
];
}
b_nonembedded
=
NO
;
b_nonembedded
=
NO
;
}
else
{
}
else
{
if
([
o_video_view
superview
]
!=
NULL
)
[
o_video_view
removeFromSuperviewWithoutNeedingDisplay
];
if
(
!
o_detached_video_window
)
{
if
(
!
o_detached_video_window
)
{
NSWindowController
*
o_controller
=
[[
NSWindowController
alloc
]
initWithWindowNibName
:
@"DetachedVideoWindow"
];
NSWindowController
*
o_controller
=
[[
NSWindowController
alloc
]
initWithWindowNibName
:
@"DetachedVideoWindow"
];
[
o_controller
loadWindow
];
[
o_controller
loadWindow
];
o_detached_video_window
=
(
VLCDetachedVideoWindow
*
)[
o_controller
window
];
o_detached_video_window
=
[
(
VLCDetachedVideoWindow
*
)[
o_controller
window
]
retain
]
;
[
o_controller
release
];
[
o_controller
release
];
// event occurs before window is created, so call again
// event occurs before window is created, so call again
...
@@ -819,38 +816,31 @@ static VLCMainWindow *_o_sharedInstance = nil;
...
@@ -819,38 +816,31 @@ static VLCMainWindow *_o_sharedInstance = nil;
[
o_detached_video_window
setContentMinSize
:
NSMakeSize
(
363
.,
f_min_video_height
+
[[[
o_detached_video_window
controlsBar
]
bottomBarView
]
frame
].
size
.
height
)];
[
o_detached_video_window
setContentMinSize
:
NSMakeSize
(
363
.,
f_min_video_height
+
[[[
o_detached_video_window
controlsBar
]
bottomBarView
]
frame
].
size
.
height
)];
}
}
NSRect
videoFrame
;
videoFrame
.
size
=
[[
o_detached_video_window
contentView
]
frame
].
size
;
videoFrame
.
size
.
height
-=
[[[
o_detached_video_window
controlsBar
]
bottomBarView
]
frame
].
size
.
height
;
if
(
b_dark_interface
)
videoFrame
.
size
.
height
-=
[
o_titlebar_view
frame
].
size
.
height
;
videoFrame
.
origin
.
x
=
.
0
;
videoFrame
.
origin
.
y
=
[[[
o_detached_video_window
controlsBar
]
bottomBarView
]
frame
].
size
.
height
;
[
o_video_view
setFrame
:
videoFrame
];
[[
o_detached_video_window
contentView
]
addSubview
:
o_video_view
positioned
:
NSWindowAbove
relativeTo
:
nil
];
[
o_detached_video_window
setLevel
:
NSNormalWindowLevel
];
[
o_detached_video_window
setLevel
:
NSNormalWindowLevel
];
[
o_detached_video_window
useOptimizedDrawing
:
YES
];
[
o_detached_video_window
useOptimizedDrawing
:
YES
];
o_vout_view
=
[[
o_detached_video_window
videoView
]
retain
];
o_new_video_window
=
o_detached_video_window
;
b_nonembedded
=
YES
;
b_nonembedded
=
YES
;
}
}
}
}
if
(
!
b_video_wallpaper
)
{
if
(
!
b_video_wallpaper
)
{
[
[
o_video_
view
window
]
makeKeyAndOrderFront
:
self
];
[
o
_new
_video_window
makeKeyAndOrderFront
:
self
];
vout_thread_t
*
p_vout
=
getVout
();
vout_thread_t
*
p_vout
=
getVout
();
if
(
p_vout
)
{
if
(
p_vout
)
{
if
(
var_GetBool
(
p_vout
,
"video-on-top"
))
if
(
var_GetBool
(
p_vout
,
"video-on-top"
))
[
[
o_video_
view
window
]
setLevel
:
NSStatusWindowLevel
];
[
o
_new
_video_window
setLevel
:
NSStatusWindowLevel
];
else
else
[
[
o_video_
view
window
]
setLevel
:
NSNormalWindowLevel
];
[
o
_new
_video_window
setLevel
:
NSNormalWindowLevel
];
vlc_object_release
(
p_vout
);
vlc_object_release
(
p_vout
);
}
}
}
}
[[
o_video_view
window
]
setAlphaValue
:
config_GetFloat
(
VLCIntf
,
"macosx-opaqueness"
)];
[
o_new_video_window
setAlphaValue
:
config_GetFloat
(
VLCIntf
,
"macosx-opaqueness"
)];
return
[
o_vout_view
autorelease
];
}
}
-
(
void
)
setVideoplayEnabled
-
(
void
)
setVideoplayEnabled
...
@@ -1886,8 +1876,15 @@ static VLCMainWindow *_o_sharedInstance = nil;
...
@@ -1886,8 +1876,15 @@ static VLCMainWindow *_o_sharedInstance = nil;
// native fs not supported with detached view yet
// native fs not supported with detached view yet
[
o_titlebar_view
setFullscreenButtonHidden
:
YES
];
[
o_titlebar_view
setFullscreenButtonHidden
:
YES
];
}
}
NSRect
videoViewRect
=
[[
self
contentView
]
bounds
];
if
(
b_dark_interface
)
videoViewRect
.
size
.
height
-=
[
o_titlebar_view
frame
].
size
.
height
;
CGFloat
f_bottomBarHeight
=
[[[
self
controlsBar
]
bottomBarView
]
frame
].
size
.
height
;
videoViewRect
.
size
.
height
-=
f_bottomBarHeight
;
videoViewRect
.
origin
.
y
=
f_bottomBarHeight
;
[
o_video_view
setFrame
:
videoViewRect
];
}
}
@end
@end
modules/gui/macosx/VideoView.m
View file @
92b48ad4
...
@@ -55,12 +55,16 @@
...
@@ -55,12 +55,16 @@
[
super
dealloc
];
[
super
dealloc
];
}
}
-
(
void
)
awakeFromNib
-
(
id
)
initWithFrame
:(
NSRect
)
frameRect
{
{
[
self
registerForDraggedTypes
:[
NSArray
arrayWithObject
:
NSFilenamesPboardType
]];
if
(
self
=
[
super
initWithFrame
:
frameRect
])
{
[
self
registerForDraggedTypes
:[
NSArray
arrayWithObject
:
NSFilenamesPboardType
]];
}
i_lastScrollWheelDirection
=
0
;
i_lastScrollWheelDirection
=
0
;
f_cumulated_magnification
=
0
.
0
;
f_cumulated_magnification
=
0
.
0
;
return
self
;
}
}
-
(
NSDragOperation
)
draggingEntered
:(
id
<
NSDraggingInfo
>
)
sender
-
(
NSDragOperation
)
draggingEntered
:(
id
<
NSDraggingInfo
>
)
sender
...
...
modules/gui/macosx/Windows.h
View file @
92b48ad4
...
@@ -57,6 +57,7 @@
...
@@ -57,6 +57,7 @@
@end
@end
@class
VLCVoutView
;
@class
VLCControlsBarCommon
;
@class
VLCControlsBarCommon
;
/*****************************************************************************
/*****************************************************************************
...
@@ -71,12 +72,15 @@
...
@@ -71,12 +72,15 @@
BOOL
b_dark_interface
;
BOOL
b_dark_interface
;
IBOutlet
id
o_titlebar_view
;
// only set in main or detached window
IBOutlet
id
o_titlebar_view
;
// only set in main or detached window
IBOutlet
VLCVoutView
*
o_video_view
;
IBOutlet
VLCControlsBarCommon
*
o_controls_bar
;
IBOutlet
VLCControlsBarCommon
*
o_controls_bar
;
}
}
@property
(
nonatomic
,
assign
)
VLCVoutView
*
videoView
;
@property
(
readonly
)
VLCControlsBarCommon
*
controlsBar
;
@property
(
readonly
)
VLCControlsBarCommon
*
controlsBar
;
-
(
void
)
setTitle
:(
NSString
*
)
title
;
-
(
void
)
setTitle
:(
NSString
*
)
title
;
@end
@end
\ No newline at end of file
modules/gui/macosx/Windows.m
View file @
92b48ad4
...
@@ -219,6 +219,7 @@
...
@@ -219,6 +219,7 @@
@implementation
VLCVideoWindowCommon
@implementation
VLCVideoWindowCommon
@synthesize
videoView
=
o_video_view
;
@synthesize
controlsBar
=
o_controls_bar
;
@synthesize
controlsBar
=
o_controls_bar
;
#pragma mark -
#pragma mark -
...
...
modules/gui/macosx/intf.h
View file @
92b48ad4
...
@@ -34,6 +34,7 @@
...
@@ -34,6 +34,7 @@
#import <vlc_vout.h>
#import <vlc_vout.h>
#import <vlc_aout.h>
#import <vlc_aout.h>
#import <vlc_input.h>
#import <vlc_input.h>
#import <vlc_vout_window.h>
#import <Cocoa/Cocoa.h>
#import <Cocoa/Cocoa.h>
#import "CompatibilityFixes.h"
#import "CompatibilityFixes.h"
...
@@ -157,7 +158,7 @@ struct intf_sys_t
...
@@ -157,7 +158,7 @@ struct intf_sys_t
-
(
id
)
playlist
;
-
(
id
)
playlist
;
-
(
id
)
info
;
-
(
id
)
info
;
-
(
id
)
wizard
;
-
(
id
)
wizard
;
-
(
id
)
getVideoViewAtPositionX
:
(
int
*
)
pi_x
Y
:
(
int
*
)
pi_y
withWidth
:
(
unsigned
int
*
)
pi_width
andHeight
:
(
unsigned
int
*
)
pi_height
;
-
(
id
)
getVideoViewAtPositionX
:
(
int
*
)
pi_x
Y
:
(
int
*
)
pi_y
withWidth
:
(
unsigned
int
*
)
pi_width
andHeight
:
(
unsigned
int
*
)
pi_height
forWindow
:(
vout_window_t
*
)
p_wnd
;
-
(
void
)
setNativeVideoSize
:(
NSSize
)
size
;
-
(
void
)
setNativeVideoSize
:(
NSSize
)
size
;
-
(
id
)
coreDialogProvider
;
-
(
id
)
coreDialogProvider
;
-
(
id
)
eyeTVController
;
-
(
id
)
eyeTVController
;
...
...
modules/gui/macosx/intf.m
View file @
92b48ad4
...
@@ -41,7 +41,6 @@
...
@@ -41,7 +41,6 @@
#include <vlc_modules.h>
#include <vlc_modules.h>
#include <vlc_plugin.h>
#include <vlc_plugin.h>
#include <vlc_aout_intf.h>
#include <vlc_aout_intf.h>
#include <vlc_vout_window.h>
#include <vlc_vout_display.h>
#include <vlc_vout_display.h>
#include <unistd.h>
/* execl() */
#include <unistd.h>
/* execl() */
...
@@ -142,7 +141,7 @@ int WindowOpen(vout_window_t *p_wnd, const vout_window_cfg_t *cfg)
...
@@ -142,7 +141,7 @@ int WindowOpen(vout_window_t *p_wnd, const vout_window_cfg_t *cfg)
int
i_y
=
cfg
->
y
;
int
i_y
=
cfg
->
y
;
unsigned
i_width
=
cfg
->
width
;
unsigned
i_width
=
cfg
->
width
;
unsigned
i_height
=
cfg
->
height
;
unsigned
i_height
=
cfg
->
height
;
p_wnd
->
handle
.
nsobject
=
[[
VLCMain
sharedInstance
]
getVideoViewAtPositionX
:
&
i_x
Y
:
&
i_y
withWidth
:
&
i_width
andHeight
:
&
i_height
];
p_wnd
->
handle
.
nsobject
=
[[
VLCMain
sharedInstance
]
getVideoViewAtPositionX
:
&
i_x
Y
:
&
i_y
withWidth
:
&
i_width
andHeight
:
&
i_height
forWindow
:
p_wnd
];
if
(
!
p_wnd
->
handle
.
nsobject
)
{
if
(
!
p_wnd
->
handle
.
nsobject
)
{
msg_Err
(
p_wnd
,
"got no video view from the interface"
);
msg_Err
(
p_wnd
,
"got no video view from the interface"
);
...
@@ -1499,10 +1498,20 @@ static VLCMain *_o_sharedMainInstance = nil;
...
@@ -1499,10 +1498,20 @@ static VLCMain *_o_sharedMainInstance = nil;
return
o_wizard
;
return
o_wizard
;