Commit 4fe8a647 authored by Felix Paul Kühne's avatar Felix Paul Kühne

macosx: stability improvements

parent 14d5ddef
...@@ -26,8 +26,6 @@ ...@@ -26,8 +26,6 @@
#import <vlc_interface.h> #import <vlc_interface.h>
@interface VLCCoreInteraction : NSObject { @interface VLCCoreInteraction : NSObject {
intf_thread_t * p_intf;
BOOL b_lockAspectRatio; BOOL b_lockAspectRatio;
} }
+ (VLCCoreInteraction *)sharedInstance; + (VLCCoreInteraction *)sharedInstance;
......
...@@ -71,17 +71,12 @@ static VLCCoreInteraction *_o_sharedInstance = nil; ...@@ -71,17 +71,12 @@ static VLCCoreInteraction *_o_sharedInstance = nil;
object: nil]; object: nil];
} }
- (void)applicationWillFinishLaunching:(NSNotification *)o_notification
{
p_intf = VLCIntf;
}
#pragma mark - #pragma mark -
#pragma mark Playback Controls #pragma mark Playback Controls
- (void)play - (void)play
{ {
playlist_t * p_playlist = pl_Get( p_intf ); playlist_t * p_playlist = pl_Get( VLCIntf );
bool empty; bool empty;
PL_LOCK; PL_LOCK;
...@@ -91,12 +86,12 @@ static VLCCoreInteraction *_o_sharedInstance = nil; ...@@ -91,12 +86,12 @@ static VLCCoreInteraction *_o_sharedInstance = nil;
if( empty ) if( empty )
[[[VLCMain sharedInstance] open] openFileGeneric]; [[[VLCMain sharedInstance] open] openFileGeneric];
var_SetInteger( p_intf->p_libvlc, "key-action", ACTIONID_PLAY_PAUSE ); var_SetInteger( VLCIntf->p_libvlc, "key-action", ACTIONID_PLAY_PAUSE );
} }
- (void)stop - (void)stop
{ {
var_SetInteger( p_intf->p_libvlc, "key-action", ACTIONID_STOP ); var_SetInteger( VLCIntf->p_libvlc, "key-action", ACTIONID_STOP );
/* Close the window directly, because we do know that there /* Close the window directly, because we do know that there
* won't be anymore video. It's currently waiting a bit. */ * won't be anymore video. It's currently waiting a bit. */
[[[self voutView] window] orderOut:self]; [[[self voutView] window] orderOut:self];
...@@ -104,129 +99,133 @@ static VLCCoreInteraction *_o_sharedInstance = nil; ...@@ -104,129 +99,133 @@ static VLCCoreInteraction *_o_sharedInstance = nil;
- (void)faster - (void)faster
{ {
var_SetInteger( p_intf->p_libvlc, "key-action", ACTIONID_FASTER ); var_SetInteger( VLCIntf->p_libvlc, "key-action", ACTIONID_FASTER );
} }
- (void)slower - (void)slower
{ {
var_SetInteger( p_intf->p_libvlc, "key-action", ACTIONID_SLOWER ); var_SetInteger( VLCIntf->p_libvlc, "key-action", ACTIONID_SLOWER );
} }
- (void)normalSpeed - (void)normalSpeed
{ {
var_SetInteger( p_intf->p_libvlc, "key-action", ACTIONID_RATE_NORMAL ); var_SetInteger( VLCIntf->p_libvlc, "key-action", ACTIONID_RATE_NORMAL );
} }
- (void)previous - (void)previous
{ {
var_SetInteger( p_intf->p_libvlc, "key-action", ACTIONID_PREV ); var_SetInteger( VLCIntf->p_libvlc, "key-action", ACTIONID_PREV );
} }
- (void)next - (void)next
{ {
var_SetInteger( p_intf->p_libvlc, "key-action", ACTIONID_NEXT ); var_SetInteger( VLCIntf->p_libvlc, "key-action", ACTIONID_NEXT );
} }
- (void)forward - (void)forward
{ {
var_SetInteger( p_intf->p_libvlc, "key-action", ACTIONID_JUMP_FORWARD_SHORT ); var_SetInteger( VLCIntf->p_libvlc, "key-action", ACTIONID_JUMP_FORWARD_SHORT );
} }
- (void)backward - (void)backward
{ {
var_SetInteger( p_intf->p_libvlc, "key-action", ACTIONID_JUMP_BACKWARD_SHORT ); var_SetInteger( VLCIntf->p_libvlc, "key-action", ACTIONID_JUMP_BACKWARD_SHORT );
} }
- (void)shuffle - (void)shuffle
{ {
vlc_value_t val; vlc_value_t val;
playlist_t * p_playlist = pl_Get( p_intf ); playlist_t * p_playlist = pl_Get( VLCIntf );
var_Get( p_playlist, "random", &val ); var_Get( p_playlist, "random", &val );
val.b_bool = !val.b_bool; val.b_bool = !val.b_bool;
var_Set( p_playlist, "random", val ); var_Set( p_playlist, "random", val );
if( val.b_bool ) if( val.b_bool )
{ {
//vout_OSDMessage( p_intf, SPU_DEFAULT_CHANNEL, "%s", _( "Random On" ) ); //vout_OSDMessage( VLCIntf, SPU_DEFAULT_CHANNEL, "%s", _( "Random On" ) );
config_PutInt( p_playlist, "random", 1 ); config_PutInt( p_playlist, "random", 1 );
} }
else else
{ {
//vout_OSDMessage( p_intf, SPU_DEFAULT_CHANNEL, "%s", _( "Random Off" ) ); //vout_OSDMessage( VLCIntf, SPU_DEFAULT_CHANNEL, "%s", _( "Random Off" ) );
config_PutInt( p_playlist, "random", 0 ); config_PutInt( p_playlist, "random", 0 );
} }
p_intf->p_sys->b_playmode_update = true; VLCIntf->p_sys->b_playmode_update = true;
p_intf->p_sys->b_intf_update = true; VLCIntf->p_sys->b_intf_update = true;
} }
- (void)repeatAll - (void)repeatAll
{ {
playlist_t * p_playlist = pl_Get( p_intf ); playlist_t * p_playlist = pl_Get( VLCIntf );
var_SetBool( p_playlist, "repeat", NO ); var_SetBool( p_playlist, "repeat", NO );
var_SetBool( p_playlist, "loop", YES ); var_SetBool( p_playlist, "loop", YES );
config_PutInt( p_playlist, "repeat", NO ); config_PutInt( p_playlist, "repeat", NO );
config_PutInt( p_playlist, "loop", YES ); config_PutInt( p_playlist, "loop", YES );
//vout_OSDMessage( p_intf, SPU_DEFAULT_CHANNEL, "%s", _( "Repeat All" ) ); //vout_OSDMessage( VLCIntf, SPU_DEFAULT_CHANNEL, "%s", _( "Repeat All" ) );
p_intf->p_sys->b_playmode_update = true; VLCIntf->p_sys->b_playmode_update = true;
p_intf->p_sys->b_intf_update = true; VLCIntf->p_sys->b_intf_update = true;
} }
- (void)repeatOne - (void)repeatOne
{ {
playlist_t * p_playlist = pl_Get( p_intf ); playlist_t * p_playlist = pl_Get( VLCIntf );
var_SetBool( p_playlist, "repeat", YES ); var_SetBool( p_playlist, "repeat", YES );
var_SetBool( p_playlist, "loop", NO ); var_SetBool( p_playlist, "loop", NO );
config_PutInt( p_playlist, "repeat", YES ); config_PutInt( p_playlist, "repeat", YES );
config_PutInt( p_playlist, "loop", NO ); config_PutInt( p_playlist, "loop", NO );
//vout_OSDMessage( p_intf, SPU_DEFAULT_CHANNEL, "%s", _( "Repeat One" ) ); //vout_OSDMessage( VLCIntf, SPU_DEFAULT_CHANNEL, "%s", _( "Repeat One" ) );
p_intf->p_sys->b_playmode_update = true; VLCIntf->p_sys->b_playmode_update = true;
p_intf->p_sys->b_intf_update = true; VLCIntf->p_sys->b_intf_update = true;
} }
- (void)repeatOff - (void)repeatOff
{ {
playlist_t * p_playlist = pl_Get( p_intf ); playlist_t * p_playlist = pl_Get( VLCIntf );
var_SetBool( p_playlist, "repeat", NO ); var_SetBool( p_playlist, "repeat", NO );
var_SetBool( p_playlist, "loop", NO ); var_SetBool( p_playlist, "loop", NO );
config_PutInt( p_playlist, "repeat", NO ); config_PutInt( p_playlist, "repeat", NO );
config_PutInt( p_playlist, "loop", NO ); config_PutInt( p_playlist, "loop", NO );
//vout_OSDMessage( p_intf, SPU_DEFAULT_CHANNEL, "%s", _( "Repeat Off" ) ); //vout_OSDMessage( VLCIntf, SPU_DEFAULT_CHANNEL, "%s", _( "Repeat Off" ) );
p_intf->p_sys->b_playmode_update = true; VLCIntf->p_sys->b_playmode_update = true;
p_intf->p_sys->b_intf_update = true; VLCIntf->p_sys->b_intf_update = true;
} }
// CAVE: [o_main manageVolumeSlider] // CAVE: [o_main manageVolumeSlider]
- (void)volumeUp - (void)volumeUp
{ {
var_SetInteger( p_intf->p_libvlc, "key-action", ACTIONID_VOL_UP ); var_SetInteger( VLCIntf->p_libvlc, "key-action", ACTIONID_VOL_UP );
} }
- (void)volumeDown - (void)volumeDown
{ {
var_SetInteger( p_intf->p_libvlc, "key-action", ACTIONID_VOL_DOWN ); var_SetInteger( VLCIntf->p_libvlc, "key-action", ACTIONID_VOL_DOWN );
} }
- (void)mute - (void)mute
{ {
var_SetInteger( p_intf->p_libvlc, "key-action", ACTIONID_VOL_MUTE ); var_SetInteger( VLCIntf->p_libvlc, "key-action", ACTIONID_VOL_MUTE );
} }
- (void)setVolume: (int)i_value - (void)setVolume: (int)i_value
{ {
playlist_t * p_playlist = pl_Get( p_intf ); intf_thread_t * p_intf = VLCIntf;
int i_volume_step = config_GetInt( p_intf->p_libvlc, "volume-step" ); playlist_t * p_playlist = pl_Get( VLCIntf );
aout_VolumeSet( p_playlist, i_value * i_volume_step ); audio_volume_t i_volume = (audio_volume_t)i_value;
int i_volume_step;
i_volume_step = config_GetInt( VLCIntf->p_libvlc, "volume-step" );
aout_VolumeSet( p_playlist, i_volume * i_volume_step );
} }
#pragma mark - #pragma mark -
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment