Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
V
vlc-2-2
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-2-2
Commits
f1e8c225
Commit
f1e8c225
authored
Aug 16, 2011
by
Felix Paul Kühne
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
macosx: added native fullscreen support for OS X Lion
parent
11b25c5b
Changes
16
Hide whitespace changes
Inline
Side-by-side
Showing
16 changed files
with
69 additions
and
19 deletions
+69
-19
NEWS
NEWS
+2
-0
modules/gui/macosx/AudioEffects.m
modules/gui/macosx/AudioEffects.m
+2
-0
modules/gui/macosx/CoreInteraction.m
modules/gui/macosx/CoreInteraction.m
+2
-9
modules/gui/macosx/MainWindow.m
modules/gui/macosx/MainWindow.m
+3
-3
modules/gui/macosx/TrackSynchronization.m
modules/gui/macosx/TrackSynchronization.m
+3
-0
modules/gui/macosx/VideoEffects.m
modules/gui/macosx/VideoEffects.m
+3
-0
modules/gui/macosx/about.m
modules/gui/macosx/about.m
+6
-0
modules/gui/macosx/bookmarks.m
modules/gui/macosx/bookmarks.m
+3
-0
modules/gui/macosx/fspanel.m
modules/gui/macosx/fspanel.m
+3
-1
modules/gui/macosx/intf.h
modules/gui/macosx/intf.h
+2
-1
modules/gui/macosx/intf.m
modules/gui/macosx/intf.m
+26
-5
modules/gui/macosx/open.m
modules/gui/macosx/open.m
+3
-0
modules/gui/macosx/playlistinfo.m
modules/gui/macosx/playlistinfo.m
+2
-0
modules/gui/macosx/prefs.m
modules/gui/macosx/prefs.m
+3
-0
modules/gui/macosx/simple_prefs.m
modules/gui/macosx/simple_prefs.m
+3
-0
modules/gui/macosx/wizard.m
modules/gui/macosx/wizard.m
+3
-0
No files found.
NEWS
View file @
f1e8c225
...
...
@@ -83,6 +83,7 @@ Interfaces:
* Mac OS X: new Track Synchronization panel
* Mac OS X: new Video Effects panel for color and geometry adjustments
* Mac OS X: re-written Open Disc functionality with automatic media detection
* Mac OS X: support for the native fullscreen mode on OS X Lion
* The rc and telnet lua interfaces were merged into a new "cli" interface
* dbus: Rewrite of the main loop to use a more efficient poll-based model
* dbus: Upgrade to an mpris2 compliant interface, see http://www.mpris.org
...
...
@@ -99,6 +100,7 @@ Video Output:
chroma conversion
* New video output for Android platform, based on Surface
* Support for 9/10bits output in the OpenGL output
* Updated OpenGL video output for Mac, which requires a Quartz Extreme capable Mac
Audio Output:
* New audio output based on AudioQueue API for iOS
...
...
modules/gui/macosx/AudioEffects.m
View file @
f1e8c225
...
...
@@ -102,6 +102,8 @@ static VLCAudioEffects *_o_sharedInstance = nil;
[[
o_tableView
tabViewItemAtIndex
:[
o_tableView
indexOfTabViewItemWithIdentifier
:
@"filter"
]]
setLabel
:
_NS
(
"Filter"
)];
[
o_window
setTitle
:
_NS
(
"Audio Effects"
)];
[
o_window
setExcludedFromWindowsMenu
:
YES
];
if
(
NSAppKitVersionNumber
>=
1115
.
2
)
[
o_window
setCollectionBehavior
:
NSWindowCollectionBehaviorFullScreenAuxiliary
];
[
self
setupEqualizer
];
[
self
resetCompressor
];
...
...
modules/gui/macosx/CoreInteraction.m
View file @
f1e8c225
...
...
@@ -278,14 +278,7 @@ static VLCCoreInteraction *_o_sharedInstance = nil;
-
(
void
)
toggleFullscreen
{
input_thread_t
*
p_input
=
pl_CurrentInput
(
VLCIntf
);
if
(
p_input
!=
NULL
)
{
playlist_t
*
p_playlist
=
pl_Get
(
VLCIntf
);
var_ToggleBool
(
p_playlist
,
"fullscreen"
);
vlc_object_release
(
p_input
);
}
playlist_t
*
p_playlist
=
pl_Get
(
VLCIntf
);
var_ToggleBool
(
p_playlist
,
"fullscreen"
);
}
@end
modules/gui/macosx/MainWindow.m
View file @
f1e8c225
...
...
@@ -218,6 +218,8 @@ static VLCMainWindow *_o_sharedInstance = nil;
o_temp_view
=
[[
NSView
alloc
]
init
];
[
o_temp_view
setAutoresizingMask
:
NSViewHeightSizable
|
NSViewWidthSizable
];
[
o_dropzone_view
setFrame
:
[
o_playlist_table
frame
]];
if
(
NSAppKitVersionNumber
>=
1115
.
2
)
[
self
setCollectionBehavior
:
NSWindowCollectionBehaviorFullScreenPrimary
];
/* create the sidebar */
o_sidebaritems
=
[[
NSMutableArray
alloc
]
init
];
...
...
@@ -803,7 +805,7 @@ static VLCMainWindow *_o_sharedInstance = nil;
{
[
o_video_view
removeFromSuperviewWithoutNeedingDisplay
];
[
o_video_view
setFrame
:
[
o_split_view
frame
]];
[[
self
contentView
]
addSubview
:
o_video_view
];
[[
self
contentView
]
addSubview
:
o_video_view
positioned
:
NSWindowAbove
relativeTo
:
nil
];
}
b_nonembedded
=
NO
;
}
...
...
@@ -1313,8 +1315,6 @@ static VLCMainWindow *_o_sharedInstance = nil;
/* fullscreenAnimation will be unlocked when animation ends */
}
/* Make sure setFrame gets executed on main thread especially if we are animating.
* (Thus we won't block the video output thread) */
-
(
void
)
setFrame
:(
NSRect
)
frame
display
:(
BOOL
)
display
animate
:(
BOOL
)
animate
...
...
modules/gui/macosx/TrackSynchronization.m
View file @
f1e8c225
...
...
@@ -61,6 +61,9 @@ static VLCTrackSynchronization *_o_sharedInstance = nil;
[
o_sv_speed_lbl
setStringValue
:
_NS
(
"Speed of the subtitles:"
)];
[[
o_sv_speed_value_fld
formatter
]
setFormat
:[
NSString
stringWithFormat
:
@"#,##0.000 %@"
,
_NS
(
"fps"
)]];
if
(
NSAppKitVersionNumber
>=
1115
.
2
)
[
o_window
setCollectionBehavior
:
NSWindowCollectionBehaviorFullScreenAuxiliary
];
[
self
resetValues
:
self
];
}
...
...
modules/gui/macosx/VideoEffects.m
View file @
f1e8c225
...
...
@@ -60,6 +60,9 @@ static VLCVideoEffects *_o_sharedInstance = nil;
{
[
o_window
setTitle
:
_NS
(
"Video Effects"
)];
[
o_window
setExcludedFromWindowsMenu
:
YES
];
if
(
NSAppKitVersionNumber
>=
1115
.
2
)
[
o_window
setCollectionBehavior
:
NSWindowCollectionBehaviorFullScreenAuxiliary
];
[[
o_tableView
tabViewItemAtIndex
:[
o_tableView
indexOfTabViewItemWithIdentifier
:
@"basic"
]]
setLabel
:
_NS
(
"Basic"
)];
[[
o_tableView
tabViewItemAtIndex
:[
o_tableView
indexOfTabViewItemWithIdentifier
:
@"crop"
]]
setLabel
:
_NS
(
"Crop"
)];
[[
o_tableView
tabViewItemAtIndex
:[
o_tableView
indexOfTabViewItemWithIdentifier
:
@"geometry"
]]
setLabel
:
_NS
(
"Geometry"
)];
...
...
modules/gui/macosx/about.m
View file @
f1e8c225
...
...
@@ -67,6 +67,12 @@ static VLAboutBox *_o_sharedInstance = nil;
[
super
dealloc
];
}
-
(
void
)
awakeFromNib
{
if
(
NSAppKitVersionNumber
>=
1115
.
2
)
[
o_about_window
setCollectionBehavior
:
NSWindowCollectionBehaviorFullScreenAuxiliary
];
}
/*****************************************************************************
* VLC About Window
*****************************************************************************/
...
...
modules/gui/macosx/bookmarks.m
View file @
f1e8c225
...
...
@@ -71,6 +71,9 @@ static VLCBookmarks *_o_sharedInstance = nil;
-
(
void
)
awakeFromNib
{
if
(
NSAppKitVersionNumber
>=
1115
.
2
)
[
o_bookmarks_window
setCollectionBehavior
:
NSWindowCollectionBehaviorFullScreenAuxiliary
];
[
self
initStrings
];
}
...
...
modules/gui/macosx/fspanel.m
View file @
f1e8c225
...
...
@@ -49,7 +49,9 @@
[
win
setOpaque
:
NO
];
[
win
setHasShadow
:
NO
];
[
win
setBackgroundColor
:[
NSColor
clearColor
]];
if
(
NSAppKitVersionNumber
>=
1115
.
2
)
[
win
setCollectionBehavior
:
NSWindowCollectionBehaviorFullScreenAuxiliary
];
/* let the window sit on top of everything else and start out completely transparent */
[
win
setLevel
:
NSModalPanelWindowLevel
];
i_device
=
0
;
...
...
modules/gui/macosx/intf.h
View file @
f1e8c225
...
...
@@ -38,6 +38,7 @@
#include <Cocoa/Cocoa.h>
#import "SPMediaKeyTap.h"
/* for the media key support */
#import "misc.h"
#import "MainWindow.h"
/*****************************************************************************
* Local prototypes.
...
...
@@ -108,7 +109,7 @@ struct intf_sys_t
BOOL
nib_bookmarks_loaded
;
/* Bookmarks nibfile */
BOOL
b_active_videoplayback
;
id
o_mainwindow
;
/* VLCMainWindow */
VLCMainWindow
*
o_mainwindow
;
/* VLCMainWindow */
IBOutlet
VLCControls
*
o_controls
;
/* VLCControls */
IBOutlet
VLCPlaylist
*
o_playlist
;
/* VLCPlaylist */
...
...
modules/gui/macosx/intf.m
View file @
f1e8c225
...
...
@@ -41,7 +41,6 @@
#import "intf.h"
#import "MainMenu.h"
#import "MainWindow.h"
#import "vout.h"
#import "prefs.h"
#import "playlist.h"
...
...
@@ -260,7 +259,6 @@ static int InputEvent( vlc_object_t *p_this, const char *psz_var,
case
INPUT_EVENT_ES
:
break
;
case
INPUT_EVENT_TELETEXT
:
NSLog
(
@"teletext"
);
break
;
case
INPUT_EVENT_AOUT
:
break
;
...
...
@@ -563,6 +561,9 @@ static VLCMain *_o_sharedMainInstance = nil;
var_AddCallback
(
p_playlist
,
"volume"
,
VolumeUpdated
,
self
);
var_AddCallback
(
p_playlist
,
"mute"
,
VolumeUpdated
,
self
);
if
([
NSApp
currentSystemPresentationOptions
]
==
NSApplicationPresentationFullScreen
)
var_SetBool
(
p_playlist
,
"fullscreen"
,
YES
);
/* load our Core Dialogs nib */
nib_coredialogs_loaded
=
[
NSBundle
loadNibNamed
:
@"CoreDialogs"
owner
:
NSApp
];
...
...
@@ -1229,10 +1230,30 @@ unsigned int CocoaKeyToVLC( unichar i_key )
#pragma mark Interface updaters
-
(
void
)
fullscreenChanged
{
if
(
!
[
o_mainwindow
isFullscreen
]
)
[
o_mainwindow
performSelectorOnMainThread
:
@selector
(
enterFullscreen
)
withObject
:
nil
waitUntilDone
:
NO
];
playlist_t
*
p_playlist
=
pl_Get
(
VLCIntf
);
BOOL
b_fullscreen
=
var_GetBool
(
p_playlist
,
"fullscreen"
);
if
(
NSAppKitVersionNumber
>=
1115
.
2
)
{
[
o_mainwindow
toggleFullScreen
:
self
];
if
(
b_fullscreen
)
[
NSApp
setPresentationOptions
:(
NSApplicationPresentationFullScreen
)];
else
[
NSApp
setPresentationOptions
:(
NSApplicationPresentationDefault
)];
}
else
[
o_mainwindow
performSelectorOnMainThread
:
@selector
(
leaveFullscreen
)
withObject
:
nil
waitUntilDone
:
NO
];
{
input_thread_t
*
p_input
=
pl_CurrentInput
(
VLCIntf
);
if
(
p_input
!=
NULL
)
{
if
(
b_fullscreen
)
[
o_mainwindow
performSelectorOnMainThread
:
@selector
(
enterFullscreen
)
withObject
:
nil
waitUntilDone
:
NO
];
else
[
o_mainwindow
performSelectorOnMainThread
:
@selector
(
leaveFullscreen
)
withObject
:
nil
waitUntilDone
:
NO
];
vlc_object_release
(
p_input
);
}
}
}
-
(
void
)
PlaylistItemChanged
...
...
modules/gui/macosx/open.m
View file @
f1e8c225
...
...
@@ -104,6 +104,9 @@ static VLCOpen *_o_sharedMainInstance = nil;
-
(
void
)
awakeFromNib
{
if
(
NSAppKitVersionNumber
>=
1115
.
2
)
[
o_panel
setCollectionBehavior
:
NSWindowCollectionBehaviorFullScreenAuxiliary
];
[
o_panel
setTitle
:
_NS
(
"Open Source"
)];
[
o_mrl_lbl
setStringValue
:
_NS
(
"Media Resource Locator (MRL)"
)];
...
...
modules/gui/macosx/playlistinfo.m
View file @
f1e8c225
...
...
@@ -69,6 +69,8 @@ static VLCInfo *_o_sharedInstance = nil;
{
[
o_info_window
setExcludedFromWindowsMenu
:
YES
];
[
o_info_window
setFloatingPanel
:
NO
];
if
(
NSAppKitVersionNumber
>=
1115
.
2
)
[
o_info_window
setCollectionBehavior
:
NSWindowCollectionBehaviorFullScreenAuxiliary
];
[
o_info_window
setTitle
:
_NS
(
"Media Information"
)];
[
o_uri_lbl
setStringValue
:
_NS
(
"Location"
)];
...
...
modules/gui/macosx/prefs.m
View file @
f1e8c225
...
...
@@ -175,6 +175,9 @@ static VLCPrefs *_o_sharedMainInstance = nil;
{
p_intf
=
VLCIntf
;
if
(
NSAppKitVersionNumber
>=
1115
.
2
)
[
o_prefs_window
setCollectionBehavior
:
NSWindowCollectionBehaviorFullScreenAuxiliary
];
[
self
initStrings
];
[
o_prefs_view
setBorderType
:
NSGrooveBorder
];
[
o_prefs_view
setHasVerticalScroller
:
YES
];
...
...
modules/gui/macosx/simple_prefs.m
View file @
f1e8c225
...
...
@@ -104,6 +104,9 @@ static VLCSimplePrefs *_o_sharedInstance = nil;
[
o_sprefs_toolbar
setDelegate
:
self
];
[
o_sprefs_win
setToolbar
:
o_sprefs_toolbar
];
if
(
NSAppKitVersionNumber
>=
1115
.
2
)
[
o_sprefs_win
setCollectionBehavior
:
NSWindowCollectionBehaviorFullScreenAuxiliary
];
/* setup useful stuff */
o_hotkeysNonUseableKeys
=
[[
NSArray
arrayWithObjects
:
@"Command-c"
,
@"Command-x"
,
@"Command-v"
,
@"Command-a"
,
@"Command-,"
,
@"Command-h"
,
@"Command-Alt-h"
,
@"Command-Shift-o"
,
@"Command-o"
,
@"Command-d"
,
@"Command-n"
,
@"Command-s"
,
@"Command-z"
,
@"Command-l"
,
@"Command-r"
,
@"Command-3"
,
@"Command-m"
,
@"Command-w"
,
@"Command-Shift-w"
,
@"Command-Shift-c"
,
@"Command-Shift-p"
,
@"Command-i"
,
@"Command-e"
,
@"Command-Shift-e"
,
@"Command-b"
,
@"Command-Shift-m"
,
@"Command-Ctrl-m"
,
@"Command-?"
,
@"Command-Alt-?"
,
nil
]
retain
];
}
...
...
modules/gui/macosx/wizard.m
View file @
f1e8c225
...
...
@@ -71,6 +71,9 @@ static VLCWizard *_o_sharedInstance = nil;
-
(
void
)
awakeFromNib
{
if
(
NSAppKitVersionNumber
>=
1115
.
2
)
[
o_wizard_window
setCollectionBehavior
:
NSWindowCollectionBehaviorFullScreenAuxiliary
];
/* some minor cleanup */
[
o_t2_tbl_plst
setEnabled
:
NO
];
o_userSelections
=
[[
NSMutableDictionary
alloc
]
init
];
...
...
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