gnash-commit
[Top][All Lists]
Advanced

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

[Gnash-commit] gnash ChangeLog server/sprite_instance.cpp test...


From: Sandro Santilli
Subject: [Gnash-commit] gnash ChangeLog server/sprite_instance.cpp test...
Date: Mon, 21 Jan 2008 12:58:36 +0000

CVSROOT:        /sources/gnash
Module name:    gnash
Changes by:     Sandro Santilli <strk>  08/01/21 12:58:36

Modified files:
        .              : ChangeLog 
        server         : sprite_instance.cpp 
        testsuite/misc-ming.all: masks_test.c 

Log message:
        even if we're a mask still run the hitTest if we can handle mouse 
events.

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/gnash/ChangeLog?cvsroot=gnash&r1=1.5442&r2=1.5443
http://cvs.savannah.gnu.org/viewcvs/gnash/server/sprite_instance.cpp?cvsroot=gnash&r1=1.452&r2=1.453
http://cvs.savannah.gnu.org/viewcvs/gnash/testsuite/misc-ming.all/masks_test.c?cvsroot=gnash&r1=1.9&r2=1.10

Patches:
Index: ChangeLog
===================================================================
RCS file: /sources/gnash/gnash/ChangeLog,v
retrieving revision 1.5442
retrieving revision 1.5443
diff -u -b -r1.5442 -r1.5443
--- ChangeLog   21 Jan 2008 11:04:35 -0000      1.5442
+++ ChangeLog   21 Jan 2008 12:58:34 -0000      1.5443
@@ -1,3 +1,10 @@
+2008-01-21 Sandro Santilli <address@hidden>
+
+       * server/sprite_instance.cpp (pointInVisibleShape): even if we're a
+         mask still run the hitTest if we can handle mouse events.
+       * testsuite/misc-ming.all/masks_test.c: success in masks with mouse
+         events and hitTest results.
+
 2008-01-21 Udo Giacomozzi <address@hidden>
 
        * server/asobj/SoundGst.cpp: don't start playing sound in loadSound(),

Index: server/sprite_instance.cpp
===================================================================
RCS file: /sources/gnash/gnash/server/sprite_instance.cpp,v
retrieving revision 1.452
retrieving revision 1.453
diff -u -b -r1.452 -r1.453
--- server/sprite_instance.cpp  20 Jan 2008 19:38:04 -0000      1.452
+++ server/sprite_instance.cpp  21 Jan 2008 12:58:35 -0000      1.453
@@ -3340,9 +3340,13 @@
   if ( ! get_visible() ) return false;
   if ( isMask() )
   {
-    log_debug("%s is a mask, no point will hit it", getTarget().c_str());
+    if ( ! can_handle_mouse_event() )
+    {
+      // see testsuite/misc-ming.all/masks_test.swf
+      log_debug("%s is a mask and can't handle mouse events, no point will hit 
it", getTarget().c_str());
     return false;
   }
+  }
   character* mask = getMask();
   if ( mask && mask->get_visible() && ! mask->pointInShape(x, y) )
   {

Index: testsuite/misc-ming.all/masks_test.c
===================================================================
RCS file: /sources/gnash/gnash/testsuite/misc-ming.all/masks_test.c,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -b -r1.9 -r1.10
--- testsuite/misc-ming.all/masks_test.c        21 Jan 2008 11:43:54 -0000      
1.9
+++ testsuite/misc-ming.all/masks_test.c        21 Jan 2008 12:58:36 -0000      
1.10
@@ -481,8 +481,8 @@
        );
 
        // Red rect is a mask, but has mouse events !
-       xcheck(mo, "staticmc2.hitTest(10, 210, true)"); 
-       xcheck(mo, "staticmc2.hitTest(50, 250, true)"); 
+       check(mo, "staticmc2.hitTest(10, 210, true)"); 
+       check(mo, "staticmc2.hitTest(50, 250, true)"); 
 
        // Yellow rect is now masked by Red rect
        // Yellow rect (staticmc3) is at 30,200-90,260
@@ -501,12 +501,12 @@
        check(mo, "staticmc4.hitTest(210, 210, false)");
 
        // Cyan rect is a mask but has mouse events !
-       xcheck(mo, "staticmc5.hitTest(240, 210, true)");
-       xcheck(mo, "staticmc5.hitTest(280, 250, true)");
+       check(mo, "staticmc5.hitTest(240, 210, true)");
+       check(mo, "staticmc5.hitTest(280, 250, true)");
 
        // Blue rect is a mask but has mouse events !
-       xcheck(mo, "dynamicmc2.hitTest(10, 310, true)");
-       xcheck(mo, "dynamicmc2.hitTest(50, 350, true)");
+       check(mo, "dynamicmc2.hitTest(10, 310, true)");
+       check(mo, "dynamicmc2.hitTest(50, 350, true)");
 
        // Violet rect is now masked by Blue rect
        check(mo, "dynamicmc3.hitTest(40, 310, true)"); 
@@ -519,8 +519,8 @@
        check(mo, "dynamicmc4.hitTest(250, 350, true)"); 
 
        // Light blue is a mask but has mouse events !
-       xcheck(mo, "dynamicmc5.hitTest(240, 310, true)");
-       xcheck(mo, "dynamicmc5.hitTest(280, 350, true)");
+       check(mo, "dynamicmc5.hitTest(240, 310, true)");
+       check(mo, "dynamicmc5.hitTest(280, 350, true)");
 
        add_actions(mo, "_root.totals(154); stop();");
 




reply via email to

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