diff --git a/Code/Visu/otbImageWidgetBase.txx b/Code/Visu/otbImageWidgetBase.txx
index 26cbff917fb3a212805856d5286d8788c5ffe736..896ae98d129c38e7cd0ef3975c2d0cfa1da46c72 100644
--- a/Code/Visu/otbImageWidgetBase.txx
+++ b/Code/Visu/otbImageWidgetBase.txx
@@ -18,6 +18,8 @@
 #ifndef __otbImageWidgetBase_txx
 #define __otbImageWidgetBase_txx
 
+#define GL_NO_ACCEL
+
 #include "itkImageRegionConstIterator.h"
 #include "itkMacro.h"
 #include "otbMacro.h"
@@ -329,16 +331,18 @@ ImageWidgetBase<TPixel>
   glDisable(GL_BLEND);
 
 
-  glRasterPos2i(0,this->h());  
-//  glPixelZoom(m_OpenGlIsotropicZoom ,-m_OpenGlIsotropicZoom);
+  glRasterPos2i(0,this->h());
 
- // // display the image
- //glDrawPixels(m_BufferedRegion.GetSize()[0],
-// 	      m_BufferedRegion.GetSize()[1], 
-// 	      GL_RGBA,
-// 	      GL_UNSIGNED_BYTE, 
-// 	      m_OpenGlBuffer);
+#ifdef GL_NO_ACCEL
+  glPixelZoom(m_OpenGlIsotropicZoom ,-m_OpenGlIsotropicZoom);
 
+  // display the image
+  glDrawPixels(m_BufferedRegion.GetSize()[0],
+	       m_BufferedRegion.GetSize()[1], 
+	       GL_RGBA,
+	       GL_UNSIGNED_BYTE, 
+	       m_OpenGlBuffer);
+#else
   glEnable(GL_TEXTURE_2D);
   glColor4f(1.0,1.0,1.0,0.0);
   GLuint texture;
@@ -349,7 +353,7 @@ ImageWidgetBase<TPixel>
   glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MAG_FILTER,GL_NEAREST);	// Nearest Filtering
 //   glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MIN_FILTER,GL_LINEAR);	// Linear Filtering
 //   glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MAG_FILTER,GL_LINEAR);	// Linear Filtering
-  
+
   glBindTexture (GL_TEXTURE_2D, texture);
   glBegin (GL_QUADS);
   int hOffset = this->h() - this->hDisplayed();
@@ -360,19 +364,23 @@ ImageWidgetBase<TPixel>
   glEnd ();
 
   glDisable(GL_TEXTURE_2D);
-
+#endif
+  
  // if image overlay is activated, display image overlay
   if(m_ImageOverlayVisible)
-  {
-//     glEnable(GL_BLEND);
-//     glBlendFunc(GL_SRC_ALPHA,GL_ONE_MINUS_SRC_ALPHA);
-//     glDrawPixels(m_BufferedRegion.GetSize()[0],
-//                  m_BufferedRegion.GetSize()[1], 
-//                                           GL_RGBA,
-//                                           GL_UNSIGNED_BYTE, 
-//                                           m_OpenGlImageOverlayBuffer);
-
-//     glDisable(GL_BLEND);
+    {
+#ifdef GL_NO_ACCEL
+    glEnable(GL_BLEND);
+    glBlendFunc(GL_SRC_ALPHA,GL_ONE_MINUS_SRC_ALPHA);
+    glDrawPixels(m_BufferedRegion.GetSize()[0],
+                 m_BufferedRegion.GetSize()[1], 
+		 GL_RGBA,
+		 GL_UNSIGNED_BYTE, 
+		 m_OpenGlImageOverlayBuffer);
+
+    glDisable(GL_BLEND);
+    glEnd();
+#else
     glEnable(GL_BLEND);
     glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
     glEnable(GL_TEXTURE_2D);
@@ -393,9 +401,9 @@ ImageWidgetBase<TPixel>
     glEnd ();
     glDisable(GL_TEXTURE_2D);
     glDisable(GL_BLEND);
-    
-//      glEnd();
-  } 
+#endif
+
+    } 
 
   if(m_FormOverlayVisible)
   {