Community
Participate
Working Groups
New Gerrit change created: https://git.eclipse.org/r/149605
Gerrit change https://git.eclipse.org/r/149605 was merged to [master]. Commit: http://git.eclipse.org/c/platform/eclipse.platform.ui.git/commit/?id=de022badeada826e35e21a8908f9ba659bee6da2
This change has broken the use of DrillDownAdapter in our app, Archi. Calling DrillDownAdapter#goHome() on a TreeViewer does not return to the root node but only the previous node on the stack.
It seems that each DrillFrame is being pushed onto the Deque stack in the wrong order. If we have a tree: Root |---Node 1 |---Node 2 When DrillDownAdapter#goInto() is called on Node 1 and then Node 2 the Deque stack contains DrillFrames in this order: [0] Node 1 [1] Root Calling DrillDownAdapter#goHome() calls DrillStack#goHome() which calls Deque#getFirst() which returns element [0] and this is wrong.
So I'm wondering if in DrillStack instead of this: public DrillFrame goHome() { DrillFrame aFrame = fStack.getFirst(); reset(); return aFrame; } It should be this? public DrillFrame goHome() { DrillFrame aFrame = fStack.getLast(); reset(); return aFrame; }
Indeed it is the case as per my previous comment. I changed DrillFrame aFrame = fStack.getFirst(); to: DrillFrame aFrame = fStack.getLast(); And goHome() works as expected.
(In reply to Phil Beauvoir from comment #6) > Indeed it is the case as per my previous comment. > > I changed > > DrillFrame aFrame = fStack.getFirst(); > > to: > > DrillFrame aFrame = fStack.getLast(); > > And goHome() works as expected. Phil, can you open a new bug and push a Gerrit?
(In reply to Lars Vogel from comment #7) > Phil, can you open a new bug and push a Gerrit? Opened Bug #564941