gnash-commit
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Gnash-commit] gnash ./ChangeLog backend/gnash.cpp backend/ren...


From: Bastiaan Jacques
Subject: [Gnash-commit] gnash ./ChangeLog backend/gnash.cpp backend/ren...
Date: Tue, 16 May 2006 18:29:55 +0000

CVSROOT:        /sources/gnash
Module name:    gnash
Branch:         
Changes by:     Bastiaan Jacques <address@hidden>       06/05/16 18:29:55

Modified files:
        .              : ChangeLog 
        backend        : gnash.cpp render_handler_cairo.cpp 
                         render_handler_ogl.cpp 
        gui            : gtk_glue_gtkglext.cpp kde_glue_opengl.cpp 
        server         : gnash.h 

Log message:
        * backend/gnash.cpp, gui/{gtk_glue_gtkglext,kde_glue_opengl}.cpp:
        Remove OpenGL initialisation code.
        * backend/render_handler_opengl.cpp: Add OpenGL initialisation code
        into create_render_handler_ogl().
        * server/gnash.h, backend/render_handler_cairo.cpp: Modify
        create_render_handler_cairo() to accept an argument which is the Cairo
        handle to which the renderer will draw.
        * backend/gnash.cpp: Remove the hacky cairo binding. If you
        want to try the Cairo backend, use the GUI library in gui/.

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/gnash/gnash/ChangeLog.diff?tr1=1.339&tr2=1.340&r1=text&r2=text
http://cvs.savannah.gnu.org/viewcvs/gnash/gnash/backend/gnash.cpp.diff?tr1=1.34&tr2=1.35&r1=text&r2=text
http://cvs.savannah.gnu.org/viewcvs/gnash/gnash/backend/render_handler_cairo.cpp.diff?tr1=1.2&tr2=1.3&r1=text&r2=text
http://cvs.savannah.gnu.org/viewcvs/gnash/gnash/backend/render_handler_ogl.cpp.diff?tr1=1.12&tr2=1.13&r1=text&r2=text
http://cvs.savannah.gnu.org/viewcvs/gnash/gnash/gui/gtk_glue_gtkglext.cpp.diff?tr1=1.3&tr2=1.4&r1=text&r2=text
http://cvs.savannah.gnu.org/viewcvs/gnash/gnash/gui/kde_glue_opengl.cpp.diff?tr1=1.2&tr2=1.3&r1=text&r2=text
http://cvs.savannah.gnu.org/viewcvs/gnash/gnash/server/gnash.h.diff?tr1=1.25&tr2=1.26&r1=text&r2=text

Patches:
Index: gnash/ChangeLog
diff -u gnash/ChangeLog:1.339 gnash/ChangeLog:1.340
--- gnash/ChangeLog:1.339       Tue May 16 17:06:01 2006
+++ gnash/ChangeLog     Tue May 16 18:29:55 2006
@@ -1,3 +1,15 @@
+2006-05-16 Bastiaan Jacques <address@hidden>
+
+       * backend/gnash.cpp, gui/{gtk_glue_gtkglext,kde_glue_opengl}.cpp:
+       Remove OpenGL initialisation code.
+       * backend/render_handler_opengl.cpp: Add OpenGL initialisation code
+       into create_render_handler_ogl().
+       * server/gnash.h, backend/render_handler_cairo.cpp: Modify
+       create_render_handler_cairo() to accept an argument which is the Cairo
+       handle to which the renderer will draw.
+       * backend/gnash.cpp: Remove the hacky cairo binding. If you
+       want to try the Cairo backend, use the GUI library in gui/.
+
 2006-05-16 Sandro Santilli <address@hidden>
 
        * server/action.cpp: use GUI_GTK rather then HAVE_GTK2
Index: gnash/backend/gnash.cpp
diff -u gnash/backend/gnash.cpp:1.34 gnash/backend/gnash.cpp:1.35
--- gnash/backend/gnash.cpp:1.34        Tue May 16 13:56:56 2006
+++ gnash/backend/gnash.cpp     Tue May 16 18:29:55 2006
@@ -374,11 +374,7 @@
             gnash::set_sound_handler(sound);
 #endif
         }
-#ifdef RENDERER_OPENGL
         render = gnash::create_render_handler_ogl();
-#elif defined(RENDERER_CAIRO)
-        render = gnash::create_render_handler_cairo();
-#endif
         gnash::set_render_handler(render);
     }
     
@@ -542,20 +538,6 @@
         
         // Change the LOD BIAS values to tweak blurriness.
         if (tex_lod_bias != 0.0f) {
-#ifdef FIX_I810_LOD_BIAS       
-            // If 2D textures weren't previously enabled, enable
-            // them now and force the driver to notice the update,
-            // then disable them again.
-            if (!glIsEnabled(GL_TEXTURE_2D)) {
-                // Clearing a mask of zero *should* have no
-                // side effects, but coupled with enbling
-                // GL_TEXTURE_2D it works around a segmentation
-                // fault in the driver for the Intel 810 chip.
-                glEnable(GL_TEXTURE_2D);
-                glClear(0);
-                glDisable(GL_TEXTURE_2D);
-            }
-#endif // FIX_I810_LOD_BIAS
             glTexEnvf(GL_TEXTURE_FILTER_CONTROL_EXT, GL_TEXTURE_LOD_BIAS_EXT, 
tex_lod_bias);
         }
 #ifndef GUI_GTK
@@ -575,26 +557,6 @@
         //
         ogl::open();
 #endif
-        
-        // Turn on alpha blending.
-        glEnable(GL_BLEND);
-        glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
-        
-        // Turn on line smoothing.  Antialiased lines can be used to
-        // smooth the outsides of shapes.
-        glEnable(GL_LINE_SMOOTH);
-        glHint(GL_LINE_SMOOTH_HINT, GL_NICEST);        // GL_NICEST, 
GL_FASTEST, GL_DONT_CARE
-        
-        glMatrixMode(GL_PROJECTION);
-        glOrtho(-OVERSIZE, OVERSIZE, OVERSIZE, -OVERSIZE, -1, 1);
-        glMatrixMode(GL_MODELVIEW);
-        glLoadIdentity();
-        
-        // We don't need lighting effects
-        glDisable(GL_LIGHTING);
-        // glColorPointer(4, GL_UNSIGNED_BYTE, 0, *);
-        // glInterleavedArrays(GL_T2F_N3F_V3F, 0, *)
-        glPushAttrib (GL_ALL_ATTRIB_BITS);             
     }
     
     // Load the actual movie.
Index: gnash/backend/render_handler_cairo.cpp
diff -u gnash/backend/render_handler_cairo.cpp:1.2 
gnash/backend/render_handler_cairo.cpp:1.3
--- gnash/backend/render_handler_cairo.cpp:1.2  Mon May  8 21:12:24 2006
+++ gnash/backend/render_handler_cairo.cpp      Tue May 16 18:29:55 2006
@@ -363,7 +363,10 @@
        // responsible for calling glSwapBuffers() or whatever.
        {
 //         GNASH_REPORT_FUNCTION;
-           // Setup output window
+#if 0
+           // This creates a new window for output, which may be useful for
+           // debugging purposes, but we ordinarily want to use an existing 
one.
+
            if (!g_cr_win)
            {
                Display* xdisp = XOpenDisplay(0);
@@ -381,7 +384,7 @@
                    xdisp, xwin, visual, m_view_width, m_view_height);
                g_cr_win = cairo_create(surface);
            }
-
+#endif
            // Blit offscreen image onto output window 
            cairo_surface_t* offscreen = cairo_get_target(m_cr_offscreen);
            cairo_set_source_surface(g_cr_win, offscreen, 0, 0);
@@ -716,11 +719,12 @@
     m_pattern = cairo_pattern_create_for_surface(m_image);
 }
 
-gnash::render_handler* gnash::create_render_handler_cairo()
+gnash::render_handler* gnash::create_render_handler_cairo(void* cairohandle)
 // Factory.
 {
        //    GNASH_REPORT_FUNCTION;
-       return new render_handler_cairo;
+       g_cr_win = (cairo_t*) cairohandle;
+       return new render_handler_cairo();
 }
 
 
Index: gnash/backend/render_handler_ogl.cpp
diff -u gnash/backend/render_handler_ogl.cpp:1.12 
gnash/backend/render_handler_ogl.cpp:1.13
--- gnash/backend/render_handler_ogl.cpp:1.12   Mon May  8 21:12:24 2006
+++ gnash/backend/render_handler_ogl.cpp        Tue May 16 18:29:55 2006
@@ -1168,6 +1168,45 @@
 // Factory.
 {
 //    GNASH_REPORT_FUNCTION;
+
+    // Do some initialisation.
+#define OVERSIZE       1.0f
+        // Turn on alpha blending.
+        glEnable(GL_BLEND);
+        glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
+        
+        // Turn on line smoothing.  Antialiased lines can be used to
+        // smooth the outsides of shapes.
+        glEnable(GL_LINE_SMOOTH);
+        glHint(GL_LINE_SMOOTH_HINT, GL_NICEST);        // GL_NICEST, 
GL_FASTEST, GL_DONT_CARE
+        
+        glMatrixMode(GL_PROJECTION);
+        glOrtho(-OVERSIZE, OVERSIZE, OVERSIZE, -OVERSIZE, -1, 1);
+        glMatrixMode(GL_MODELVIEW);
+        glLoadIdentity();
+        
+        // We don't need lighting effects
+        glDisable(GL_LIGHTING);
+        // glColorPointer(4, GL_UNSIGNED_BYTE, 0, *);
+        // glInterleavedArrays(GL_T2F_N3F_V3F, 0, *)
+        glPushAttrib (GL_ALL_ATTRIB_BITS);
+
+
+#ifdef FIX_I810_LOD_BIAS
+       // If 2D textures weren't previously enabled, enable
+       // them now and force the driver to notice the update,
+       // then disable them again.
+       if (!glIsEnabled(GL_TEXTURE_2D)) {
+         // Clearing a mask of zero *should* have no
+         // side effects, but coupled with enbling
+         // GL_TEXTURE_2D it works around a segmentation
+         // fault in the driver for the Intel 810 chip.
+         glEnable(GL_TEXTURE_2D);
+         glClear(0);
+         glDisable(GL_TEXTURE_2D);
+       }
+#endif
+
     return new render_handler_ogl;
 }
 
Index: gnash/gui/gtk_glue_gtkglext.cpp
diff -u gnash/gui/gtk_glue_gtkglext.cpp:1.3 gnash/gui/gtk_glue_gtkglext.cpp:1.4
--- gnash/gui/gtk_glue_gtkglext.cpp:1.3 Sat May 13 05:45:27 2006
+++ gnash/gui/gtk_glue_gtkglext.cpp     Tue May 16 18:29:55 2006
@@ -137,26 +137,6 @@
     glTexEnvf(GL_TEXTURE_FILTER_CONTROL_EXT, GL_TEXTURE_LOD_BIAS_EXT, 
_tex_lod_bias);
 #endif
 
-    // Turn on alpha blending.
-    glEnable(GL_BLEND);
-    glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
-    
-    // Turn on line smoothing.  Antialiased lines can be used to
-    // smooth the outsides of shapes.
-    glEnable(GL_LINE_SMOOTH);
-    glHint(GL_LINE_SMOOTH_HINT, GL_NICEST); // GL_NICEST, GL_FASTEST, 
GL_DONT_CARE
-    
-    glMatrixMode(GL_PROJECTION);
-    glOrtho(-OVERSIZE, OVERSIZE, OVERSIZE, -OVERSIZE, -1, 1);
-    glMatrixMode(GL_MODELVIEW);
-    glLoadIdentity();
-    
-    // We don't need lighting effects
-    glDisable(GL_LIGHTING);
-    // glColorPointer(4, GL_UNSIGNED_BYTE, 0, *);
-    // glInterleavedArrays(GL_T2F_N3F_V3F, 0, *)
-    glPushAttrib (GL_ALL_ATTRIB_BITS);
-    
     return renderer;
 }
 
Index: gnash/gui/kde_glue_opengl.cpp
diff -u gnash/gui/kde_glue_opengl.cpp:1.2 gnash/gui/kde_glue_opengl.cpp:1.3
--- gnash/gui/kde_glue_opengl.cpp:1.2   Sat May 13 05:45:27 2006
+++ gnash/gui/kde_glue_opengl.cpp       Tue May 16 18:29:55 2006
@@ -87,26 +87,6 @@
 #ifdef FIX_I810_LOD_BIAS
     glTexEnvf(GL_TEXTURE_FILTER_CONTROL_EXT, GL_TEXTURE_LOD_BIAS_EXT, 
_tex_lod_bias);
 #endif
-    // Turn on alpha blending.
-    glEnable(GL_BLEND);
-    glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
-    
-    // Turn on line smoothing.  Antialiased lines can be used to
-    // smooth the outsides of shapes.
-    glEnable(GL_LINE_SMOOTH);
-    glHint(GL_LINE_SMOOTH_HINT, GL_NICEST); // GL_NICEST, GL_FASTEST, 
GL_DONT_CARE
-    
-    glMatrixMode(GL_PROJECTION);
-    glOrtho(-OVERSIZE, OVERSIZE, OVERSIZE, -OVERSIZE, -1, 1);
-    glMatrixMode(GL_MODELVIEW);
-    glLoadIdentity();
-    
-    // We don't need lighting effects
-    glDisable(GL_LIGHTING);
-    // glColorPointer(4, GL_UNSIGNED_BYTE, 0, *);
-    // glInterleavedArrays(GL_T2F_N3F_V3F, 0, *)
-    glPushAttrib (GL_ALL_ATTRIB_BITS);
-    
     return renderer;
 }
 
Index: gnash/server/gnash.h
diff -u gnash/server/gnash.h:1.25 gnash/server/gnash.h:1.26
--- gnash/server/gnash.h:1.25   Tue May 16 13:56:56 2006
+++ gnash/server/gnash.h        Tue May 16 18:29:55 2006
@@ -153,7 +153,8 @@
 // version of the library, depending on platform etc.
 render_handler*        create_render_handler_xbox();
 render_handler*        create_render_handler_ogl();
-render_handler*        create_render_handler_cairo();
+render_handler*        create_render_handler_cairo(void* cairohandle);
+
 sound_handler* create_sound_handler_sdl();
 
 




reply via email to

[Prev in Thread] Current Thread [Next in Thread]