[Top][All Lists]
[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();");