IE10 support in Gwt

4,392 views
Skip to first unread message

Erik Sapir

unread,
Jan 14, 2013, 3:43:48 PM1/14/13
to google-we...@googlegroups.com
Hello,

Are there any plans to support compilation to IE10 in GWT?
If there are such plans, when should it happen?

Thomas Broyer

unread,
Jan 14, 2013, 8:25:44 PM1/14/13
to google-we...@googlegroups.com


On Monday, January 14, 2013 9:43:48 PM UTC+1, Erik Sapir wrote:
Hello,

Are there any plans to support compilation to IE10 in GWT?

Yes.
 
If there are such plans, when should it happen?

I'm not aware of anyone working on it (which doesn't necessarily mean nobody is working on it currently); so no ETA yet.
We're preparing the 2.5.1 release and we'll start building a roadmap (with versions, not necessarily dates) for the future versions.

Erik Sapir

unread,
Jan 15, 2013, 3:24:42 PM1/15/13
to google-we...@googlegroups.com
Thanks for the reply.

Could you tell me what are the steps required to make it work?
I might have to modify the GWT code locally to make it compile to IE10

Ed

unread,
Jan 16, 2013, 11:21:10 AM1/16/13
to google-we...@googlegroups.com
In the meantime, just force IE10 to render it as IEXX, like IE9. Do this by including the following in your web page:
 <meta http-equiv="X-UA-Compatible" content="IE=7,8,9">

BTW: it's always good to (always) put this in your website, to ensure unpredictable issues when IE comes out with a new version. I had that in the (past) and people started calling me that the website didn't work anymore (IE10)... 
In this way, you are always in control, and not IE...

- Ed

Erik Sapir

unread,
Jan 16, 2013, 11:34:10 AM1/16/13
to google-we...@googlegroups.com
This will not work for me - i use objects that are not supported by IE earlier than 10

colin

unread,
Jan 18, 2013, 12:59:32 PM1/18/13
to google-we...@googlegroups.com
I have a Windows 8 and IE 10, and I can develop GWT apps with no problem, except that don't use JDK 1.7.

Aladdin

unread,
Feb 11, 2013, 8:58:54 AM2/11/13
to google-we...@googlegroups.com
We managed to run GWT on Windows 8 Phone with almost no efforts other than some CSS3 changes.

For the desktop (Metro Style App) it was a bit tricky as the GWT was breaking down at Parsing XML using IE6 parser implementation (using ActiveX), we finally managed to fix this by forcing the loaded implementation to use the standard one as Metro style pages doesn't support ActiveX and M$ finally decided to support standards 


Our app is set to  <meta http-equiv="X-UA-Compatible" content="IE=Edge"> (Both Phone & Metro)

For the Metro we compiled only the ie9 permutation 

Alaa

Thomas Broyer

unread,
Apr 16, 2013, 6:40:04 PM4/16/13
to google-we...@googlegroups.com


On Tuesday, April 16, 2013 2:07:34 PM UTC+2, Mariusz Magdziarz wrote:
When you add support for IE10??

AFAIK, IE10 works OK with the ie9 permutation.
Vaadin has started working on bringing MSPointerEvents to support touch-enabled (and touch-only) devices.

Patrick Tucker

unread,
Apr 17, 2013, 10:22:45 AM4/17/13
to google-we...@googlegroups.com
There are a couple module config files that need to be updated, and at least 1 java file.
 
DOM.gwt.xml
UserAgent.gwt.xml
UserAgentPropertyGenerator.java
 
I also would recommend looking at DOMImplIE9.java and any parent classes to see what needs to be modified.
 
I must be missing something because I am still getting the promt: ... user.agent value (ie9) does not match the runtime user.agent value (ie10) ...

Honza Rames

unread,
Apr 22, 2013, 6:01:56 AM4/22/13
to google-we...@googlegroups.com
It does but out of curiosity, if I add IE10 permutation/browser detection to UserAgent.gwt.xml to which value should I set the property-fallback? I mean is property fallback-recursive (I would assume it is) so setting it to IE9 should work? In case IE9 rule isn't specified it will recursively fallback to IE8 (and generate a compiler warning) right?

Colin Alworth

unread,
Apr 26, 2013, 4:13:16 PM4/26/13
to google-we...@googlegroups.com


In most cases that is true, but CssResource is an interesting exception. The fallback rules work by looking to see if there is no implementation for a particular value, and if not, looking to see if there *is* an implementation for some other value. In the case of ClientBundle and CssResource, they are generated at compile time - when you refer to @if user.agent ie9, that will be compiled *only* into the ie9 build, and not into any ie10 build, which will only contain non-qualified code or statements that actually evaluate to true for ie10.

But yes, otherwise it should behave as you've described.

Walter Hutchinson

unread,
Aug 31, 2013, 10:04:13 AM8/31/13
to google-we...@googlegroups.com

Not sure if this is the place to add this but just wanted to pass on my finding related to IE10 browser support.

I ran into an issue with GWT cellTables and cellTrees using IE 10. When hovering over a row we used hovering styling for that row which worked fine.

However, if we stayed hovering over the row and the cellTree refreshed the hovering styling would disappear.

This was due to events like load and mouseover not firing for the cell widgets as it does with other browsers and lesser IE versions. I followed through the GWT code and found that since GWT cannot resolve the ie10 user.agent so the user.agent for ie6 is used.

I have verified this at many points in the code, but if you set a break point on line 36 in com.google.gwt.dom.client.DOMImplIE6 you will see first that this class is called and that isIE6Detected is set to true;

  static boolean isIE6() {

    if (!isIE6Detected) {

      isIE6 = isIE6Impl();

      isIE6Detected = true<!-- Line 36

    }

    return isIE6;

  }

I was thinking about the following two options, but am going to run them by more experienced members of our team.

Option #1

Since we are performing an upgrade to 2.5.1 now we could modify these 3 files to include an IE10 user agent and set it to fall back to IE8 as is IE9 currently in UserAgent.gwt.xml. They appear to be simple changes.

com.google.gwt.useragent.UserAgent.gwt.xml

com.google.gwt.useragent.rebind.UserAgentPropertyGenerator.java

com.google.gwt.user.DOM.gwt.xml

 

Option #2 (Admitted hack)

Since IE6 is no longer supported and IE10 is resolving to the IE6 user agent then this added to our Common.gwt.xml solves the problem and can be removed when a gwt support user agent IE10.

<replace-with class="com.google.gwt.dom.client.impl.DOMImplIE9">

       <when-type-is class="com.google.gwt.dom.client.impl.DOMImpl"/>

       <when-property-is name="user.agent" value="ie6"/>

</replace-with>

Thomas Broyer

unread,
Aug 31, 2013, 12:03:30 PM8/31/13
to google-we...@googlegroups.com
IIRC, IE10 should use the ie9 permutation because of document.documentMode >= 9, unless you're opting in to quirks mode, in which case all IEs will behave as IE 5.5 and will use the ie6 permutation.
So, first thing is to make sure you're in standards mode.

Andrei

unread,
Sep 1, 2013, 12:11:50 PM9/1/13
to google-we...@googlegroups.com
RE: I ran into an issue with GWT cellTables and cellTrees using IE 10. When hovering over a row we used hovering styling for that row which worked fine.

Why don't you use CSS for styling (like tr:hover) instead of relying on widgets firing events? IE10 handles them just like other browsers.

Reply all
Reply to author
Forward
0 new messages