add proper handling of double-click and right-click

Signed-off-by: Florian Thienel <florian@thienel.org>
diff --git a/org.eclipse.vex.core/src/org/eclipse/vex/core/internal/widget/swt/BoxWidget.java b/org.eclipse.vex.core/src/org/eclipse/vex/core/internal/widget/swt/BoxWidget.java
index c2d73cf..a7514ef 100644
--- a/org.eclipse.vex.core/src/org/eclipse/vex/core/internal/widget/swt/BoxWidget.java
+++ b/org.eclipse.vex.core/src/org/eclipse/vex/core/internal/widget/swt/BoxWidget.java
@@ -169,6 +169,11 @@
 	private void connectMouse() {
 		addMouseListener(new MouseAdapter() {
 			@Override
+			public void mouseDoubleClick(final MouseEvent e) {
+				BoxWidget.this.mouseDoubleClick(e);
+			}
+
+			@Override
 			public void mouseDown(final MouseEvent e) {
 				BoxWidget.this.mouseDown(e);
 			}
@@ -239,9 +244,17 @@
 		}
 	}
 
+	private void mouseDoubleClick(final MouseEvent event) {
+		if (event.button == 1) {
+			selectWord();
+		}
+	}
+
 	private void mouseDown(final MouseEvent event) {
-		final int absoluteY = event.y + getVerticalBar().getSelection();
-		moveOrSelect(event.stateMask, toAbsoluteCoordinates(event.x, absoluteY));
+		if (event.button == 1) {
+			final int absoluteY = event.y + getVerticalBar().getSelection();
+			moveOrSelect(event.stateMask, toAbsoluteCoordinates(event.x, absoluteY));
+		}
 	}
 
 	private void mouseMove(final MouseEvent event) {