summaryrefslogtreecommitdiffstats
path: root/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Display.java
diff options
context:
space:
mode:
authorAlexander Kurtakov <akurtako@redhat.com>2012-10-09 11:36:20 +0300
committerAlexander Kurtakov <akurtako@redhat.com>2012-10-09 11:36:20 +0300
commit8cb9404e2de2a7532f9571bd8294bf5cd1d59247 (patch)
treef127ab4681090c15ac588254af50f09d9a8d9da8 /bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Display.java
parent772eba60342f660557d66c688c0f5931749c4e89 (diff)
downloadeclipse.platform.swt-8cb9404e2de2a7532f9571bd8294bf5cd1d59247.tar.gz
eclipse.platform.swt-8cb9404e2de2a7532f9571bd8294bf5cd1d59247.tar.xz
eclipse.platform.swt-8cb9404e2de2a7532f9571bd8294bf5cd1d59247.zip
Fix for bug#391398.
Use gdk_visual_ functions instead of accessing struct members.
Diffstat (limited to 'bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Display.java')
-rw-r--r--bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Display.java10
1 files changed, 7 insertions, 3 deletions
diff --git a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Display.java b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Display.java
index 35470a7f41..dbd205081e 100644
--- a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Display.java
+++ b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Display.java
@@ -1770,9 +1770,13 @@ public boolean getHighContrast () {
public int getDepth () {
checkDevice ();
- GdkVisual visual = new GdkVisual ();
- OS.memmove (visual, OS.gdk_visual_get_system());
- return visual.depth;
+ if (OS.GTK_VERSION >= OS.VERSION(2, 22, 0)) {
+ return OS.gdk_visual_get_depth(OS.gdk_visual_get_system());
+ } else {
+ GdkVisual visual = new GdkVisual ();
+ OS.memmove (visual, OS.gdk_visual_get_system());
+ return visual.depth;
+ }
}
/**