quartztext, controlling playback with the Apple Remote and embedded AGL vouts (aka safari/mozilla plugin vouts) are not supported by now. Quartztext and AGL vout will need a complete rewrite.
The OS X interface no longer depends on the QuickTime framework.
CC402F430E00ABBB006A4BA4 /* QTKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = CC1941240B9C1F8400635F6B /* QTKit.framework */; };
CC402F440E00ABBB006A4BA4 /* WebKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = CC962E2C0CC7992800A56695 /* WebKit.framework */; };
CCB60A420E6E5E3F00407004 /* VLM.nib in Resources */ = {isa = PBXBuildFile; fileRef = CCB60A400E6E5E3F00407004 /* VLM.nib */; };
+ CCBE999F0F922C51000705F8 /* CoreServices.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = CCBE999E0F922C51000705F8 /* CoreServices.framework */; };
CCD90F4E0E87C86D0034564A /* add_schedule.png in Resources */ = {isa = PBXBuildFile; fileRef = CCD90F4B0E87C86D0034564A /* add_schedule.png */; };
CCD90F4F0E87C86D0034564A /* add_vod.png in Resources */ = {isa = PBXBuildFile; fileRef = CCD90F4C0E87C86D0034564A /* add_vod.png */; };
CCD90F500E87C86D0034564A /* add_broadcast.png in Resources */ = {isa = PBXBuildFile; fileRef = CCD90F4D0E87C86D0034564A /* add_broadcast.png */; };
CCB60A3E0E6E5DD900407004 /* vlm.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = vlm.m; path = ../../../modules/gui/macosx/vlm.m; sourceTree = SOURCE_ROOT; };
CCB60A3F0E6E5DD900407004 /* vlm.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = vlm.h; path = ../../../modules/gui/macosx/vlm.h; sourceTree = SOURCE_ROOT; };
CCB60A410E6E5E3F00407004 /* English */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = English; path = Resources/English.lproj/VLM.nib; sourceTree = "<group>"; };
+ CCBE999E0F922C51000705F8 /* CoreServices.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreServices.framework; path = /System/Library/Frameworks/CoreServices.framework; sourceTree = "<absolute>"; };
CCC593780AB4A9FB0004FF52 /* embeddedwindow.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = embeddedwindow.h; path = ../../../modules/gui/macosx/embeddedwindow.h; sourceTree = SOURCE_ROOT; };
CCC593790AB4A9FB0004FF52 /* embeddedwindow.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = embeddedwindow.m; path = ../../../modules/gui/macosx/embeddedwindow.m; sourceTree = SOURCE_ROOT; };
CCC895830D9A8A82005AE59C /* eyetv.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = eyetv.m; path = ../../../modules/access/eyetv.m; sourceTree = SOURCE_ROOT; };
CC402F420E00ABBB006A4BA4 /* ApplicationServices.framework in Frameworks */,
CC402F430E00ABBB006A4BA4 /* QTKit.framework in Frameworks */,
CC402F440E00ABBB006A4BA4 /* WebKit.framework in Frameworks */,
+ CCBE999F0F922C51000705F8 /* CoreServices.framework in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
1058C7ACFEA557BF11CA2CBB /* Linked Frameworks */ = {
isa = PBXGroup;
children = (
+ CCBE999E0F922C51000705F8 /* CoreServices.framework */,
CC962E2C0CC7992800A56695 /* WebKit.framework */,
CC1941240B9C1F8400635F6B /* QTKit.framework */,
CC3DC89B0A7CDB9600B53F32 /* ApplicationServices.framework */,
*****************************************************************************/
/* DisableScreenUpdates, SetSystemUIMode, ... */
-#import <QuickTime/QuickTime.h>
+#import <Carbon/Carbon.h>
#import "intf.h"
#import "controls.h"
}
/* Make sure we don't see the o_view disappearing of the screen during this operation */
- DisableScreenUpdates();
- [[self contentView] replaceSubview:o_view with:o_temp_view];
+ #ifndef __x86_64__
+ DisableScreenUpdates();
+ #endif
+ [[self contentView] replaceSubview:o_view with:o_temp_view];
[o_temp_view setFrame:[o_view frame]];
[o_fullscreen_window setContentView:o_view];
[o_fullscreen_window makeKeyAndOrderFront:self];
- EnableScreenUpdates();
+ #ifndef __x86_64__
+ EnableScreenUpdates();
+ #endif
}
/* We are in fullscreen (and no animation is running) */
{
/* This function is private and should be only triggered at the end of the fullscreen change animation */
/* Make sure we don't see the o_view disappearing of the screen during this operation */
- DisableScreenUpdates();
+ #ifndef __x86_64__
+ DisableScreenUpdates();
+ #endif
[o_view retain];
[o_view removeFromSuperviewWithoutNeedingDisplay];
[[self contentView] replaceSubview:o_temp_view with:o_view];
if ([self isVisible])
[super makeKeyAndOrderFront:self]; /* our version contains a workaround */
[o_fullscreen_window orderOut: self];
- EnableScreenUpdates();
+ #ifndef __x86_64__
+ EnableScreenUpdates();
+ #endif
[o_fullscreen_window release];
o_fullscreen_window = nil;
i_lastShownVolume = -1;
+#ifndef __x86_64__
o_remote = [[AppleRemote alloc] init];
[o_remote setClickCountEnabledButtons: kRemoteButtonPlay];
[o_remote setDelegate: _o_sharedMainInstance];
+#endif
o_eyetv = [[VLCEyeTVController alloc] init];
application */
- (void)applicationDidBecomeActive:(NSNotification *)aNotification
{
+#ifndef __x86_64__
[o_remote startListening: self];
+#endif
}
- (void)applicationDidResignActive:(NSNotification *)aNotification
{
+#ifndef __x86_64__
[o_remote stopListening: self];
+#endif
}
/* Triggered when the computer goes to sleep */
if( [o_msg_arr count] + 2 > 400 )
{
- unsigned rid[] = { 0, 1 };
- [o_msg_arr removeObjectsFromIndices: (unsigned *)&rid
+ NSUInteger rid[] = { 0, 1 };
+ /* FIXME: THIS METHOD WILL BE DEPRECATED */
+ [o_msg_arr removeObjectsFromIndices: (NSUInteger *)&rid
numIndices: sizeof(rid)/sizeof(rid[0])];
}
*****************************************************************************/
#import <Cocoa/Cocoa.h>
-#import <QuickTime/QuickTime.h>
+#import <Carbon/Carbon.h>
#import "intf.h" /* VLCApplication */
#import "misc.h"
- (CGDirectDisplayID)displayID
{
- return (CGDirectDisplayID)_screenNumber;
+ return (CGDirectDisplayID)[[[self deviceDescription] objectForKey: @"NSScreenNumber"] intValue];
}
- (void)blackoutOtherScreens
[newCell setNumberOfTickMarks:[oldCell numberOfTickMarks]];
[newCell setEditable:[oldCell isEditable]];
[newCell setEnabled:[oldCell isEnabled]];
- [newCell setEntryType:[oldCell entryType]];
+ [newCell setFormatter:[oldCell formatter]];
[newCell setHighlighted:[oldCell isHighlighted]];
[newCell setTickMarkPosition:[oldCell tickMarkPosition]];
[self setCell:newCell];
if( ![[NSUserDefaults standardUserDefaults] objectForKey: kPrefUpdateOnStartup] )
{
/* We don't have any preferences stored, ask the user. */
- int res = NSRunInformationalAlertPanel( _NS("Do you want VLC to check for updates automatically?"),
+ NSInteger res = NSRunInformationalAlertPanel( _NS("Do you want VLC to check for updates automatically?"),
_NS("You can change this option in VLC's update window later on."), _NS("Yes"), _NS("No"), nil );
[self setShouldCheckUpdate: res];
}
#include <stdlib.h> /* free() */
#include <string.h>
-/* BeginFullScreen, EndFullScreen */
-#include <QuickTime/QuickTime.h>
-
/* prevent system sleep */
#import <CoreServices/CoreServices.h>
+#import <CoreServices/../Frameworks/OSServices.framework/Headers/Power.h>
+
+/* SystemUIMode */
+#import <Carbon/Carbon.h>
#include <vlc_keys.h>
bool b_saved_frame;
NSRect s_frame;
bool b_got_frame;
- /* Mozilla plugin-related variables */
+
+ /* Mozilla plugin-related variables (not 64bit compatible) */
bool b_embedded;
+#ifndef __x86_64__
AGLContext agl_ctx;
AGLDrawable agl_drawable;
int i_offx, i_offy;
WindowGroupRef winGroup;
bool b_clipped_out;
Rect clipBounds, viewBounds;
+#endif
};
/*****************************************************************************
static int Lock ( vout_thread_t * p_vout );
static void Unlock ( vout_thread_t * p_vout );
+#ifndef __x86_64__
static int aglInit ( vout_thread_t * p_vout );
static void aglEnd ( vout_thread_t * p_vout );
static int aglManage ( vout_thread_t * p_vout );
static void aglSwap ( vout_thread_t * p_vout );
static int aglLock ( vout_thread_t * p_vout );
static void aglUnlock ( vout_thread_t * p_vout );
+#endif
int OpenVideoGL ( vlc_object_t * p_this )
{
memset( p_vout->p_sys, 0, sizeof( vout_sys_t ) );
+#ifndef __x86_64__
var_Get( p_vout->p_libvlc, "drawable-agl", &value_drawable );
if( value_drawable.i_int != 0 )
{
}
else
{
+#endif
NSAutoreleasePool *o_pool = [[NSAutoreleasePool alloc] init];
p_vout->p_sys->b_embedded = false;
p_vout->pf_swap = Swap;
p_vout->pf_lock = Lock;
p_vout->pf_unlock = Unlock;
+#ifndef __x86_64__
}
+#endif
p_vout->p_sys->b_got_frame = false;
return VLC_SUCCESS;
msg_Dbg( p_this, "Closing" );
+#ifndef __x86_64__
if( p_vout->p_sys->b_embedded )
{
if( p_vout->p_sys->agl_ctx )
[o_pool release];
}
+#else
+ if(VLCIntf && vlc_object_alive (VLCIntf))
+ {
+ NSAutoreleasePool *o_pool = [[NSAutoreleasePool alloc] init];
+
+ /* Close the window */
+ [p_vout->p_sys->o_vout_view performSelectorOnMainThread:@selector(closeVout) withObject:NULL waitUntilDone:YES];
+
+ [o_pool release];
+ }
+#endif
/* Clean up */
free( p_vout->p_sys );
}
* embedded AGL context implementation
*****************************************************************************/
+#ifndef __x86_64__
+
static void aglSetViewport( vout_thread_t *p_vout, Rect viewBounds, Rect clipBounds );
static void aglReshape( vout_thread_t * p_vout );
static OSStatus WindowEventHandler(EventHandlerCallRef nextHandler, EventRef event, void *userData);
}
}
+#endif
#include "VLCMinimalVoutWindow.h"
/* SetSystemUIMode, ... */
-#import <QuickTime/QuickTime.h>
+#import <Carbon/Carbon.h>
#import <Cocoa/Cocoa.h>
#include "voutagl.h"
/*****************************************************************************
- * embedded AGL context implementation
+ * embedded AGL context implementation (not 64bit compatible)
*****************************************************************************/
+#ifndef __x86_64__
static void aglSetViewport( vout_thread_t *p_vout, Rect viewBounds, Rect clipBounds );
static void aglReshape( vout_thread_t * p_vout );
static OSStatus WindowEventHandler(EventHandlerCallRef nextHandler, EventRef event, void *userData);
}
#endif
}
+
+#endif
i_drawable_agl = var_GetInteger( p_vout->p_libvlc, "drawable-agl" );
i_drawable_gl = var_GetInteger( p_vout->p_libvlc, "drawable-gl" );
- /* Are we in the mozilla plugin ? */
+ /* Are we in the mozilla plugin, which isn't 64bit compatible ? */
+#ifndef __x86_64__
if( i_drawable_agl > 0 )
{
p_vout->pf_init = aglInit;
p_vout->pf_lock = cocoaglvoutviewLock;
p_vout->pf_unlock = cocoaglvoutviewUnlock;
}
+#else
+ /* Let's use the VLCOpenGLVoutView.m class */
+ p_vout->pf_init = cocoaglvoutviewInit;
+ p_vout->pf_end = cocoaglvoutviewEnd;
+ p_vout->pf_manage = cocoaglvoutviewManage;
+ p_vout->pf_control= cocoaglvoutviewControl;
+ p_vout->pf_swap = cocoaglvoutviewSwap;
+ p_vout->pf_lock = cocoaglvoutviewLock;
+ p_vout->pf_unlock = cocoaglvoutviewUnlock;
+#endif
p_vout->p_sys->b_got_frame = false;
return VLC_SUCCESS;