From 8f980b0e748f7c5a49e75c00ef4fa0b077d78197 Mon Sep 17 00:00:00 2001 From: Jon Smirl Date: Thu, 3 Jun 2004 02:34:31 +0000 Subject: Open/Close FullScreen die. unichrome and savage implemented, code is ifdef'd out --- src/mesa/drivers/dri/common/dri_util.h | 30 ------------------ src/mesa/drivers/dri/fb/fb_dri.c | 16 +++++----- src/mesa/drivers/dri/ffb/ffb_xmesa.c | 16 +--------- src/mesa/drivers/dri/gamma/gamma_xmesa.c | 17 +---------- src/mesa/drivers/dri/i810/i810screen.c | 8 ----- src/mesa/drivers/dri/i830/i830_screen.c | 2 -- src/mesa/drivers/dri/mach64/mach64_screen.c | 47 +++++++++++++++++------------ src/mesa/drivers/dri/mga/mga_xmesa.c | 9 ------ src/mesa/drivers/dri/r128/r128_screen.c | 41 ++++++++++++++++++------- src/mesa/drivers/dri/r200/r200_screen.c | 2 -- src/mesa/drivers/dri/radeon/radeon_screen.c | 6 ---- src/mesa/drivers/dri/savage/savage_xmesa.c | 7 ++--- src/mesa/drivers/dri/savage/savagecontext.h | 2 +- src/mesa/drivers/dri/sis/sis_context.h | 1 - src/mesa/drivers/dri/sis/sis_screen.c | 10 ------ src/mesa/drivers/dri/tdfx/tdfx_screen.c | 9 ------ src/mesa/drivers/dri/unichrome/via_screen.c | 19 +----------- src/mesa/drivers/dri/x11/x11_dri.c | 15 ++++----- 18 files changed, 77 insertions(+), 180 deletions(-) (limited to 'src/mesa/drivers/dri') diff --git a/src/mesa/drivers/dri/common/dri_util.h b/src/mesa/drivers/dri/common/dri_util.h index cd338efd79..5ecc39a69b 100644 --- a/src/mesa/drivers/dri/common/dri_util.h +++ b/src/mesa/drivers/dri/common/dri_util.h @@ -168,36 +168,6 @@ struct __DriverAPIRec { */ GLboolean (*UnbindContext)(__DRIcontextPrivate *driContextPriv); - /** - * Full screen mode opening callback. - * - * \deprecated - * Full screen functionality is no longer used by DRI. Drivers should - * simply install a function returning \c GL_TRUE for backwards - * compatability. - * - * \todo - * Nothing calls this function anymore. Since this data structure is only - * accessed with in the driver (i.e., libGL never sees it), we need to - * remove the other cases that set this field and remove the field. - */ - GLboolean (*OpenFullScreen)(__DRIcontextPrivate *driContextPriv); - - /** - * Full screen mode closing callback. - * - * \deprecated - * Full screen functionality is no longer used by DRI. Drivers should - * simply install a function returning \c GL_TRUE for backwards - * compatability. - * - * \todo - * Nothing calls this function anymore. Since this data structure is only - * accessed with in the driver (i.e., libGL never sees it), we need to - * remove the other cases that set this field and remove the field. - */ - GLboolean (*CloseFullScreen)(__DRIcontextPrivate *driContextPriv); - /** * Retrieves statistics about buffer swap operations. Required if * GLX_OML_sync_control or GLX_MESA_swap_frame_usage is supported. diff --git a/src/mesa/drivers/dri/fb/fb_dri.c b/src/mesa/drivers/dri/fb/fb_dri.c index 5b3fbd33d4..3a388cebc1 100644 --- a/src/mesa/drivers/dri/fb/fb_dri.c +++ b/src/mesa/drivers/dri/fb/fb_dri.c @@ -557,12 +557,6 @@ fbUnbindContext( __DRIcontextPrivate *driContextPriv ) return GL_TRUE; } -static GLboolean -fbOpenCloseFullScreen( __DRIcontextPrivate *driContextPriv ) -{ - return GL_TRUE; -} - static struct __DriverAPIRec fbAPI = { fbInitDriver, fbDestroyScreen, @@ -572,12 +566,16 @@ static struct __DriverAPIRec fbAPI = { fbDestroyBuffer, fbSwapBuffers, fbMakeCurrent, - fbUnbindContext, - fbOpenCloseFullScreen, - fbOpenCloseFullScreen + fbUnbindContext }; +void +__driRegisterExtensions( void ) +{ +} + + /* * This is the bootstrap function for the driver. * The __driCreateScreen name is the symbol that libGL.so fetches. diff --git a/src/mesa/drivers/dri/ffb/ffb_xmesa.c b/src/mesa/drivers/dri/ffb/ffb_xmesa.c index 0fa8675e02..43c1f34661 100644 --- a/src/mesa/drivers/dri/ffb/ffb_xmesa.c +++ b/src/mesa/drivers/dri/ffb/ffb_xmesa.c @@ -541,18 +541,6 @@ ffbUnbindContext(__DRIcontextPrivate *driContextPriv) return GL_TRUE; } -static GLboolean -ffbOpenFullScreen(__DRIcontextPrivate *driContextPriv) -{ - return GL_TRUE; -} - -static GLboolean -ffbCloseFullScreen(__DRIcontextPrivate *driContextPriv) -{ - return GL_TRUE; -} - void ffbXMesaUpdateState(ffbContextPtr fmesa) { __DRIdrawablePrivate *dPriv = fmesa->driDrawable; @@ -581,9 +569,7 @@ static struct __DriverAPIRec ffbAPI = { ffbDestroyBuffer, ffbSwapBuffers, ffbMakeCurrent, - ffbUnbindContext, - ffbOpenFullScreen, - ffbCloseFullScreen + ffbUnbindContext }; diff --git a/src/mesa/drivers/dri/gamma/gamma_xmesa.c b/src/mesa/drivers/dri/gamma/gamma_xmesa.c index dfe8d41cc4..30c2ba023a 100644 --- a/src/mesa/drivers/dri/gamma/gamma_xmesa.c +++ b/src/mesa/drivers/dri/gamma/gamma_xmesa.c @@ -243,19 +243,6 @@ gammaUnbindContext( __DRIcontextPrivate *driContextPriv ) return GL_TRUE; } -static GLboolean -gammaOpenFullScreen(__DRIcontextPrivate *driContextPriv) -{ - return GL_TRUE; -} - -static GLboolean -gammaCloseFullScreen(__DRIcontextPrivate *driContextPriv) -{ - return GL_TRUE; -} - - static struct __DriverAPIRec gammaAPI = { gammaInitDriver, gammaDestroyScreen, @@ -265,9 +252,7 @@ static struct __DriverAPIRec gammaAPI = { gammaDestroyBuffer, gammaSwapBuffers, gammaMakeCurrent, - gammaUnbindContext, - gammaOpenFullScreen, - gammaCloseFullScreen + gammaUnbindContext }; diff --git a/src/mesa/drivers/dri/i810/i810screen.c b/src/mesa/drivers/dri/i810/i810screen.c index 8f78a68615..39acf630e2 100644 --- a/src/mesa/drivers/dri/i810/i810screen.c +++ b/src/mesa/drivers/dri/i810/i810screen.c @@ -360,12 +360,6 @@ i810DestroyBuffer(__DRIdrawablePrivate *driDrawPriv) } -static GLboolean -i810OpenCloseFullScreen(__DRIcontextPrivate *driContextPriv) -{ - return GL_TRUE; -} - static const struct __DriverAPIRec i810API = { .InitDriver = i810InitDriver, .DestroyScreen = i810DestroyScreen, @@ -376,8 +370,6 @@ static const struct __DriverAPIRec i810API = { .SwapBuffers = i810SwapBuffers, .MakeCurrent = i810MakeCurrent, .UnbindContext = i810UnbindContext, - .OpenFullScreen = i810OpenCloseFullScreen, - .CloseFullScreen = i810OpenCloseFullScreen, .GetSwapInfo = NULL, .GetMSC = NULL, .WaitForMSC = NULL, diff --git a/src/mesa/drivers/dri/i830/i830_screen.c b/src/mesa/drivers/dri/i830/i830_screen.c index 9d580c78ad..da4c94d1c3 100644 --- a/src/mesa/drivers/dri/i830/i830_screen.c +++ b/src/mesa/drivers/dri/i830/i830_screen.c @@ -350,8 +350,6 @@ static const struct __DriverAPIRec i830API = { .SwapBuffers = i830SwapBuffers, .MakeCurrent = i830MakeCurrent, .UnbindContext = i830UnbindContext, - .OpenFullScreen = NULL, - .CloseFullScreen = NULL, .GetSwapInfo = NULL, .GetMSC = NULL, .WaitForMSC = NULL, diff --git a/src/mesa/drivers/dri/mach64/mach64_screen.c b/src/mesa/drivers/dri/mach64/mach64_screen.c index b11a1623da..b8115de811 100644 --- a/src/mesa/drivers/dri/mach64/mach64_screen.c +++ b/src/mesa/drivers/dri/mach64/mach64_screen.c @@ -26,7 +26,7 @@ * Authors: * Gareth Hughes * Leif Delgass - * José Fonseca + * Jos�Fonseca */ #include "mach64_context.h" @@ -359,23 +359,6 @@ mach64DestroyScreen( __DRIscreenPrivate *driScreen ) driScreen->private = NULL; } -/* Initialize the fullscreen mode. - */ -static GLboolean -mach64OpenFullScreen( __DRIcontextPrivate *driContextPriv ) -{ - return GL_TRUE; -} - -/* Shut down the fullscreen mode. - */ -static GLboolean -mach64CloseFullScreen( __DRIcontextPrivate *driContextPriv ) -{ - return GL_TRUE; -} - - /* Create and initialize the Mesa and driver specific pixmap buffer * data. */ @@ -443,6 +426,32 @@ mach64InitDriver( __DRIscreenPrivate *driScreen ) return GL_TRUE; } +#ifndef _SOLO +/* This function is called by libGL.so as soon as libGL.so is loaded. + * This is where we register new extension functions with the dispatcher. + */ +void __driRegisterExtensions( void ) +{ +#if 0 + /* KW: This is handled differently in the other drivers, not sure + * what to do here. + */ + PFNGLXENABLEEXTENSIONPROC glx_enable_extension; + + if ( driCompareGLXAPIVersion( 20030317 ) >= 0 ) { + glx_enable_extension = (PFNGLXENABLEEXTENSIONPROC) + glXGetProcAddress( (const GLubyte *) "__glXEnableExtension" ); + + if ( glx_enable_extension != NULL ) { + glx_enable_extension( "GLX_SGI_swap_control", GL_FALSE ); + glx_enable_extension( "GLX_SGI_video_sync", GL_FALSE ); + glx_enable_extension( "GLX_MESA_swap_control", GL_FALSE ); + } + } +#endif +} +#endif + static struct __DriverAPIRec mach64API = { .InitDriver = mach64InitDriver, .DestroyScreen = mach64DestroyScreen, @@ -453,8 +462,6 @@ static struct __DriverAPIRec mach64API = { .SwapBuffers = mach64SwapBuffers, .MakeCurrent = mach64MakeCurrent, .UnbindContext = mach64UnbindContext, - .OpenFullScreen = mach64OpenFullScreen, - .CloseFullScreen = mach64CloseFullScreen, .GetSwapInfo = NULL, .GetMSC = driGetMSC32, .WaitForMSC = driWaitForMSC32, diff --git a/src/mesa/drivers/dri/mga/mga_xmesa.c b/src/mesa/drivers/dri/mga/mga_xmesa.c index 358c599eba..e0f3a024fc 100644 --- a/src/mesa/drivers/dri/mga/mga_xmesa.c +++ b/src/mesa/drivers/dri/mga/mga_xmesa.c @@ -814,13 +814,6 @@ mgaUnbindContext(__DRIcontextPrivate *driContextPriv) return GL_TRUE; } -static GLboolean -mgaOpenCloseFullScreen(__DRIcontextPrivate *driContextPriv) -{ - return GL_TRUE; -} - - /* This looks buggy to me - the 'b' variable isn't used anywhere... * Hmm - It seems that the drawable is already hooked in to * driDrawablePriv. @@ -906,8 +899,6 @@ static const struct __DriverAPIRec mgaAPI = { .SwapBuffers = mgaSwapBuffers, .MakeCurrent = mgaMakeCurrent, .UnbindContext = mgaUnbindContext, - .OpenFullScreen = mgaOpenCloseFullScreen, - .CloseFullScreen = mgaOpenCloseFullScreen, .GetSwapInfo = getSwapInfo, .GetMSC = driGetMSC32, .WaitForMSC = driWaitForMSC32, diff --git a/src/mesa/drivers/dri/r128/r128_screen.c b/src/mesa/drivers/dri/r128/r128_screen.c index 48a17ab172..26185fa062 100644 --- a/src/mesa/drivers/dri/r128/r128_screen.c +++ b/src/mesa/drivers/dri/r128/r128_screen.c @@ -254,15 +254,6 @@ r128DestroyScreen( __DRIscreenPrivate *sPriv ) } -/* Initialize the fullscreen mode. - */ -static GLboolean -r128OpenCloseFullScreen( __DRIcontextPrivate *driContextPriv ) -{ - return GL_TRUE; -} - - /* Create and initialize the Mesa and driver specific pixmap buffer * data. */ @@ -335,6 +326,36 @@ r128InitDriver( __DRIscreenPrivate *sPriv ) return GL_TRUE; } +#ifndef _SOLO +/** + * This function is called by libGL.so as soon as libGL.so is loaded. + * This is where we register new extension functions with the dispatcher. + * + * \todo This interface has been deprecated, so we should probably remove + * this function before the next XFree86 release. + */ +void __driRegisterExtensions( void ) +{ +#if 0 + /* KW: This is done slightly differently to the other drivers and + dri_interface.h doesn't seem to cope. + */ + PFNGLXENABLEEXTENSIONPROC + glx_enable_extension; + + if ( driCompareGLXAPIVersion( 20030317 ) >= 0 ) { + glx_enable_extension = (PFNGLXENABLEEXTENSIONPROC) + glXGetProcAddress( (const GLubyte *) "__glXEnableExtension" ); + + if ( glx_enable_extension != NULL ) { + glx_enable_extension( "GLX_SGI_swap_control", GL_FALSE ); + glx_enable_extension( "GLX_SGI_video_sync", GL_FALSE ); + glx_enable_extension( "GLX_MESA_swap_control", GL_FALSE ); + } + } +#endif +} +#endif static struct __DriverAPIRec r128API = { .InitDriver = r128InitDriver, @@ -346,8 +367,6 @@ static struct __DriverAPIRec r128API = { .SwapBuffers = r128SwapBuffers, .MakeCurrent = r128MakeCurrent, .UnbindContext = r128UnbindContext, - .OpenFullScreen = r128OpenCloseFullScreen, - .CloseFullScreen = r128OpenCloseFullScreen, .GetSwapInfo = NULL, .GetMSC = driGetMSC32, .WaitForMSC = driWaitForMSC32, diff --git a/src/mesa/drivers/dri/r200/r200_screen.c b/src/mesa/drivers/dri/r200/r200_screen.c index 868f623ee8..8f473e0184 100644 --- a/src/mesa/drivers/dri/r200/r200_screen.c +++ b/src/mesa/drivers/dri/r200/r200_screen.c @@ -610,8 +610,6 @@ static const struct __DriverAPIRec r200API = { .SwapBuffers = r200SwapBuffers, .MakeCurrent = r200MakeCurrent, .UnbindContext = r200UnbindContext, - .OpenFullScreen = NULL, - .CloseFullScreen = NULL, .GetSwapInfo = getSwapInfo, .GetMSC = driGetMSC32, .WaitForMSC = driWaitForMSC32, diff --git a/src/mesa/drivers/dri/radeon/radeon_screen.c b/src/mesa/drivers/dri/radeon/radeon_screen.c index 25d5be5790..6043eab334 100644 --- a/src/mesa/drivers/dri/radeon/radeon_screen.c +++ b/src/mesa/drivers/dri/radeon/radeon_screen.c @@ -526,9 +526,6 @@ radeonDestroyBuffer(__DRIdrawablePrivate *driDrawPriv) _mesa_destroy_framebuffer((GLframebuffer *) (driDrawPriv->driverPrivate)); } - - - static struct __DriverAPIRec radeonAPI = { .InitDriver = radeonInitDriver, .DestroyScreen = radeonDestroyScreen, @@ -539,8 +536,6 @@ static struct __DriverAPIRec radeonAPI = { .SwapBuffers = radeonSwapBuffers, .MakeCurrent = radeonMakeCurrent, .UnbindContext = radeonUnbindContext, - .OpenFullScreen = NULL, - .CloseFullScreen = NULL, .GetSwapInfo = getSwapInfo, .GetMSC = driGetMSC32, .WaitForMSC = driWaitForMSC32, @@ -549,7 +544,6 @@ static struct __DriverAPIRec radeonAPI = { }; - /* * This is the bootstrap function for the driver. * The __driCreateScreen name is the symbol that libGL.so fetches. diff --git a/src/mesa/drivers/dri/savage/savage_xmesa.c b/src/mesa/drivers/dri/savage/savage_xmesa.c index fad490a958..c6163ff598 100644 --- a/src/mesa/drivers/dri/savage/savage_xmesa.c +++ b/src/mesa/drivers/dri/savage/savage_xmesa.c @@ -640,6 +640,7 @@ savageUnbindContext(__DRIcontextPrivate *driContextPriv) return GL_TRUE; } +#if 0 static GLboolean savageOpenFullScreen(__DRIcontextPrivate *driContextPriv) { @@ -673,7 +674,7 @@ savageCloseFullScreen(__DRIcontextPrivate *driContextPriv) } return GL_TRUE; } - +#endif static GLboolean savageMakeCurrent(__DRIcontextPrivate *driContextPriv, @@ -807,9 +808,7 @@ static const struct __DriverAPIRec savageAPI = { savageDestroyBuffer, savageSwapBuffers, savageMakeCurrent, - savageUnbindContext, - savageOpenFullScreen, - savageCloseFullScreen + savageUnbindContext }; diff --git a/src/mesa/drivers/dri/savage/savagecontext.h b/src/mesa/drivers/dri/savage/savagecontext.h index 34056604c3..a50d6b0518 100644 --- a/src/mesa/drivers/dri/savage/savagecontext.h +++ b/src/mesa/drivers/dri/savage/savagecontext.h @@ -214,7 +214,7 @@ struct savage_context_t { /* use this bit to support single/double buffer */ GLuint IsDouble; /* use this to indicate Fullscreen mode */ - GLuint IsFullScreen; + GLuint IsFullScreen; /* FIXME - open/close fullscreen is gone, is this needed? */ GLuint backup_frontOffset; GLuint backup_backOffset; GLuint backup_frontBitmapDesc; diff --git a/src/mesa/drivers/dri/sis/sis_context.h b/src/mesa/drivers/dri/sis/sis_context.h index 19e7afee7f..cc35c02872 100644 --- a/src/mesa/drivers/dri/sis/sis_context.h +++ b/src/mesa/drivers/dri/sis/sis_context.h @@ -315,7 +315,6 @@ struct sis_context GLint GlobalFlag; /* Stereo */ - GLboolean isFullScreen; GLboolean useStereo; GLboolean stereoEnabled; int stereo_drawIndex; diff --git a/src/mesa/drivers/dri/sis/sis_screen.c b/src/mesa/drivers/dri/sis/sis_screen.c index 7b1e24e5a8..df4cc7b232 100644 --- a/src/mesa/drivers/dri/sis/sis_screen.c +++ b/src/mesa/drivers/dri/sis/sis_screen.c @@ -251,14 +251,6 @@ sisInitDriver( __DRIscreenPrivate *sPriv ) return GL_TRUE; } -/* Fullscreen mode change stub - */ -static GLboolean -sisOpenCloseFullScreen( __DRIcontextPrivate *driContextPriv ) -{ - return GL_TRUE; -} - static struct __DriverAPIRec sisAPI = { .InitDriver = sisInitDriver, .DestroyScreen = sisDestroyScreen, @@ -269,8 +261,6 @@ static struct __DriverAPIRec sisAPI = { .SwapBuffers = sisSwapBuffers, .MakeCurrent = sisMakeCurrent, .UnbindContext = sisUnbindContext, - .OpenFullScreen = sisOpenCloseFullScreen, - .CloseFullScreen = sisOpenCloseFullScreen, .GetSwapInfo = NULL, .GetMSC = NULL, .WaitForMSC = NULL, diff --git a/src/mesa/drivers/dri/tdfx/tdfx_screen.c b/src/mesa/drivers/dri/tdfx/tdfx_screen.c index 370f3283c8..d4d5515b24 100644 --- a/src/mesa/drivers/dri/tdfx/tdfx_screen.c +++ b/src/mesa/drivers/dri/tdfx/tdfx_screen.c @@ -262,13 +262,6 @@ tdfxSwapBuffers( __DRIdrawablePrivate *driDrawPriv ) } -static GLboolean -tdfxOpenCloseFullScreen(__DRIcontextPrivate *driContextPriv) -{ - return GL_TRUE; -} - - static const struct __DriverAPIRec tdfxAPI = { .InitDriver = tdfxInitDriver, .DestroyScreen = tdfxDestroyScreen, @@ -279,8 +272,6 @@ static const struct __DriverAPIRec tdfxAPI = { .SwapBuffers = tdfxSwapBuffers, .MakeCurrent = tdfxMakeCurrent, .UnbindContext = tdfxUnbindContext, - .OpenFullScreen = tdfxOpenCloseFullScreen, - .CloseFullScreen = tdfxOpenCloseFullScreen, .GetSwapInfo = NULL, .GetMSC = NULL, .WaitForMSC = NULL, diff --git a/src/mesa/drivers/dri/unichrome/via_screen.c b/src/mesa/drivers/dri/unichrome/via_screen.c index dd65b30f89..bbe570f222 100644 --- a/src/mesa/drivers/dri/unichrome/via_screen.c +++ b/src/mesa/drivers/dri/unichrome/via_screen.c @@ -265,21 +265,6 @@ XMesaCloseFullScreen(__DRIcontextPrivate *driContextPriv) vmesa->Setup[VIA_DESTREG_DI0] = vmesa->driScreen->front_offset; return GL_TRUE; } - -#else - -static GLboolean -viaOpenFullScreen(__DRIcontextPrivate *driContextPriv) -{ - return GL_TRUE; -} - -static GLboolean -viaCloseFullScreen(__DRIcontextPrivate *driContextPriv) -{ - return GL_TRUE; -} - #endif @@ -292,9 +277,7 @@ static struct __DriverAPIRec viaAPI = { viaDestroyBuffer, viaSwapBuffers, viaMakeCurrent, - viaUnbindContext, - viaOpenFullScreen, - viaCloseFullScreen + viaUnbindContext }; diff --git a/src/mesa/drivers/dri/x11/x11_dri.c b/src/mesa/drivers/dri/x11/x11_dri.c index cc307b0cc4..9d92ce8dab 100644 --- a/src/mesa/drivers/dri/x11/x11_dri.c +++ b/src/mesa/drivers/dri/x11/x11_dri.c @@ -430,12 +430,6 @@ x11UnbindContext(__DRIcontextPrivate *driContextPriv) return GL_TRUE; } -static GLboolean -x11OpenCloseFullScreen(__DRIcontextPrivate *driContextPriv) -{ - return GL_TRUE; -} - static struct __DriverAPIRec x11API = { x11InitDriver, x11DestroyScreen, @@ -445,11 +439,14 @@ static struct __DriverAPIRec x11API = { x11DestroyBuffer, x11SwapBuffers, x11MakeCurrent, - x11UnbindContext, - x11OpenCloseFullScreen, - x11OpenCloseFullScreen + x11UnbindContext }; +void +__driRegisterExtensions(void) +{ +} + /* * This is the bootstrap function for the driver. * The __driCreateScreen name is the symbol that libGL.so fetches. -- cgit v1.2.3