Thanks for reporting this, Damon. For what it's worth, this shouldn't be an
issue anymore in GWT 2.0 as Issue #3588 is looking to eliminate the use of
the AlphaImageLoader altogether, both from IE6 and IE7.
Issue #3588:
http://code.google.com/p/google-web-toolkit/issues/detail?id=3588

<http://code.google.com/p/google-web-toolkit/issues/detail?id=3588>Cheers,
-Sumit Chandel

On Thu, Aug 13, 2009 at 8:42 AM, Damon Lundin <damon.lun...@gmail.com>wrote:

>
> On IE6, we've run into a problem that we don't know how to work
> around.  If you create an ImageBundle and use it for buttons in your
> application, you will run into problems where clicking on the image
> does not fire all the events that it's supposed to.  In particular,
> the blur event does not get fired.
>
> I have distilled the problem to some basic HTML which will show you
> the problem:
>
> The code below is essentially what you get when using an ImageBundle.
> If you put focus on the input field and then click the image, the text
> box does not lose focus and the blur event does not get fired.  If you
> click anywhere but the image, the blur event will get fired.  If you
> use a .gif instead of a .png and the AlphaImageLoader, clicking the
> image will cause the blur event to fire.  Note that the problem is not
> that clicking the image fires no events.  If you add an onClick
> handler below, it will fire.  It just won't fire the blur event.  This
> is particularly troublesome if your code relies on the blur event to
> update your model before handling the click event on the button.  In
> this case, the click event fires but the blur does not and your click
> handler gets a model that's not updated yet (of course we could design
> our click handlers to force an update but that's easier said than done
> in our application).
>
> Does anyone know of any tricks to work around this?  I know there are
> some position tricks people use to make links clickable inside such an
> area, but here all we have is an <img> that does have any nested
> elements.  Is there a way to have the ImageBundle compiler create
> a .gif instead of a .png (assuming all the images were .gifs in the
> first place)?
>
> <html>
>
>    <script type="text/javascript">
>        function onBlur() {
>            window.alert("Blurred!");
>        }
>    </script>
>
> <body>
>
>    <input type="text" onblur="onBlur();"/>
>
>    <DIV>
>        <clipper>
>            <IMG style="FILTER:
> progid:DXImageTransform.Microsoft.AlphaImageLoader(src='http://
> blueprint.lombardi.com/skins/Default/images/popup/talk_right.png');"
> height="200" width="200" src="http://blueprint.lombardi.com/
> com.lombardi.online.gwt.pages.process.ProcessPage/clear.cache.gif"/>
>        </clipper>
>    </DIV>
>
> </body>
> </html>
> >
>

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Google Web Toolkit" group.
To post to this group, send email to Google-Web-Toolkit@googlegroups.com
To unsubscribe from this group, send email to 
google-web-toolkit+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/Google-Web-Toolkit?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to