private boolean shouldApplyContext(DebuggerContextImpl context) {
   SuspendContextImpl suspendContext = context.getSuspendContext();
   SuspendContextImpl currentContext = (SuspendContextImpl) getSession().getSuspendContext();
   if (suspendContext != null && !suspendContext.equals(currentContext)) return true;
   JavaExecutionStack currentExecutionStack =
       currentContext != null ? currentContext.getActiveExecutionStack() : null;
   return currentExecutionStack == null
       || !Comparing.equal(context.getThreadProxy(), currentExecutionStack.getThreadProxy());
 }