diff options
author | Patrick Tasse | 2018-12-07 18:49:42 +0000 |
---|---|---|
committer | Bernd Hufmann | 2019-01-03 20:50:27 +0000 |
commit | 65498f7302884f18936e33dd09ac2788b7c40562 (patch) | |
tree | 2f2128adef9951bb81651287d4d16ed388b9b246 | |
parent | 0f12aeec8d6695fb2d379bba1eb67d8bd2d0a2d9 (diff) | |
download | org.eclipse.tracecompass-65498f7302884f18936e33dd09ac2788b7c40562.tar.gz org.eclipse.tracecompass-65498f7302884f18936e33dd09ac2788b7c40562.tar.xz org.eclipse.tracecompass-65498f7302884f18936e33dd09ac2788b7c40562.zip |
tmf: Bug 542529: FilteredCheckboxTree refresh job loses selection
Save and restore the tree selection during the refresh job execution.
Change-Id: Ifb909c33469c4dd0dee0d66ae9dc392193d1d96c
Signed-off-by: Patrick Tasse <patrick.tasse@gmail.com>
Reviewed-on: https://git.eclipse.org/r/133699
Tested-by: CI Bot
Reviewed-by: Jean-Christian Kouame <jean-christian.kouame@ericsson.com>
Tested-by: Jean-Christian Kouame <jean-christian.kouame@ericsson.com>
(cherry picked from commit 0f9dcd7822f16215c38dc5c72ab0b75c29b5e4ee)
Reviewed-on: https://git.eclipse.org/r/133950
Reviewed-by: Bernd Hufmann <bernd.hufmann@ericsson.com>
Tested-by: Bernd Hufmann <bernd.hufmann@ericsson.com>
-rw-r--r-- | tmf/org.eclipse.tracecompass.tmf.ui/src/org/eclipse/tracecompass/tmf/ui/widgets/timegraph/dialogs/FilteredCheckboxTree.java | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/tmf/org.eclipse.tracecompass.tmf.ui/src/org/eclipse/tracecompass/tmf/ui/widgets/timegraph/dialogs/FilteredCheckboxTree.java b/tmf/org.eclipse.tracecompass.tmf.ui/src/org/eclipse/tracecompass/tmf/ui/widgets/timegraph/dialogs/FilteredCheckboxTree.java index ff83cb0dad..7891630d0c 100644 --- a/tmf/org.eclipse.tracecompass.tmf.ui/src/org/eclipse/tracecompass/tmf/ui/widgets/timegraph/dialogs/FilteredCheckboxTree.java +++ b/tmf/org.eclipse.tracecompass.tmf.ui/src/org/eclipse/tracecompass/tmf/ui/widgets/timegraph/dialogs/FilteredCheckboxTree.java @@ -22,6 +22,7 @@ import org.eclipse.core.runtime.Status; import org.eclipse.jface.viewers.CheckboxTreeViewer; import org.eclipse.jface.viewers.ICheckStateListener; import org.eclipse.jface.viewers.ICheckable; +import org.eclipse.jface.viewers.ISelection; import org.eclipse.jface.viewers.ITreeContentProvider; import org.eclipse.jface.viewers.TreeViewer; import org.eclipse.swt.widgets.Composite; @@ -106,10 +107,14 @@ public class FilteredCheckboxTree extends FilteredTree implements ICheckable { // Expand all to be able to store all checked elements fCheckboxTreeViewer.expandAll(); fCheckboxTreeViewer.setCheckedElements(getCheckedElements()); + // Collapse all can change selection + ISelection selection = fCheckboxTreeViewer.getSelection(); fCheckboxTreeViewer.collapseAll(); fCheckboxTreeViewer.getTree().setRedraw(true); // Expand tree according to the saved expanded elements fCheckboxTreeViewer.setExpandedElements(expandedElements.toArray()); + // Restore the selection + fCheckboxTreeViewer.setSelection(selection); return Status.OK_STATUS; } }; |