There is no apparent reason why this would be the case. GLDrawable is an interface which is implemented by GLCanvas. I see every reason for the inverse to be true. Calling display causes
1 2 3
| public void display() { displayImpl(); } |
to be called which is basically passing the painting off to the native rendering implementation.
However calling repaint would be calling paint which would be calling
1 2 3 4 5 6 7
| public void paint(Graphics g) { if (!context.getNoAutoRedrawMode()) { display(); } } |
So unless yoru context isn't redrawing itself automatically which could lead to some weirdness when windows overlap and such, at worst they should be the same speed with a call to display being faster (and correct).
All of the code for this is is in GLCanvas.java if you want to check things out yourself.