JDK-4690831 : Game applets fail to repaint properly with internet explorer
  • Type: Bug
  • Component: client-libs
  • Sub-Component: java.awt
  • Affected Version: 1.4.0,1.4.1
  • Priority: P3
  • Status: Resolved
  • Resolution: Fixed
  • OS: windows,windows_nt,windows_2000,windows_xp
  • CPU: x86
  • Submitted: 2002-05-23
  • Updated: 2003-08-07
  • Resolved: 2002-06-27
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availabitlity Release.

To download the current JDK release, click here.
1.4.1 rcFixed
Related Reports
Duplicate :  
Duplicate :  
Duplicate :  
Duplicate :  
Duplicate :  
Relates :  
If you run any of the following applets by using hopper b12 on internet explorer

"Go with the flow" from http://www.real.com/games/webgames/puzzle.html?src=webgames-main
"War Zone" from http://www.iwin.com/games/cat_arcade.asp
"Knock 'Em Out" from http://www.gamehouse.com
"Family feud" from http://www.uproar.com/games/cat_gameshows_flash.asp

one can observe that the applet does not show up. However if you use the java console and list the threads, it is clear that the applet has been loaded properly but not repainted. In all these cases, applet is not shown directly, when the applet is being initialized, they draw the applet offscreen and show ads. Finally, the applet is shown once it is ready.

CONVERTED DATA BugTraq+ Release Management Values COMMIT TO FIX: hopper-rc FIXED IN: hopper-rc INTEGRATED IN: hopper-rc

EVALUATION This bug is similar to the bug #4627627, re-assigning to AWT team for more investigation. ###@###.### 2002-05-28 I'll commit to fix in Hopper for now. The plugin team would like a fix for Hopper because this could be a high-profile applet compatibility issue. ###@###.### 2002-05-30 May be the same as 4688962. ###@###.### 2002-06-03 Name: rpR10076 Date: 06/18/2002 ###@###.### The cause for knockemout applet is determined. The applet defines methods getWidth() and getHeight(). It is not exactly obvious what they do, but they perform some applet-specific calculations, and it seems that the results are not exactly screen width and height of applet, but some other values. The applet was written for JDK 1.1, where no such methods were defined in java.awt.Component. In 1.2, these methods were added to Component, and so, if run with 1.2 or higher version, the applet ***overrides*** those methods, but applet's authors surely didn't intend it this way. Anyways, this only becomes noticeable in 1.4, when 2D starts depending (indirectly, via SurfaceData) on these methods: <breakpoint> at knockemout.KnockEmBuffer.getWidth(KnockEmBuffer.java:129) at sun.awt.windows.WComponentPeer.getBounds(WComponentPeer.java:283) at sun.awt.windows.Win32SurfaceData.getBounds(Win32SurfaceData.java:439) at sun.java2d.SunGraphics2D.<init>(SunGraphics2D.java:245) So now instead of the size that 2D is interested in, they get some applet data that isn't related to its size the way we expect. ====================================================================== This fix is for the "Knock 'Em Out" failure. The "Go with the flow" failure was fixed with 4688962 putback. The "War Zone" applet has been removed from the website. The "Family Feud" applet is working after this fix and the one for 4688962. ###@###.### 2002-06-28 Note: this fix seems to have caused a regression: 4710984. ###@###.### 2002-07-07 ====================================================================== For hopper build 16, the "Family Feud" applet is still failing with the same symptoms. The applet never loads and appears as a gray box. There is sound that occurs and it appears that the applet is running because the Java Console is has continual output, but nothing can be seen and the game can't be played. Info on Java Console output is as follows: java.lang.StringIndexOutOfBoundsException and netscape.javascript.JSException both occur when launching the applet. netscape.javascript.JSException also occurs when exiting. It was tested on WinXP Pro/IE6 for build 16 and retested on W2K Pro with IE 5.5 with the problem being duplicated on both configurations using a resolution of 1024x768 and 32 bit color. It was also retested on the original OS and browser with the following resolution/colors of 1024x768 - 16 Colors, 800x600 - 16 Colors, and 800x600 - 32 Colors. Changing the Screen Area and color does not change the behavior of the applet. The following applets are also failing with the same symptoms. These applets don't produce any errors in the Java console Output or Trace Log output: From location: http://www.real.com/games/webgames/index.html Go with The Flow Find the Difference Animal Find the Difference Art Find the Difference International - this applet passed with build 11. Find the Difference Nature Removi These applets were also testing using the different resolutions/colors listed above. ###@###.### 2002-07-18 The "Find the Difference" applets listed above are not related to this bug report. We have filed a separate bug about them: 4722949. ###@###.### 2002-07-30