Index: jpda/JPDADebuggerImpl.java =================================================================== RCS file: /cvs/debuggerjpda/src/org/netbeans/modules/debugger/jpda/JPDADebuggerImpl.java,v retrieving revision 1.106 diff -u -r1.106 JPDADebuggerImpl.java --- jpda/JPDADebuggerImpl.java 18 Aug 2006 16:44:38 -0000 1.106 +++ jpda/JPDADebuggerImpl.java 29 Aug 2006 16:15:19 -0000 @@ -1129,7 +1129,8 @@ ); } - public JPDAStep createJPDAStep(int size, int depth) { - return new JPDAStepImpl(this, size, depth); + public JPDAStep createJPDAStep(int size, int depth) { + Session session = (Session) lookupProvider.lookupFirst (null, Session.class); + return new JPDAStepImpl(this, session, size, depth); } } Index: jpda/JPDAStepImpl.java =================================================================== RCS file: /cvs/debuggerjpda/src/org/netbeans/modules/debugger/jpda/JPDAStepImpl.java,v retrieving revision 1.3 diff -u -r1.3 JPDAStepImpl.java --- jpda/JPDAStepImpl.java 30 Jun 2006 19:04:52 -0000 1.3 +++ jpda/JPDAStepImpl.java 29 Aug 2006 16:15:19 -0000 @@ -20,6 +20,8 @@ package org.netbeans.modules.debugger.jpda; import com.sun.jdi.VirtualMachine; +import org.netbeans.api.debugger.DebuggerManager; +import org.netbeans.api.debugger.Session; import org.netbeans.api.debugger.jpda.JPDAStep; import org.netbeans.api.debugger.jpda.JPDAThread; import org.netbeans.api.debugger.jpda.JPDADebugger; @@ -37,8 +39,11 @@ public class JPDAStepImpl extends JPDAStep implements Executor { - public JPDAStepImpl(JPDADebugger debugger, int size, int depth) { + private Session session; + + public JPDAStepImpl(JPDADebugger debugger, Session session, int size, int depth) { super(debugger, size, depth); + this.session = session; } public void addStep(JPDAThread tr) { @@ -73,8 +78,10 @@ EventRequestManager erm = vm.eventRequestManager(); erm.deleteEventRequest(event.request()); firePropertyChange(PROP_STATE_EXEC, null, null); - if (! getHidden()) + if (! getHidden()) { + DebuggerManager.getDebuggerManager().setCurrentSession(session); debuggerImpl.setStoppedState(trImpl.getThreadReference()); + } return getHidden(); } } Index: jpda/actions/StepActionProvider.java =================================================================== RCS file: /cvs/debuggerjpda/src/org/netbeans/modules/debugger/jpda/actions/StepActionProvider.java,v retrieving revision 1.31 diff -u -r1.31 StepActionProvider.java --- jpda/actions/StepActionProvider.java 8 Aug 2006 14:56:59 -0000 1.31 +++ jpda/actions/StepActionProvider.java 29 Aug 2006 16:15:19 -0000 @@ -33,6 +33,8 @@ import java.util.Set; import java.util.logging.Logger; import org.netbeans.api.debugger.ActionsManager; +import org.netbeans.api.debugger.DebuggerManager; +import org.netbeans.api.debugger.Session; import org.netbeans.spi.debugger.ContextProvider; @@ -228,6 +230,10 @@ (lookupProvider, t, getSmartSteppingFilterImpl ()) ) { // YES! + Session session = (Session) lookupProvider.lookupFirst(null, Session.class); + if (session != null) { + DebuggerManager.getDebuggerManager().setCurrentSession(session); + } getDebuggerImpl ().setStoppedState (tr); //S ystem.out.println("/nStepAction.exec end - do not resume"); return false; // do not resume Index: jpda/actions/StepIntoActionProvider.java =================================================================== RCS file: /cvs/debuggerjpda/src/org/netbeans/modules/debugger/jpda/actions/StepIntoActionProvider.java,v retrieving revision 1.28 diff -u -r1.28 StepIntoActionProvider.java --- jpda/actions/StepIntoActionProvider.java 8 Aug 2006 14:57:00 -0000 1.28 +++ jpda/actions/StepIntoActionProvider.java 29 Aug 2006 16:15:19 -0000 @@ -32,6 +32,8 @@ import java.util.logging.Logger; import org.netbeans.api.debugger.ActionsManager; +import org.netbeans.api.debugger.DebuggerManager; +import org.netbeans.api.debugger.Session; import org.netbeans.spi.debugger.ContextProvider; @@ -224,6 +226,10 @@ } if (stop) { removeStepRequests (le.thread ()); + Session session = (Session) contextProvider.lookupFirst(null, Session.class); + if (session != null) { + DebuggerManager.getDebuggerManager().setCurrentSession(session); + } getDebuggerImpl ().setStoppedState (tr); } else { smartLogger.finer(" => do next step.");