tmf: Fix GTK bug when setting top item after changing tree font
authorPatrick Tasse <patrick.tasse@gmail.com>
Thu, 17 Dec 2015 17:25:06 +0000 (12:25 -0500)
committerPatrick Tasse <patrick.tasse@gmail.com>
Thu, 17 Dec 2015 23:25:17 +0000 (18:25 -0500)
Change-Id: If2658c1bdcd98f6a34ce31a76af0dc57c959de2c
Signed-off-by: Patrick Tasse <patrick.tasse@gmail.com>
Reviewed-on: https://git.eclipse.org/r/62953
Reviewed-by: Hudson CI
Reviewed-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
Tested-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
tmf/org.eclipse.tracecompass.tmf.ui/src/org/eclipse/tracecompass/tmf/ui/widgets/timegraph/TimeGraphCombo.java

index 745d156a42d20d27accf12ae859b488d588bb40e..47b9ef26eb32304dea094c6f26bffa3bef8ca0b1 100644 (file)
@@ -1248,6 +1248,16 @@ public class TimeGraphCombo extends Composite {
                 tree.removePaintListener(this);
                 doAlignTreeItems();
                 redraw();
+                /*
+                 * Bug in GTK. Calling setTopItem() can scroll to the wrong item
+                 * when the 'tree view' is dirty. Set it again once it is clean.
+                 */
+                if (SWT.getPlatform().equals("gtk")) { //$NON-NLS-1$
+                    TreeItem topItem = tree.getTopItem();
+                    tree.getDisplay().asyncExec(() -> {
+                        tree.setTopItem(topItem);
+                    });
+                }
             }
         });
         /* Make sure the paint event is triggered. */
This page took 0.025045 seconds and 5 git commands to generate.