diff options
author | Pawel Piech | 2013-01-16 18:44:13 +0000 |
---|---|---|
committer | Pawel Piech | 2013-01-16 18:44:13 +0000 |
commit | c7c121922013c5d942332b97eea7365be0956ec7 (patch) | |
tree | d707e173f7e0fca9b342a4ce83002aeb90e1cf0b /org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/viewers/model | |
parent | fded632c531a923715e02bb661c3033a7b221dbb (diff) | |
download | eclipse.platform.debug-c7c121922013c5d942332b97eea7365be0956ec7.tar.gz eclipse.platform.debug-c7c121922013c5d942332b97eea7365be0956ec7.tar.xz eclipse.platform.debug-c7c121922013c5d942332b97eea7365be0956ec7.zip |
Bug 393812 - find dialog gives error when select non-top level items from the dialog for variables/expressions/registers views.
Additional fix for the find action in Debug view.
Diffstat (limited to 'org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/viewers/model')
-rw-r--r-- | org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/viewers/model/VirtualFindAction.java | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/viewers/model/VirtualFindAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/viewers/model/VirtualFindAction.java index 4306ee64c..459be0905 100644 --- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/viewers/model/VirtualFindAction.java +++ b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/viewers/model/VirtualFindAction.java @@ -266,6 +266,15 @@ public class VirtualFindAction extends Action implements IUpdate { virtualViewer.getTree().setSelection(new VirtualItem[] { findItem } ); ModelDelta stateDelta = new ModelDelta(virtualViewer.getInput(), IModelDelta.NO_CHANGE); virtualViewer.saveElementState(TreePath.EMPTY, stateDelta, IModelDelta.SELECT); + // Set the force flag to all select delta in order to override model's selection policy. + stateDelta.accept(new IModelDeltaVisitor() { + public boolean visit(IModelDelta delta, int depth) { + if ((delta.getFlags() & IModelDelta.SELECT) != 0) { + ((ModelDelta)delta).setFlags(delta.getFlags() | IModelDelta.FORCE); + } + return true; + } + }); fClientViewer.updateViewer(stateDelta); ISelection selection = fClientViewer.getSelection(); |