diff options
author | Felipe Heidrich <fheidric> | 2007-03-16 20:25:21 +0000 |
---|---|---|
committer | Felipe Heidrich <fheidric> | 2007-03-16 20:25:21 +0000 |
commit | 5dd555b333bfe4be20987ae764a2256175dee6d5 (patch) | |
tree | 9898cdcb5f3cd082a5993d598a9727bbc6d80ae0 | |
parent | 3bc7acfa36ee31a19eff8e990b6fe8fea469bc66 (diff) | |
download | eclipse.platform.swt-5dd555b333bfe4be20987ae764a2256175dee6d5.tar.gz eclipse.platform.swt-5dd555b333bfe4be20987ae764a2256175dee6d5.tar.xz eclipse.platform.swt-5dd555b333bfe4be20987ae764a2256175dee6d5.zip |
Bug 138579
-rw-r--r-- | bundles/org.eclipse.swt/Eclipse SWT/win32/org/eclipse/swt/graphics/TextLayout.java | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/bundles/org.eclipse.swt/Eclipse SWT/win32/org/eclipse/swt/graphics/TextLayout.java b/bundles/org.eclipse.swt/Eclipse SWT/win32/org/eclipse/swt/graphics/TextLayout.java index 363bb7db4d..72ae560e11 100644 --- a/bundles/org.eclipse.swt/Eclipse SWT/win32/org/eclipse/swt/graphics/TextLayout.java +++ b/bundles/org.eclipse.swt/Eclipse SWT/win32/org/eclipse/swt/graphics/TextLayout.java @@ -1401,6 +1401,7 @@ int _getOffset(int offset, int movement, boolean forward) { } break; } + case SWT.MOVEMENT_WORD_START: case SWT.MOVEMENT_WORD: { if (properties.fNeedsWordBreaking) { if (!logAttr.fInvalid && logAttr.fWordStop) return untranslateOffset(offset); @@ -1417,6 +1418,16 @@ int _getOffset(int offset, int movement, boolean forward) { } break; } + case SWT.MOVEMENT_WORD_END: { + if (offset > 0) { + boolean isLetterOrDigit = Compatibility.isLetterOrDigit(segmentsText.charAt(offset)); + boolean previousLetterOrDigit = Compatibility.isLetterOrDigit(segmentsText.charAt(offset - 1)); + if (!isLetterOrDigit && previousLetterOrDigit) { + return untranslateOffset(offset); + } + } + break; + } } offset = validadeOffset(offset, step); } |