Export to GitHub

google-web-toolkit - issue #2902

MouseWheelListener not working properly in Firefox 3


Posted on Sep 22, 2008 by Happy Monkey

Found in GWT Release: 1.5.1

Detailed description: I have extended FocusPanel in which added a textbox. on the focuspanel added MouseWheelListener;

which increment/decrement textbox value on mousewheel motion.

It is working fine in IE and FF2; But I Tried same code in FF3; its not behaving similary. text value incremented by more than one on mousewheel move.

attached a sample code for reproducing this issue

Workaround if you have one: No.

Links to the relevant GWT Developer Forum posts:

Attachments

Comment #1

Posted on Sep 22, 2008 by Happy Monkey

Comment deleted

Comment #2

Posted on Sep 22, 2008 by Happy Monkey

It's misbehaving only when I move mouse wheel while focus(mouse pointer) is on textbox value.

if I Move mouse wheel while mouse pointer is somewhat away from the textbox value its working as expected.

Really Strange.

Comment #3

Posted on Sep 23, 2008 by Massive Elephant

This may be a quirk of FF3's text input implementation. Can you try getting scrollwheel events in plain HTML on FF3 to see if it refuses to send them over text inputs? If it fails in that case, then it's probably beyond GWT's ability to do anything about it.

Comment #4

Posted on Sep 24, 2008 by Happy Monkey

I have tried scrollwheel event on plain HTML, through Javascript increment/decrement the text input value, its working fine in FF3.

find attached HTML which has JS function to capture mousewheel event on "Window". and update value in textbox on mousewheel motion

Mousewheel listener is working fine in plain HTML in FF3.

Thanks.

Attachments

Comment #5

Posted on Oct 1, 2008 by Grumpy Wombat

Hi all, is there any more inputs required for this issue?

Comment #6

Posted on Jan 5, 2009 by Helpful Rabbit

(No comment was entered for this change.)

Comment #7

Posted on Jan 5, 2009 by Helpful Rabbit

(No comment was entered for this change.)

Comment #8

Posted on Mar 12, 2009 by Grumpy Camel

Modified the test.html code initialization section to read

/* Initialization code. */ if (document.documentElement.addEventListener) document.documentElement.addEventListener('DOMMouseScroll', wheel, false); document.documentElement.onmousewheel = wheel; //-->

and the value in the seems to increment/decrement on mouse wheel scrolls in IE6, Chrome1, and FF3.0.5, when the mouse is over the page or over the element.

Comment #9

Posted on Apr 17, 2009 by Massive Elephant

(No comment was entered for this change.)

Comment #10

Posted on Apr 29, 2009 by Massive Elephant

Comment from gwt-contrib (ales.havlik@gmail.com): Even the MouseWheelListener is broken in GWT 1.6.4.

Example: public class TestEntryPoint implements EntryPoint { MouseWheelListener mwl = new MouseWheelListener() { public void onMouseWheel(Widget sender, MouseWheelVelocity velocity) { Window.alert("Mouse Wheel Listener"); } };

public void onModuleLoad() { final Label label = new Label("Mouse Wheel Tester"); final FocusPanel fp = new FocusPanel(); fp.setSize("100%", "100%"); fp.addMouseWheelListener(mwl); fp.add(label); RootPanel.get().add(fp); } }

Tested with: Safari 3.2.2 (Win) FF 3.0.9 (Win) IE 7 (Win) Chrome 2.0.172.8 (Win)

When compiled with GWT 1.5.3 it works in all browsers. With GWT 1.6.4 it works in all except FF - the same situation is when I use MouseWheelHandler instead MouseWheelListener.

Comment #11

Posted on May 15, 2009 by Massive Elephant

Turns out this got inadvertently broken by 1.6's event type map.

Review: http://gwt-code-reviews.appspot.com/33820

Comment #12

Posted on May 15, 2009 by Massive Elephant

Committed as r5396.

Comment #13

Posted on May 15, 2009 by Massive Elephant

Whoops, wrong window. Too many tabs open...

Comment #14

Posted on May 15, 2009 by Massive Elephant

Fix committed as r5398.

Comment #15

Posted on May 28, 2009 by Happy Cat

Hi! Thanks for this fix. I've tested it on FF3 (linux), IE7(XP) ans Safari(XP) and it works. However it still doesn't seem to work in Hosted Mode (linux) :-/ Am I missing something ?

Comment #16

Posted on May 29, 2009 by Massive Elephant

Unfortunately, the old version of Mozilla embedded by the Linux hosted-mode browser doesn't support the mouse wheel very well at all. IIRC, it works to scroll the document body, but no other elements.

The only solution I'm aware of is to use the nascent out-of-process hosted mode implementation that exists in trunk against FF3 on Linux. It requires a bit of care and feeding at the moment, but is reasonably stable.

Comment #17

Posted on Jun 11, 2009 by Grumpy Horse

Issue 3539 has been merged into this issue.

Comment #18

Posted on Jul 29, 2009 by Grumpy Camel

Comment deleted

Comment #19

Posted on Jul 29, 2009 by Massive Elephant

This was released with GWT 1.7. We still need to come back and mark these issues fixed.

Comment #20

Posted on Jul 29, 2009 by Swift Elephant

(No comment was entered for this change.)

Comment #21

Posted on Aug 3, 2009 by Massive Elephant

(No comment was entered for this change.)

Status: Fixed

Labels:
Category-UI Type-Defect Milestone-1_7