summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFelipe Heidrich <fheidric>2010-12-06 20:15:59 +0000
committerFelipe Heidrich <fheidric>2010-12-06 20:15:59 +0000
commit3654966d37611f4d9d2c9f01b9ca8fa3554b426a (patch)
treeb55afdb656b3749b966943f583c63db13166baac
parentfdd79a05086bbb91a506544d3d527ad43aa7e762 (diff)
downloadeclipse.platform.swt-3654966d37611f4d9d2c9f01b9ca8fa3554b426a.tar.gz
eclipse.platform.swt-3654966d37611f4d9d2c9f01b9ca8fa3554b426a.tar.xz
eclipse.platform.swt-3654966d37611f4d9d2c9f01b9ca8fa3554b426a.zip
freeRuns() has to be called from setOrientation() because it changes the segmentsText when bidi segments are used.
-rw-r--r--bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/graphics/TextLayout.java1
1 files changed, 1 insertions, 0 deletions
diff --git a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/graphics/TextLayout.java b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/graphics/TextLayout.java
index 1752a4cb10..6b05d5515d 100644
--- a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/graphics/TextLayout.java
+++ b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/graphics/TextLayout.java
@@ -1911,6 +1911,7 @@ public void setOrientation(int orientation) {
if ((orientation & SWT.LEFT_TO_RIGHT) != 0) orientation = SWT.LEFT_TO_RIGHT;
int baseDir = orientation == SWT.RIGHT_TO_LEFT ? OS.PANGO_DIRECTION_RTL : OS.PANGO_DIRECTION_LTR;
if (OS.pango_context_get_base_dir(context) == baseDir) return;
+ freeRuns();
OS.pango_context_set_base_dir(context, baseDir);
OS.pango_layout_context_changed(layout);
int align = OS.pango_layout_get_alignment(layout);