summaryrefslogtreecommitdiffstats
path: root/bundles/org.eclipse.swt/Eclipse SWT Custom Widgets
diff options
context:
space:
mode:
authorMarkus Keller <markus_keller@ch.ibm.com>2012-10-22 16:31:48 +0200
committerMarkus Keller <markus_keller@ch.ibm.com>2012-10-22 16:31:48 +0200
commit6fcdd860a108a6981449cc3ad09691c3ba360b8f (patch)
tree6e70356bb32c0d4b367797e3b65e8940e7c5a217 /bundles/org.eclipse.swt/Eclipse SWT Custom Widgets
parent9178084226d22a2dac6ad6639328d7eae3f4d9f6 (diff)
downloadeclipse.platform.swt-6fcdd860a108a6981449cc3ad09691c3ba360b8f.tar.gz
eclipse.platform.swt-6fcdd860a108a6981449cc3ad09691c3ba360b8f.tar.xz
eclipse.platform.swt-6fcdd860a108a6981449cc3ad09691c3ba360b8f.zip
Bug 388105: StyledText#setSelection(..) sets caret at wrong end in block selection mode
Diffstat (limited to 'bundles/org.eclipse.swt/Eclipse SWT Custom Widgets')
-rw-r--r--bundles/org.eclipse.swt/Eclipse SWT Custom Widgets/common/org/eclipse/swt/custom/StyledText.java6
1 files changed, 5 insertions, 1 deletions
diff --git a/bundles/org.eclipse.swt/Eclipse SWT Custom Widgets/common/org/eclipse/swt/custom/StyledText.java b/bundles/org.eclipse.swt/Eclipse SWT Custom Widgets/common/org/eclipse/swt/custom/StyledText.java
index d381f8e089..41119d75d6 100644
--- a/bundles/org.eclipse.swt/Eclipse SWT Custom Widgets/common/org/eclipse/swt/custom/StyledText.java
+++ b/bundles/org.eclipse.swt/Eclipse SWT Custom Widgets/common/org/eclipse/swt/custom/StyledText.java
@@ -9521,7 +9521,11 @@ void setSelection(int start, int length, boolean sendEvent, boolean doBlock) {
(length > 0 && selectionAnchor != selection.x) ||
(length < 0 && selectionAnchor != selection.y)) {
if (blockSelection && doBlock) {
- setBlockSelectionOffset(start, end, sendEvent);
+ if (length < 0) {
+ setBlockSelectionOffset(end, start, sendEvent);
+ } else {
+ setBlockSelectionOffset(start, end, sendEvent);
+ }
} else {
clearSelection(sendEvent);
if (length < 0) {