commit | 894a282b7c35b58e7f32e3cbcc7333e29a8292b5 | [log] [tgz] |
---|---|---|
author | Dawid Pakuła <zulus@w3des.net> | Thu Jun 07 22:15:52 2018 +0200 |
committer | Dawid Pakuła <zulus@w3des.net> | Thu Jun 07 22:29:47 2018 +0200 |
tree | 5dc2e8339f127acce2d9e7fa14af927c67ba0ba0 | |
parent | b8b460cb2048bc581bc4f07a43e42aa0729c1952 [diff] |
No bug - ScriptTemplateCompletionProcessor need access to UI thread Change-Id: I437e10cc458626d33b7b20b13bd10fd38e368c2a Signed-off-by: Dawid Pakuła <zulus@w3des.net>
diff --git a/core/plugins/org.eclipse.dltk.ui/src/org/eclipse/dltk/ui/templates/ScriptTemplateCompletionProcessor.java b/core/plugins/org.eclipse.dltk.ui/src/org/eclipse/dltk/ui/templates/ScriptTemplateCompletionProcessor.java index 216e994..11e2c35 100644 --- a/core/plugins/org.eclipse.dltk.ui/src/org/eclipse/dltk/ui/templates/ScriptTemplateCompletionProcessor.java +++ b/core/plugins/org.eclipse.dltk.ui/src/org/eclipse/dltk/ui/templates/ScriptTemplateCompletionProcessor.java
@@ -166,7 +166,16 @@ private boolean areMultipleLinesSelected(ITextViewer viewer) { if (viewer == null) return false; - Point s = viewer.getSelectedRange(); + final Point[] range = new Point[1]; + Runnable getRange = () -> { + range[0] = viewer.getSelectedRange(); + }; + if (Display.getCurrent() != null) { + getRange.run(); + } else { + Display.getDefault().syncExec(getRange); + } + Point s = range[0]; if (s.y == 0) return false; try {