Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 356442 - GraphicsConfiguration: setAntialias() causes drawOval() inconsistency
Summary: GraphicsConfiguration: setAntialias() causes drawOval() inconsistency
Status: CLOSED WONTFIX
Alias: None
Product: Platform
Classification: Eclipse Project
Component: SWT (show other bugs)
Version: 3.7   Edit
Hardware: PC Linux
: P3 normal (vote)
Target Milestone: ---   Edit
Assignee: Platform-SWT-Inbox CLA
QA Contact:
URL:
Whiteboard: stalebug
Keywords: triaged
Depends on:
Blocks:
 
Reported: 2011-09-01 05:13 EDT by Matthias Wienand CLA
Modified: 2021-01-20 05:23 EST (History)
8 users (show)

See Also:


Attachments
Code snippet to test the described behaviour (862 bytes, text/x-java)
2011-09-01 05:15 EDT, Matthias Wienand CLA
no flags Details
Code snippet to test the described behaviour (869 bytes, text/x-java)
2011-09-01 11:43 EDT, Matthias Wienand CLA
no flags Details
Resulting application window under Ubuntu (6.73 KB, image/png)
2011-09-01 11:47 EDT, Matthias Wienand CLA
no flags Details
Resulting application window under Mac (28.78 KB, image/png)
2011-09-01 11:48 EDT, Matthias Wienand CLA
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Matthias Wienand CLA 2011-09-01 05:13:03 EDT
Build Identifier: I20110613-1736

The appended code-snippet produces different results for Linux and Mac. If I run it on my Ubuntu system with the setAntialias() call commented out, the empty oval is not drawn, but the others are. If I enable the setAntialias() call, no ovals are drawn. The same code works on Mac as expected, that is, the empty oval is not drawn, but the other three are.

The value that is given to setAntialias(value) is not important.

Reproducible: Always

Steps to Reproduce:
1. Start the attached code snippet with the setAntialias() call in it.
2. Start the attached code snippet with the setAntialias() call commented out.
Comment 1 Matthias Wienand CLA 2011-09-01 05:15:43 EDT
Created attachment 202595 [details]
Code snippet to test the described behaviour
Comment 2 Matthias Wienand CLA 2011-09-01 11:43:25 EDT
Created attachment 202609 [details]
Code snippet to test the described behaviour
Comment 3 Matthias Wienand CLA 2011-09-01 11:47:41 EDT
Created attachment 202610 [details]
Resulting application window under Ubuntu
Comment 4 Matthias Wienand CLA 2011-09-01 11:48:18 EDT
Created attachment 202611 [details]
Resulting application window under Mac
Comment 5 Felipe Heidrich CLA 2011-09-06 10:10:09 EDT
Arun, can you please investigate this problem?
Comment 6 Arun Thondapu CLA 2011-09-12 09:25:22 EDT
I figured that the SWT code on Linux makes use of Cairo library calls to draw when setAntialias() is invoked whereas it directly uses GDK API in the other case.
I'm still trying to understand why the Cairo library calls seem to be failing.
Felipe, do you have any idea why this could happen?

Thanks!
Comment 7 B. Djoudi CLA 2015-07-13 07:04:06 EDT
Hi all

With: e.gc.fillOval(235, 5, 200, 1);
Ovals get drawn.

Something is persistently wrong with zero-pixel heighs for ovals (and maybe other shapes?).
Comment 8 Alexander Kurtakov CLA 2019-01-30 08:55:52 EST
Running on Fedora 29 ends up with:

(SWT:16924): Gtk-WARNING **: 15:55:06.102: drawing failure for widget 'SwtFixed': invalid matrix (not invertible)

(SWT:16924): Gtk-WARNING **: 15:55:06.102: drawing failure for widget 'GtkScrolledWindow': invalid matrix (not invertible)

(SWT:16924): Gtk-WARNING **: 15:55:06.102: drawing failure for widget 'GtkBox': invalid matrix (not invertible)

(SWT:16924): Gtk-WARNING **: 15:55:06.102: drawing failure for widget 'GtkWindow': invalid matrix (not invertible)

(SWT:16924): Gtk-WARNING **: 15:55:06.154: drawing failure for widget 'SwtFixed': invalid matrix (not invertible)

(SWT:16924): Gtk-WARNING **: 15:55:06.154: drawing failure for widget 'GtkScrolledWindow': invalid matrix (not invertible)

(SWT:16924): Gtk-WARNING **: 15:55:06.154: drawing failure for widget 'GtkBox': invalid matrix (not invertible)

(SWT:16924): Gtk-WARNING **: 15:55:06.154: drawing failure for widget 'GtkWindow': invalid matrix (not invertible)
Comment 9 Eric Williams CLA 2019-01-30 16:01:14 EST
Looks like some bug in our Cairo drawing, toggling anti-alias does nothing.
Comment 10 Eclipse Genie CLA 2021-01-20 05:23:45 EST
This bug hasn't had any activity in quite some time. Maybe the problem got resolved, was a duplicate of something else, or became less pressing for some reason - or maybe it's still relevant but just hasn't been looked at yet. As such, we're closing this bug.

If you have further information on the current state of the bug, please add it and reopen this bug. The information can be, for example, that the problem still occurs, that you still want the feature, that more information is needed, or that the bug is (for whatever reason) no longer relevant.

--
The automated Eclipse Genie.