gnash-commit
[Top][All Lists]
Advanced

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

[Gnash-commit] /srv/bzr/gnash/trunk r10724: Only force a redraw when qua


From: Sandro Santilli
Subject: [Gnash-commit] /srv/bzr/gnash/trunk r10724: Only force a redraw when quality actually changes.
Date: Thu, 19 Mar 2009 10:10:05 +0100
User-agent: Bazaar (1.5)

------------------------------------------------------------
revno: 10724
committer: Sandro Santilli <address@hidden>
branch nick: trunk
timestamp: Thu 2009-03-19 10:10:05 +0100
message:
  Only force a redraw when quality actually changes.
  Still perform the rc query and renderer comunication.
modified:
  libcore/movie_root.cpp
=== modified file 'libcore/movie_root.cpp'
--- a/libcore/movie_root.cpp    2009-03-19 07:17:15 +0000
+++ b/libcore/movie_root.cpp    2009-03-19 09:10:05 +0000
@@ -1434,17 +1434,27 @@
     if (rcfile.qualityLevel() >= 0) {
         int ql = rcfile.qualityLevel();
         ql = std::min<int>(ql, QUALITY_BEST);
-        _quality = static_cast<Quality>(ql);
+        q = static_cast<Quality>(ql);
     }
-    else {
+
+    if ( _quality != q )
+    {
+        // Force a redraw if quality changes
+        //
+        // redraw should only happen on next
+        // frame advancement (tested)
+        //
+        setInvalidated();
+
         _quality = q;
     }
+
+
+    // We always tell the renderer, because it could
+    // be the first time we do
     render_handler* renderer = get_render_handler();
     if (renderer) renderer->setQuality(_quality);
 
-    // force a redraw
-    // TODO: check if the redraw should be immediate
-    setInvalidated();
 }
 
 /// Get actionscript width of stage, in pixels. The width


reply via email to

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