<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://jogamp.org/bugzilla/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.2"
          urlbase="https://jogamp.org/bugzilla/"
          
          maintainer="sgothel@jausoft.com"
>

    <bug>
          <bug_id>148</bug_id>
          
          <creation_ts>2005-03-21 07:43:32 +0100</creation_ts>
          <short_desc>Swing Component Shadow on GLJPanel</short_desc>
          <delta_ts>2010-03-24 07:47:39 +0100</delta_ts>
          <reporter_accessible>0</reporter_accessible>
          <cclist_accessible>0</cclist_accessible>
          <classification_id>3</classification_id>
          <classification>JogAmp</classification>
          <product>Jogl</product>
          <component>core</component>
          <version>1</version>
          <rep_platform>All</rep_platform>
          <op_sys>windows</op_sys>
          <bug_status>VERIFIED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P3</priority>
          <bug_severity>normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Sven Gothel">sgothel</reporter>
          <assigned_to name="Sven Gothel">sgothel</assigned_to>
          
          
          <cf_type>DEFECT</cf_type>
          <cf_scm_refs></cf_scm_refs>
          <cf_workaround>---</cf_workaround>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>164</commentid>
    <comment_count>0</comment_count>
    <who name="Sven Gothel">sgothel</who>
    <bug_when>2010-03-24 07:47:39 +0100</bug_when>
    <thetext>


---- Reported by gdbolin 2005-03-21 19:43:32 ----

http://www.javagaming.org/cgi-bin/JGNetForums/YaBB.cgi?board=jogl;action=display;num=1111184067;start=0#4

I have a triangle that rotates on a GLJPanel.  It is on a JFrame in the center.
 In the WEST coord of the frame I have a panel with a single button.
 
When I scroll my mouse onto and off of the JButton, it brieflly appears in the
GL Context for some reason.

Here is the test code

 public class Main {
 
    public Main(){
 
   JFrame frame = new JFrame(&quot;Test Frame&quot;);
   frame.setBounds(10, 10, 500, 500);
   frame.setLayout(new BorderLayout());
 
   GLCapabilities glCaps = new GLCapabilities();
   glCaps.setRedBits(8);
   glCaps.setBlueBits(8);
   glCaps.setGreenBits(8);
   glCaps.setAlphaBits(8);
 
   GLJPanel panel = GLDrawableFactory.getFactory().createGLJPanel(glCaps);
   frame.add(panel, BorderLayout.CENTER);
   JPanel p = new JPanel(new FlowLayout());
   JButton b = new JButton(&quot;Test Me&quot;);
   p.add(b);
   frame.add(p, BorderLayout.WEST);
   panel.addGLEventListener(new GLContextRenderer());
 
   final Animator animator = new Animator(panel);
   frame.addWindowListener(new WindowAdapter() {
  public void windowClosing(WindowEvent e) {
    animator.stop();
    System.exit(0);
  }
   });
   frame.setVisible(true);
   animator.start();    
    }
 
    public static void main(String[] args) {
   new Main();
    }
} 

 public class GLContextRenderer implements GLEventListener {
 
    GL gl;
    GLDrawable glDrawable;
    float xRot;
 
    public void init(GLDrawable glDrawable) {
   this.gl = glDrawable.getGL();
   this.glDrawable = glDrawable;
   gl.glShadeModel(GL.GL_SMOOTH);    // Enable Smooth Shading
   gl.glClearColor(0.0f, 0.0f, 0.0f, 0.5f);    // Black Background
   gl.glClearDepth(1.0f);       // Depth Buffer Setup
   gl.glEnable(GL.GL_DEPTH_TEST);       // Enables Depth Testing
   gl.glDepthFunc(GL.GL_LEQUAL);        // The Type Of Depth Testing To Do
   gl.glHint(GL.GL_PERSPECTIVE_CORRECTION_HINT, GL.GL_NICEST); // Really Nice
Perspective Calculations
   gl.glEnable(GL.GL_TEXTURE_2D);
 
    }
 
    public void display(GLDrawable glDrawable) {
   gl.glClear(GL.GL_COLOR_BUFFER_BIT | GL.GL_DEPTH_BUFFER_BIT );
   gl.glLoadIdentity();
 
   gl.glTranslatef(0.0f, 0.0f, -6.0f);
   gl.glColor3f(1.0f, 0.0f, 0.0f );
   gl.glRotatef(xRot, 1.0f, 0.0f, 0.0f);
 
   gl.glBegin( GL.GL_TRIANGLES );
  gl.glVertex3f( 0.0f, 0.0f, 0.0f );
  gl.glVertex3f( 1.0f, 0.0f, 0.0f );
  gl.glVertex3f( 1.0f, 1.0f, 0.0f );
   gl.glEnd();
   xRot += .2f;
    }
 
    public void reshape(GLDrawable glDrawable, int x, int y, int width, int
height) {
   final GLU glu = glDrawable.getGLU();
 
    if (height &lt;= 0) // avoid a divide by zero error!
      height = 1;
    final float h = (float)width / (float)height;
    gl.glViewport(0, 0, width, height);
    gl.glMatrixMode(GL.GL_PROJECTION);
    gl.glLoadIdentity();
    glu.gluPerspective(45.0f, h, 1.0, 20.0);
    gl.glMatrixMode(GL.GL_MODELVIEW);
    gl.glLoadIdentity();
    }
 
    public void displayChanged(GLDrawable glDrawable, boolean b, boolean b1) {
   //To change body of implemented methods use File | Settings | File Templates.
    }
}



---- Additional Comments From kbr 2005-04-09 17:22:23 ----

Created an attachment
Test case that works with 1.4.2 (click button to exhibit bug)




---- Additional Comments From kbr 2005-04-09 17:34:30 ----

The test case specifies alpha bits in the GLCapabilities, which caused the
GLJPanel to create a TYPE_INT_ARGB BufferedImage to store the results of the
readback of the frame buffer for rendering into the GLJPanel. This appears to
not be the correct thing to do, because it causes this BufferedImage to be
alpha-blended with whatever other rendering is performed into Java2D&apos;s backing
store. Therefore when the button was redrawn, its image would show up in this
backing store alpha-blended with the OpenGL rendering results since both were
redrawn simultaneously. I believe the correct solution is to never create a
BufferedImage with an alpha component for the framebuffer readback even if alpha
bits are specified in the GLCapabilities. This is what has been implemented in
the JOGL source base.




--- Bug imported by sgothel@jausoft.com 2010-03-24 07:47 EDT  ---

This bug was previously known as _bug_ 148 at https://jogl.dev.java.net/bugs/show_bug.cgi?id=148
Imported an attachment (id=44)

The original submitter of attachment 44 is unknown.
   Reassigning to the person who moved it here: sgothel@jausoft.com.

</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>44</attachid>
            <date>2005-04-09 17:22:00 +0200</date>
            <delta_ts>2005-04-09 17:22:00 +0200</delta_ts>
            <desc>Test case that works with 1.4.2 (click button to exhibit bug)</desc>
            <filename>Main.java</filename>
            <type>text/plain</type>
            <size>3005</size>
            <attacher name="Sven Gothel">sgothel</attacher>
            
              <data encoding="base64">aW1wb3J0IG5ldC5qYXZhLmdhbWVzLmpvZ2wuKjsNCmltcG9ydCBqYXZheC5zd2luZy4qOw0KaW1w
b3J0IGphdmEuYXd0Lio7DQppbXBvcnQgamF2YS5hd3QuZXZlbnQuKjsNCmltcG9ydCBqYXZheC5z
d2luZy5ldmVudC4qOw0KDQoNCnB1YmxpYyBjbGFzcyBNYWluIHsNCiANCiAgICBwdWJsaWMgTWFp
bigpew0KIA0KICAgSkZyYW1lIGZyYW1lID0gbmV3IEpGcmFtZSgiVGVzdCBGcmFtZSIpOw0KICAg
ZnJhbWUuc2V0Qm91bmRzKDEwLCAxMCwgNTAwLCA1MDApOw0KICAgZnJhbWUuZ2V0Q29udGVudFBh
bmUoKS5zZXRMYXlvdXQobmV3IEJvcmRlckxheW91dCgpKTsNCiANCiAgIEdMQ2FwYWJpbGl0aWVz
IGdsQ2FwcyA9IG5ldyBHTENhcGFiaWxpdGllcygpOw0KICAgZ2xDYXBzLnNldFJlZEJpdHMoOCk7
DQogICBnbENhcHMuc2V0Qmx1ZUJpdHMoOCk7DQogICBnbENhcHMuc2V0R3JlZW5CaXRzKDgpOw0K
ICAgZ2xDYXBzLnNldEFscGhhQml0cyg4KTsNCiANCiAgIEdMSlBhbmVsIHBhbmVsID0gR0xEcmF3
YWJsZUZhY3RvcnkuZ2V0RmFjdG9yeSgpLmNyZWF0ZUdMSlBhbmVsKGdsQ2Fwcyk7DQogICBmcmFt
ZS5nZXRDb250ZW50UGFuZSgpLmFkZChwYW5lbCwgQm9yZGVyTGF5b3V0LkNFTlRFUik7DQogICBK
UGFuZWwgcCA9IG5ldyBKUGFuZWwobmV3IEZsb3dMYXlvdXQoKSk7DQogICBKQnV0dG9uIGIgPSBu
ZXcgSkJ1dHRvbigiVGVzdCBNZSIpOw0KICAgcC5hZGQoYik7DQogICBmcmFtZS5nZXRDb250ZW50
UGFuZSgpLmFkZChwLCBCb3JkZXJMYXlvdXQuV0VTVCk7DQogICBwYW5lbC5hZGRHTEV2ZW50TGlz
dGVuZXIobmV3IEdMQ29udGV4dFJlbmRlcmVyKCkpOw0KIA0KICAgZmluYWwgQW5pbWF0b3IgYW5p
bWF0b3IgPSBuZXcgQW5pbWF0b3IocGFuZWwpOw0KICAgZnJhbWUuYWRkV2luZG93TGlzdGVuZXIo
bmV3IFdpbmRvd0FkYXB0ZXIoKSB7DQogIHB1YmxpYyB2b2lkIHdpbmRvd0Nsb3NpbmcoV2luZG93
RXZlbnQgZSkgew0KICAgIGFuaW1hdG9yLnN0b3AoKTsNCiAgICBTeXN0ZW0uZXhpdCgwKTsNCiAg
fQ0KICAgfSk7DQogICBmcmFtZS5zZXRWaXNpYmxlKHRydWUpOw0KICAgYW5pbWF0b3Iuc3RhcnQo
KTsgICAgDQogICAgfQ0KIA0KICAgIHB1YmxpYyBzdGF0aWMgdm9pZCBtYWluKFN0cmluZ1tdIGFy
Z3MpIHsNCiAgIG5ldyBNYWluKCk7DQogICAgfQ0KfSANCg0KY2xhc3MgR0xDb250ZXh0UmVuZGVy
ZXIgaW1wbGVtZW50cyBHTEV2ZW50TGlzdGVuZXIgew0KIA0KICAgIEdMIGdsOw0KICAgIEdMRHJh
d2FibGUgZ2xEcmF3YWJsZTsNCiAgICBmbG9hdCB4Um90Ow0KIA0KICAgIHB1YmxpYyB2b2lkIGlu
aXQoR0xEcmF3YWJsZSBnbERyYXdhYmxlKSB7DQogICB0aGlzLmdsID0gZ2xEcmF3YWJsZS5nZXRH
TCgpOw0KICAgdGhpcy5nbERyYXdhYmxlID0gZ2xEcmF3YWJsZTsNCiAgIGdsLmdsU2hhZGVNb2Rl
bChHTC5HTF9TTU9PVEgpOyAgICAvLyBFbmFibGUgU21vb3RoIFNoYWRpbmcNCiAgIGdsLmdsQ2xl
YXJDb2xvcigwLjBmLCAwLjBmLCAwLjBmLCAwLjVmKTsgICAgLy8gQmxhY2sgQmFja2dyb3VuZA0K
ICAgZ2wuZ2xDbGVhckRlcHRoKDEuMGYpOyAgICAgICAvLyBEZXB0aCBCdWZmZXIgU2V0dXANCiAg
IGdsLmdsRW5hYmxlKEdMLkdMX0RFUFRIX1RFU1QpOyAgICAgICAvLyBFbmFibGVzIERlcHRoIFRl
c3RpbmcNCiAgIGdsLmdsRGVwdGhGdW5jKEdMLkdMX0xFUVVBTCk7ICAgICAgICAvLyBUaGUgVHlw
ZSBPZiBEZXB0aCBUZXN0aW5nIFRvIERvDQogICBnbC5nbEhpbnQoR0wuR0xfUEVSU1BFQ1RJVkVf
Q09SUkVDVElPTl9ISU5ULCBHTC5HTF9OSUNFU1QpOyAvLyBSZWFsbHkgTmljZSBQZXJzcGVjdGl2
ZSBDYWxjdWxhdGlvbnMNCiAgIGdsLmdsRW5hYmxlKEdMLkdMX1RFWFRVUkVfMkQpOw0KIA0KICAg
IH0NCiANCiAgICBwdWJsaWMgdm9pZCBkaXNwbGF5KEdMRHJhd2FibGUgZ2xEcmF3YWJsZSkgew0K
ICAgZ2wuZ2xDbGVhcihHTC5HTF9DT0xPUl9CVUZGRVJfQklUIHwgR0wuR0xfREVQVEhfQlVGRkVS
X0JJVCApOw0KICAgZ2wuZ2xMb2FkSWRlbnRpdHkoKTsNCiANCiAgIGdsLmdsVHJhbnNsYXRlZigw
LjBmLCAwLjBmLCAtNi4wZik7DQogICBnbC5nbENvbG9yM2YoMS4wZiwgMC4wZiwgMC4wZiApOw0K
ICAgZ2wuZ2xSb3RhdGVmKHhSb3QsIDEuMGYsIDAuMGYsIDAuMGYpOw0KIA0KICAgZ2wuZ2xCZWdp
biggR0wuR0xfVFJJQU5HTEVTICk7DQogIGdsLmdsVmVydGV4M2YoIDAuMGYsIDAuMGYsIDAuMGYg
KTsNCiAgZ2wuZ2xWZXJ0ZXgzZiggMS4wZiwgMC4wZiwgMC4wZiApOw0KICBnbC5nbFZlcnRleDNm
KCAxLjBmLCAxLjBmLCAwLjBmICk7DQogICBnbC5nbEVuZCgpOw0KICAgeFJvdCArPSAuMmY7DQog
ICAgfQ0KIA0KICAgIHB1YmxpYyB2b2lkIHJlc2hhcGUoR0xEcmF3YWJsZSBnbERyYXdhYmxlLCBp
bnQgeCwgaW50IHksIGludCB3aWR0aCwgaW50DQpoZWlnaHQpIHsNCiAgIGZpbmFsIEdMVSBnbHUg
PSBnbERyYXdhYmxlLmdldEdMVSgpOw0KIA0KICAgIGlmIChoZWlnaHQgPD0gMCkgLy8gYXZvaWQg
YSBkaXZpZGUgYnkgemVybyBlcnJvciENCiAgICAgIGhlaWdodCA9IDE7DQogICAgZmluYWwgZmxv
YXQgaCA9IChmbG9hdCl3aWR0aCAvIChmbG9hdCloZWlnaHQ7DQogICAgZ2wuZ2xWaWV3cG9ydCgw
LCAwLCB3aWR0aCwgaGVpZ2h0KTsNCiAgICBnbC5nbE1hdHJpeE1vZGUoR0wuR0xfUFJPSkVDVElP
Tik7DQogICAgZ2wuZ2xMb2FkSWRlbnRpdHkoKTsNCiAgICBnbHUuZ2x1UGVyc3BlY3RpdmUoNDUu
MGYsIGgsIDEuMCwgMjAuMCk7DQogICAgZ2wuZ2xNYXRyaXhNb2RlKEdMLkdMX01PREVMVklFVyk7
DQogICAgZ2wuZ2xMb2FkSWRlbnRpdHkoKTsNCiAgICB9DQogDQogICAgcHVibGljIHZvaWQgZGlz
cGxheUNoYW5nZWQoR0xEcmF3YWJsZSBnbERyYXdhYmxlLCBib29sZWFuIGIsIGJvb2xlYW4gYjEp
IHsNCiAgIC8vVG8gY2hhbmdlIGJvZHkgb2YgaW1wbGVtZW50ZWQgbWV0aG9kcyB1c2UgRmlsZSB8
IFNldHRpbmdzIHwgRmlsZSBUZW1wbGF0ZXMuDQogICAgfQ0KfQ0KDQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>