JDK-6592361 : Flickering caused by clearing applet area to black
  • Type: Bug
  • Component: deploy
  • Sub-Component: plugin
  • Affected Version: 6u4
  • Priority: P3
  • Status: Closed
  • Resolution: Future Project
  • OS: generic
  • CPU: generic
  • Submitted: 2007-08-13
  • Updated: 2010-12-14
  • Resolved: 2007-11-28
Related Reports
Relates :  
It appears that a side-effect of the applet startup and shutdown work for 6u4 (6399750) is that on the Mozilla Firefox family of browsers the applet's area is being initially cleared to black before being initially painted. This causes distracting flickering when reloading applets. This behavior should be understood and fixed if possible. It does not occur in the Internet Explorer version of the Java Plug-In, which may indicate that native code setting window properties or similar may be applied to fix the problem.

EVALUATION Defer it since the new plugin2 has no such problem.

EVALUATION When the embedded frame is destroyed on EDT, the main thread peeks and dispatches window messages sent to the container window (the parent window of embedded frame). Inspecting WMs sent to the container window, we find WM_ERASEBKGND and WM_PAINT when flickering happens. The black applet area may be caused by these window messages. If we don't dispatch window messages on main thread during frame destroy, the flickeing is gone.